- ベストアンサー
プログラミングについて!!大至急m。_。m
3つの数字の最大値を求めるプログラミングと配列での平均値をだすやつを授業でやったんですが、 doubleとmaxの根本的違いを教えてください。 お願いします。
- みんなの回答 (8)
- 専門家の回答
質問者が選んだベストアンサー
doubleというのは、double float型の略のことで、 以下のように使います。 double data1; こうすると、data1の領域に小数点を含む数値を格納できます。 一方 float data2;とすると これもdata2の領域に小数点を含む数値を格納できますが、格納できる数値の範囲が、double型より小さくなります。水割りをダブルで下さいというと、水割りの量が倍になってきますよね。それと一緒ですよ。ダブルは、float型の倍の大きさなんです。 maxというのは、2つの数字の大きい方を取ってくる関数です。 int a= 10; int b= 20; int c;のとき c = max(a,b);とすると 20は10よりおおきいですね。 だからcには大きい方の値の20がセットされます。 maxというのは、「最大」という意味です。 では映画のマッドマックスというとマッドが最大ということかというと、どうもそうではなくて人の名前のようですね。その辺、誤解の無いようにして下さい。
その他の回答 (7)
- lawson
- ベストアンサー率44% (29/65)
本気で、分りたいなら、基礎的な入門書から。 やったほうがいいです。 適当にやって単位をとりたいだけなら。 だれかの答案とか編集して、単位とってください。 ↑の質問をしている時点であんまり興味がある とは思えません。 回答する側も回答の余地があまりないです。 よく、ネットの世界では、質問者本人のほうで、 調べたり、努力も せず、一方的に無理な質問ばかりして、 最後に、逆切れしながら、 「これだからオタは~なんだよ」みたい な捨てセリフを残して去っていく人間がしばしば 見受けられます。 はっきり、言って気分悪いです。 mezamasi8さんが必ずしもそうだとは 言いませんが・・・。 質問する以前に自分自身もわかろうとする努力が 欲しいところです。 あと、回答に対するお礼などをできるだけしましょう。 以上です。
- Soli
- ベストアンサー率11% (7/61)
一番最初の方が仰っていることが理解できないのならば 質問を改めるべきですね。 「変数と関数の違いってなんですか?」 とか。 「根本的違い」と問われたら「変数と関数」としか答えられませんよ。 相当不親切な先生ならばこういう基礎をすっ飛ばして いきなり解らないこと教えるでしょうけど、 今回のはさすがに貴方の勉強不足でしょう。 質問前に調べました?教科書や参考書に載っていますよ。
- jacta
- ベストアンサー率26% (845/3158)
突き放しっぱなしも何なので... doubleは他の回答にもあるように型名であり、キーワードです。longと組み合わせてlong double型になることもあります。 maxはC言語の標準仕様にはありません。 以下はC++の場合です。 std::maxは2つの引数を比較し、大きい方の参照を返す関数、または第1、第2引数を第3引数で指定した関数またはファンクタを用いて比較し、大きい方の参照を返す関数です。 std::numeric_limits<type>::maxは算術型typeの最大値を返す関数です。 処理系によっては独自にmaxという名の関数やマクロ、あるいはその他を定義している可能性がありますが、これらについては処理系を特定しない限り、何ともいえません。 分からないようなら、基礎から勉強しなおしてください。
お礼
わざわざありがとうございます。
- jacta
- ベストアンサー率26% (845/3158)
> doubleとmaxの根本的違いを教えてください。 根本的な違いといっても、そもそもが全く違うものです。例えて言うなら「お金」と「電卓」ぐらい違います。こんなに違うものを比較することはできません。
doubleは「型」。maxは「マクロまたは関数」。それが根本的な違いです。 double x = 1.0; double y = 2.0; double z = max(x, y); 上の場合、x, y, z はdouble型の変数です。 zの初期値はmaxによってxとyの大きい方の値、つまり2.0になります。
- k_riv
- ベストアンサー率57% (105/183)
//変数は,型の定義をしないと使えません。 //そこで,変数xをダブル型で定義します。 double x; //最大値の計算をするときには, //最大値を計算する関数を呼び出します。 x=max(配列変数); //これは,配列変数を引数にして, //max()関数を呼び出し, //その配列変数の中から最大値を見付けて //戻り値をダブル型の変数xに代入する。 //変数xに最大値が代入される。 //と言う事です。
- 6dou_rinne
- ベストアンサー率25% (1361/5264)
double :浮動小数点型の宣言 max: 最大値を求める関数(マクロだったっけ)
補足
だからどーゆうことなんですか?
お礼
すいませんでした。 アドバイスありがとうございました。