• ベストアンサー

プログラムを実際に実行したと明確に分かる方法とは

C言語でつくったあるプログラムを、 ”実際に実行した”と明確に分かるようにレポートに書くにはどうしたらいいでしょうか? プログラムをそのままレポートに載せるのはいけないようです。 例として、画面のハードコピーまたは出力ファイルの内容を添付、とあるのですが、 これもまた何を指しているのか分からず、困っています。 因みに情報系の学科に属しているわけでもなく、プログラミングに関する知識もほぼありません。 初歩的すぎる質問を申し訳ないのですが、どなたかご教示いただけますでしょうか。 よろしくお願いします。

  • plnn8
  • お礼率100% (7/7)

質問者が選んだベストアンサー

  • ベストアンサー
noname#119957
noname#119957
回答No.2

画面をそのまま印刷したもの=ハードコピー 出力ファイルの内容=ファイルのダンプリスト です。 ** つまり画面に表示した入力と出力の見られる画面コピーとか 結果がファイルに出力されるなら、そのファイルのダンプリスト を紙で添付してくださいという意味です。 ** やりかかたは、検索して見つけてください。

plnn8
質問者

お礼

ご回答ありがとうございます。 少し確認をさせて下さい。 ハードコピーはスクリーンショットか何かで実行結果の画面をそのまま画像として印刷すればよいということでしょうか? また、課題はサイコロ投げ装置で、コマンドプロンプトで出力されるデータは1~6の数字の羅列となります。 出力されたその数字のデータをメモ帳に貼り付けることに成功しました。 ダンプリストの方は、このデータをそのまま印刷すればよい、ということなのでしょうか? よろしければこの理解で合っているのか、お教えいただければ幸いです。

その他の回答 (3)

  • Interest
  • ベストアンサー率31% (207/659)
回答No.4

皆さんと違った方面から考えてみます。 フローチャートはプログラム設計時の話ですので、テストケースとテスト結果を添付してはいかがでしょうか。 テストケース、というのは、プログラムが仕様通りに動作することを確認するためのテスト内容です。テスト結果はそのテストケースを実行した結果です。一般的には、ソフトウェア開発の最終段階でテストケースを作成し、テストを実行してテスト結果を記録として残します。 サイコロプログラムであれば、例えばこんなテストケースがあります。 テストケース1:サイコロを振って出る目は1~6のいずれかの整数であること。 テストケース2:サイコロを100回振った場合、1~6の目の出る確率がそれぞれほぼ1/6であること。 その他、課題が出されたときに仕様として挙がっているものはテスト対象となります。

plnn8
質問者

お礼

勉強不足なもので、テストケースというものは初めて知りました。 これならプログラムが仕様通りに動作する、と示すことが出来るのですね。 実際、テストケース2で挙げられているものは課題の一部になっています。 レポートもうまく書けそうです。 ご回答ありがとうございました。 こんな拙い質問を「(技術者向け)PC」カテゴリにしてしまうのには 躊躇いがあったのですが、皆さま丁寧にお答え下さり感謝しています。 この場を借りて皆さまにお礼申し上げます。 締め切りは課題が終わってからにさせていただきます。

noname#119957
noname#119957
回答No.3

ハードコピーはスクリーンショットか何かで実行結果の画面をそのまま画像として印刷すればよいということでしょうか? >>そうです。 http://msanuki.com/copy.html ダンプリストの方は、このデータをそのまま印刷すればよい、ということなのでしょうか? >>そうです。結果をtypeコマンドで表示すれば、見れます。 でバイナリ ダンプ (16進数(hex))するものもあります。 検索してみてください。

plnn8
質問者

お礼

またのご回答ありがとうございます。 お知恵を拝借して何とか課題の意味を理解することができ、ほっとしています。 しかし、バイナリダンプするものも検索ではヒットしましたが、私にはまだ分かりませんでした……。 まだまだ勉強不足ですね。これはまた勉強していくうちに理解を深めていきたいと思います。

  • yama1718
  • ベストアンサー率41% (670/1618)
回答No.1

実際にそのソフトウェアを設計したのなら 入出力のデータの仕様や定義、画面表示、 また処理の流れを表したフローチャートなどを作成したはずです。 それを提出しなさいと言う事でしょうね。 プログラムコードそのものだと、コードをコピペだけして 内容を理解しているかどうか判断できませんし、 余程丁寧なコメントが記入されていないと他人が読むのは難しい事もありますしね。

plnn8
質問者

お礼

>フローチャートなどを作成したはず 課題はサイコロ投げの装置で、プログラムを書くのは容易だったので フローチャートを書こうという発想がまずありませんでした……。 しかしコードそのものだけを提出すると、そのような問題点が発生するのですね。なるほど納得です。 条件が6つに分かれてしまい、ちゃんと書けるか不安ですが頑張ってみます。 ご回答ありがとうございました。

関連するQ&A

  • Foderaでプログラムを実行する方法

    C言語の勉強のためにFodera Core 6を入れて Windowsとデュアルブート環境にしたのですが gccでコンパイルしたファイルを実行できません。 どうしたら実行できるのか教えてください。 プログラミングにはあんまり詳しくなくて 初歩的な質問ですみません。

  • 実行可能プログラムにするには

    猫にも分かるプログラミングにプログラムがありますが、そのプログラムをそのままコピーしてロード(?)したら動かせるようになるのでしょうか? 今、C言語のソフトがアンインストールした状態で入っていませんが、ロードの仕方はどのようにすればいいのでしょうか? 石取りゲーム http://www.kumei.ne.jp/c_lang/intro/no_74.htm

  • あるプログラム実行中に別のプログラムを起動したい

    とあるC言語で出来たa.outというプログラム実行中に、b.outというプログラムを実行するプログラム「c.c」を作成したいのですが、どのようにプログラミングすればよいでしょうか? a.outは無限ループするような十分に実行時間の長いプログラムです。 ちなみに、c.cはシェルスクリプト「c.sh」でも構いません。

  • eclipseでプログラムが実行できません

    プログラミング初心者です。 おかしな部分があるかと思います...。すみません...。 学校で出たC言語の課題を家でもやるために、eclipseをダウンロードしました。 MinGWもダウンロードしました。 C言語でプログラムを記述し、「すべてビルド」を押してから実行ボタンを押しましたが、「バイナリが見つかりません」というエラーが出てきてしまい、まったく実行できません。 ほかのサイトを参照しても、「コンパイル用のソフトをダウンロードしてありますか?」などの回答が多かったのですが、MinGWをダウンロードしてあるので何とも言えません。 プログラムはHello World!を表示させる程度の簡単なものです。 どのように操作をしたらうまく実行できるか教えてください。 また、eclipseとマイクロソフトのVisual Studioではどちらが使いやすいでしょうか。 ご回答よろしくお願いいたします。

  • メモリ上にプログラムをロードして実行したい!!

    C言語とマイコンで遊んでる者です。 タイトルの通りSDカードやCF等の記録媒体からマイコンのRAM上にプログラムをロードして実行させたいのですが方法がよく解りません。 説明しにくいのですが、PCで言うところのBIOSみたいな物を予めマイコンに書き込んでおいて、そのプログラムが外部のストレージの中に有る実行ファイルのようになってるプログラムデータをメモリ上にコピーして、処理をそのプログラムのエントリーポイントに受け渡すようなOSモドキみたいな物を作りたいのです。 アセンブラならLDとかMOVとかでメモリにコピー出来るかもしれませんが、C言語ではどのようにしてコピーするのでしょう? 仮にメモリ上にコピー出来てもmain()関数が重複してしまい呼び出す方法が解りません。 こちらもアセンブラならばプログラムカウンタをロードした位置にしてやればいいのでしょうけれど。 C言語ではできないでしょうか? マイコンはAVRかSH2Aで考えています。 何方かご教授願います。

  • C言語プログラム

    学校のレポートでC言語のプログラムを作りました。ところが実行してみると計算値を表示させるところに -1.#IND00 と表示されます。本当は実数が表示されるはずなに・・・ 多分、私のプログラムが間違っているのだろうと思います。どこが間違っているのか目星をつけるためにこの出力結果の意味を教えてほしいのです。

  • Pythonのプログラムの実行の考え方について

    pythonの教科書のサンプルの実行についてお尋ねします。 テキストのサンプルには普通、インタープリターで書いてあるものと、プログラムをファイルに書き出してそれをコマンドで一気に処理するもの(こちらの方が他の言語の実行に近いか)の2通りがあります。 インタープリター向きに記述されたものをファイルに書き出してpythonコマンドで、インタープリターと同じように実行するにはどのような書き換えが必要になるのでしょうか。結果を出力するときにインタープリターでは配列名を入力するだけでその内容が出力されたりしますが、ファイルではそれができないのでコマンドを指定するとかになると思いますが、他になにかあるでしょうか。 ファイルに書き出したプログラムの実行ですが、Pythonコマンドを実行しても実行形式の出力がないのでコンパイルではないわけですが、これはバッチとかシェルスクリプトと同じような意味になるのでしょうか。1行1行実行していくということですが。とするとインタープリターと同じになるのかなと思うのですが。 実行形式が単体のファイルとして出力されて単体として実行できるというのは従来のプログラム(C,Fortranなど)ですが、Pythonはそれがないわけですね。Ruby, Perlに近いものなのでしょうか。速度が求められる科学技術計算ではライブラリを導入して高速化できるということですが、どの程度かなと思いますが。その中間的なものがJavaなのかなと思いますが(半分実行ファイルみたな)。 たぶんベタな質問と思いますが、よろしくお願いします。

  • 他の実行ファイルを実行するプログラム

    他の実行ファイルを実行するプログラムを作りたいです。 わかりにくいと思うので例を書いて説明します。 まずhello.cというプログラムがあったとします。 中身は -hello.c----------------- #include <stdio.h> main(){ printf("Hello!\n"); } -------------------------- これをコンパイルしてできた実行ファイルを他のプログラムから呼び出す?実行したいんです。 説明が下手ですいません(>_<) たとえば新しくexe.cというプログラムを作ります。 このexeを実行するとhello.exeが呼び出されて 結果的にhello.cの中身が実行されるような exe.cを作りたいです。 初歩的な質問ですいません。 どなたかアドバイスいただけないでしょうか(>_<)

  • プログラムが実行できないです↓ 初心者です↓

    学校の授業でプログラミングを勉強しているのですが、いまいち理解できません。 家でも勉強できるように、学校でCDを借りてVisual studio2003をインストールしました。 しかし、家でプログラムを作って実行させようとしたら、「ビルド」 とう項目がなく、プログラムを実行できませんでした。 学校のパソコンもバージョンは2003です。 学校では、 「プログラムを作成→ファイルを保存→既存項目の追加→ビルド→デバックなしで開始」 といった感じで実行しているのですが、ビルドできなくて困っています。 何か設定しなければならないのでしょうか? 素人な質問ですみません。 知識のある方、是非助けてください。

  • 時刻表検索のプログラム(Pascal)における動作確認方法

    大学のプログラミングの講義で「A駅からB駅に行く際、B駅に到着したい時刻を入力すると、A駅でどの種類の何時何分発の電車に乗ればよいかを検索するプログラムを作成し、それについてのレポートを提出せよ」という課題が出されました。ちなみに途中に乗り換えがあり、その駅をCとすると、A駅からC駅までは阪急、C駅からB駅までは地下鉄を利用します。 レポートには「プログラムが正しく動作することを示すために、どのような点をテストすればよいか」とその実行結果を記入する必要があるのですが、どれぐらい調べれば正しく動作することを示すことができるかわかりません。 先生からは、すべての時刻で調べることはできないので、適切な時刻を選んで入力して調べるように言われました。 私は'特急'や'普通'などの電車の種類全てでそれぞれ正しく出力できるかを調べるために、それぞれの電車を出力するような実行例を書けばいいのではと考えたのですが、それでは10回ほどの実行を確認するだけで終わってしまい、動作を確認するには少なすぎる気がします。 正しい動作が行われていることを納得させるためには、どのような実行例を書けばいいでしょうか?教えてください。よろしくお願いします。

専門家に質問してみよう