• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:プログラムが動きません。)

プログラムが動かない!プログラムの修正方法とは?

このQ&Aのポイント
  • 以前動いていたプログラムが動かなくなりました。プログラムは3個のtxtファイルで第1列の絶対値和、第2列の絶対値和を求め、1つのtxtファイルに出力するものです。
  • プログラムの修正方法は、ファイルの読み込みと計算部分で問題が生じている可能性があります。問題のある箇所を特定し、適切な修正を行う必要があります。
  • メイン関数には問題はないようですが、関数`read_data`と`ecg_rr`の実装が正しく動作していない可能性があります。これらの関数を確認し、修正することでプログラムが正常に動くようになるでしょう。

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

  • ベストアンサー
  • a987654
  • ベストアンサー率26% (112/415)
回答No.2

>以前動いていた これは、”プログラムには問題ありません。”と貴方が自らおっしゃっているのです。 それなのになぜ、プログラムを示すのでしょうか? その状態で、プログラムを解読してくださる、きとくな方もおられるかも、 知れませんが、少なくとも私はプログラムを見る気は起こりません。 問題解決のヒントだけお答えします。 1.動いていたプログラムには問題は無い 2.起動方法、引数の与え方に問題は無いのでしょうか? 3.ファイルのデータに問題は無いのでしょうか?(改行、復帰のコード) 4.データの中に全角空白が混じっている 5.万が一プログラム側の問題を疑うのであれば   プログラムの要所々々にprintfを入れてご自分で動作を   確認することです。

kenkenkenken25
質問者

お礼

ご指導、ありがとうございます!こういった掲示板を利用するのは初めてなので、どういう風に利用すれば良いかまだわかっていないところがありました。マナー違反になっているとご指摘され、反省しています。 ただ、どういう風に質問をすればよいのか、わからず課過去の書き込みなどを参考にしました。 課題の丸投げは勿論駄目だと思っていたので、自分で作ったものを掲載するのが良いと私自身は判断したのですが・・・。確かに以前は動いていたプログラムを掲載するのは意味がありませんでした。 これから質問をする際は気をつけていこうと思います。 ありがとうございました。

その他の回答 (1)

  • a987654
  • ベストアンサー率26% (112/415)
回答No.1

マナー違反に抵触しますよ。 何が問題で何をしたいのか、はっきり書きましょう。

kenkenkenken25
質問者

お礼

メイン関数は以下の通りです。 /*****************メイン関数*******************/ void main(argc,argv) int argc; char *argv[]; { int data_max; FILE *fp1,*fp2; if(argc!=3){ printf("ar data\n"); exit(0); } if((fp1=fopen(argv[1],"r")) == NULL){ printf("Can't open the file\n"); exit(2); } if((fp2=fopen(argv[2],"w"))==NULL){ printf("Can't create the output file of ECG_RR\n"); exit(3); } data_max=read_data(fp1); printf("%d\n",data_max); fclose(fp1); ecg_rr(fp2,data_max); fclose(fp2); }

kenkenkenken25
質問者

補足

言葉足らずで申し訳ありません。僕の作ったプログラムでは例えば k1.txt(中身は以下の通り) 4 2 -2 1 3 -4 1 -5 k2.txt(中身は以下の通り) 2 3 1 9 -4 -2 1 -6 といった2列のデータを読み込ませ、k1.txtにおける第一列の絶対値和ここでは10、第二列の絶対値和12、k2.txtにおける第一列の絶対値和8、第二列の絶対値和20をsum.txtに 10 12 8 20 といった形で出力していくというプログラムです。 以前は私のプログラムで結果のテキストファイルが出力されていたのですが、先日実行したところテキストファイルが出力されませんでした。 本当に申し訳ありませんでした。よろしくお願いします。

関連するQ&A