• 締切済み

関数

ファイルからデータを読み込んで処理するプログラムを作っているのですが、 分からないとこがあるのでアドバイスお願いします。 2:平均値、標準偏差を求める関数 3:特定の偏差値を求める関数 1:main関数 があるとします。偏差値を求めたいとき平均値と標準偏差を使用するので、 2の関数で求めた値を3の関数でも使えるようにするにはどうしたら良いのでしょうか?

  • cholu
  • お礼率66% (6/9)

みんなの回答

  • Oh-Orange
  • ベストアンサー率63% (854/1345)
回答No.3

★関数は戻り値として『計算結果』などを返せます。 ・関数が返した戻り値を変数に代入して保存しておきます。 ・この保存した変数を3つ目の関数に渡せばよいのです。 ・ただそれだけです。 プロトタイプ宣言例: double average(  double 引数1, … double 引数n ); ←平均値、標準偏差を求める関数 double deviation( double 引数1, … double 引数n ); ←特定の偏差値を求める関数 ※引数はご自分で考えて下さい。 サンプル例: void main( void ) {  double RetAve, RetDev;  /*  読み込みの処理など  */  RetAve = average( 引数1, …, 引数n );  RetDev = deviation( RetAve, 引数2, …, 引数n ); ←ここで保存した RetAve を渡す  printf( "平均値=%f\n", RetAve );  printf( "偏差値=%f\n", RetDev ); }

  • koko_u
  • ベストアンサー率12% (14/116)
回答No.2

各々の関数のプロトタイプ宣言はどうなっているのかな? 標準偏差値を求める関数が double deviation( double score, double average, double standard_dev ); とかなってないの?

  • herbest
  • ベストアンサー率42% (15/35)
回答No.1

2の関数の戻り値を3の関数の引数に入れたらいいと思いますが、 それ以前に関数についてもう少し調べた方が良いです。

関連するQ&A

  • 累積密度関数の平均値と標準偏差の求め方

    累積密度関数の平均値と標準偏差の求め方 ある累積密度関数の平均値と標準偏差でもとめた値(X、Y)が20個ほどあります。 この値から平均値と標準偏差を求めるにはどうしたら良いでしょうか。 単純な式なら連立方程式で解けるとは思いますが。。。 できればエクセル等でできたら嬉しいです。 よろしくお願いします。

  • 関数と手続き???????

    整数乱数を200個発生して配列に格納する関数と、与えられた整数配列の全要素の平均と標準偏差を求める手続きのプログラムを早急に教えて下さい。二つのモジュールを同じプログラムで使用するんだそうです。誰か助けて下さい

  • 関数の呼び出し

    エクセルの2列5行のファイルがあるとします、 このファイルの各列の平均を求める関数をheikinとします。 エクセルの2列のデータの平均を関数heikin(プロトタイプ宣言)のみでの求め方が解かりません。 また、求めた値をmain関数に返した後、別の関数(プロトタイプ宣言)でのheikinの呼び出しかたが解かりません。 各列ごとにプロトタイプ宣言を行えば求まるのですが、 どうかよろしくお願いします。

  • 関数電卓で幾何平均と幾何標準偏差

    作業環境測定士の講習で関数電卓を使用する問題が試験に出るのですが、 関数電卓をふだん使わないので打ち方がわかりません。 関数電卓 カシオ fx-JP900で、次のデータで幾何平均と幾何標準偏差を求めるには どう打てばよいでしょうか。 データ  23, 30, 34, 14, 11, 18 幾何平均  20.1 幾何標準偏差 1.55

  • 関数電卓での幾何平均・幾何標準偏差の求め方。

    こんにちは。関数電卓を用いた幾何平均・幾何標準偏差の求め方が全然わかりません。ご存知の方、アドバイスをください。使用電卓はCASIOのfx-912MSです。よろしくお願いします。ちなみに、標準偏差は求められます。

  • 関数の使い方が分りません

    あらかじめ人数がわかっている集団で、科目A、科目B、科目Cの点数を入力後、各々の平均を求めるプログラムを作成したいです。人数も最初に入力してもらいます。 実行例は以下の通りです 人数? 3 科目Aの成績 1人目の点数: 50 2人目の点数: 40 3人目の点数: 90 ・ ・ ・ 科目Aの平均:60.0 科目Bの平均: 科目Cの平均: この実行例から、 1、人数-ninzuを取り込む 2、main関数の前に平均を求めるためのaverage関数を書く。ninzu分の配列tensu[]を定義し、for文で点数を取り込む。平均を計算し、その値を返す。 と考えました。 main関数の中でninzuを取り込んで、関数averageに飛んでninzu分の配列-tensu[ninzu]をつくったんですが、エラーの嵐です(泣) なんか、根本的に違う気がして本で調べてみたんですが、分りませんでした。 main中で取り込んだninzuを関数の中で使う事は出来ませんか? あとmain中で printf("科目Aの成績\n");をかき、このあとに関数を呼び出せれば実行例どおりに作れると思うんですが、どうやったら関数を呼び出せますか? もう手が付けられないです…。助けてください また、「こうしたら?」みたいなアドバイスもありましたらぜひお願いします! なにぶん超初心者ですので、よろしくお願いします。

  • PHPで関数をCのように使いたい

    ご覧頂きましてありがとうございます。 PHP言語にて、下記のようなプログラムを書くにはどうしたらいいでしょうか? /**Main.php*/ // //jpgの画像を1枚指定する。 // //pictChange(jpgの画像); //画像を加工して表示します。 // //main(jpgの画像); //関数pictChangeにjpgの画像を渡しその都度加工して表示します。 // ただこれだけのことですが、 main関数に分岐と再帰処理が入っているため、今の考えでは、 main.phpとpictChange.phpにファイルを分離して書いています。 また、画像のデータを出力する際に、データのメモリを開放する処理、 main関数からpictChange関数を呼び出す際にPHPではどのようにしたらいいのか、 分からないことだらけです。 お手数ですが、 分かる方がいらっしゃいましたらご教授お願い致します。

    • ベストアンサー
    • PHP
  • Normdist関数を用いたノイズの解析

    Excelを用いてノイズデータの解析をしています。 時刻1~1200(1/2秒)間にノイズデータを1200点取得し、区間を設定しfrequency関数から頻度分布を求め、区間を横軸、分布を縦軸に取りグラフにしました。 ノイズは2.0から3.0までの値をランダムにとっており、区間は2.0から0.05ずつ3.0までの合計20区間をとりました。 そのグラフに各区間に対するガウス分布の値をnormdist関数によって求め、追加しました。 normdist関数の計算の際用いた平均値と標準偏差はそれぞれ2.35、1.38を基準に適当に決めております。 これは何故なのでしょうか。(関数形式は確率分布なのでtrueを用いています。) また、頻度分布をO、normdist関数によって求めた各区間に対するガウス分布の面積、つまり期待値をE、dを区間数から自由度3を引いたもの(つまり20-3=17)とすると、X^2=1/d(Σ(O-E)^2/E)で求められるX^2の値が1程度なら十分にガウス分布のデータをよくあらわしているというのですが、これはどういう意味なのでしょうか。 先程の適当に設定した平均値と標準偏差を適当に変え、X^2の値が1程度になればよいという指摘を受けたのですが、全く意味がわかりません。 どなたか、ご教授ください。

  • main関数の戻り値

    C言語のmain関数の戻り値はint型ですよね。 私もそういう決まりだと思って守ってきました。 しかし、「mainが戻り値を返すって、どこに返すの?」ということが、私は理解できていません。 私が調べたところでは、「ホスト実行環境」という言葉がこの問題に関係あるようですが、この言葉の意味はよくわからないですし、似た言葉で「ホスト環境」ということばがあるのですが意味も関係もわかりません。 これらは、OSとは違うと思うんですが、自信はありません。 それでも、ない知識を振り絞っていろいろ考えてみると、次のようなことらしいのですが、正しいでしょうか。 ・OSはプログラムの実行に先立ちホスト実行環境を作る。 ・静的記憶域のオブジェクトを初期化するのはホスト実行環境である。 ・関数が、main関数を呼ぶことは可能である。(以下では、main関数が関数から呼ばれる場合は除く。) ・main関数を呼ぶのは、ホスト実行環境が行なう。 ・main関数の中のreturnによってプログラムが終了するのと、exit関数でプログラムが終了することに違いはない。 ・main関数の戻り値は、ホスト実行環境に返される。 ・returnによってホスト実行環境に返される値は、int型である限りなんでもよい。 ・exitによってホスト実行環境に返される値は、int型である限りなんでもよい。 ・必ずexitで値が返されるならば、main関数の中にreturnはなくてもよい。 main関数からの戻り値をどうしようと構わないんだと思うんですが、皆さんの経験の中で、実例としてこういうふうに使われる、というのは何かないのでしょうか。 (ホスト実行環境に値が返される、といっても無視するのでは意味はないと思うのです。 その値の使用例としては、 0が返ってくると「プログラムは正常終了しました。」と表示するとか、0以外の値が返されると別のプログラムが走るとか、 そういうことだと思うんですが。)

  • EXCELの関数"STDEV(標準偏差)"について

    EXCEL2002でSTDEV関数を用い標準偏差を出力しておりまして、通常対象となる数値(データ)が全て同じ値となる場合は平均値も同じ値となるため標準偏差"0"となるかと思うのですが、数値が3.974でn数が3,5,6,7の場合"0.0000000596…"のように"0"にならず、頭を悩ませております。 そこで質問なのですが、ズバリ『何故"0"という結果が出ないのか』です。単純な事かもしれませんが有識者の皆様、是非ご教授下さいますようお願い申し上げます。