untitled:理想身長

昨日理想体重のプログラムをC言語で作ってみましたが、使用した式をちょっといじくると理想体重から元の身長を割り出すことができることに今更気づき、そしてこんなものを作ってみました。その前に、昨日のプログラムの修正です。

関数ideal_weight 31行目: return (tall - 100) * 0.9; → ''return (float)(tall - 100) * 9 / 10;''

小数点数が計算式から消滅したため、明示的にキャストしてみました。この式を変形して、理想身長を求めていきます。ソースはこんな感じです。


''#include''
''#include''
''#include''

''#define'' ARGC_NUM 2

''using namespace'' std;

''float'' ideal_tall(float);

''int main''(''int'' argc, ''char'' *argv[])
{
  ''float'' weight;

  ''if''(argc != ARGC_NUM){
    cout << "体重を入力:";  cin >> weight;
  }''else''{
    weight = atof(argv[1]);
  }


  printf("体重%3.2f[kg] のあなたの理想身長は%3.1f[cm] です。\n", weight, ideal_tall(weight));

  ''return'' 0;
}


''float'' ideal_tall(''float'' weight)
{
  ''return'' (''float'')weight * 10 / 9 + 100 ;
}



ダイエットをする際、目標の体重を入力して、出てきた値が実際の身長より低いかどうかという見方でそのダイエットは正しいかどうかを判断するには便利かもしれません。

今回はC++で作ってみましたが、書式指定をしながら出力をしたかったので出力にcout(std::cout)と関数printf(int printf(const char *format, ...))が混在するなんとも言えないものになってしまいました。



どうでしょうか。皆さんもご自分の身体のことについて、少し気にかけてみませんか?以上、hiropon355(ヒロポン)でした。
nice!(0)  コメント(10)  トラックバック(0) 

nice! 0

コメント 10

か~みっと

そういえばfloat使ってるんですね(^^;;;

基本はdoubleで統一した方がいいですよ。
by か~みっと (2011-02-24 18:20) 

hiropon355

か~みっとさん

そうなんですけどね。32ビットで十分かなと。高校では基本的にfloat型使ってきたので、慣習化してるのもありますね。
by hiropon355 (2011-02-24 18:37) 

シザーマン

[悲しい顔][ふらふら][落胆した顔]あ~・・・わけわからなくてごちそうさまです。
by シザーマン (2011-02-24 22:28) 

hiropon355

シザーくん

いや、無理に理解しようとする必要は...
by hiropon355 (2011-02-25 00:57) 

か~みっと

実はfloatって内部ではdoubleで計算してるんですよ。

毎回float←→doubleのキャストが暗黙的に行われてます。

だからfloatは余り使わない方がいいよ。
by か~みっと (2011-02-25 17:52) 

hiropon355

か~みっとさん

そうなんでしょうね。C#にfloat型はあっても変換はできなくて結局double型を使いましたもの。

float型の使用は... 多分止められないです。慣習化しちゃってるので。
by hiropon355 (2011-02-25 18:17) 

か~みっと

実数のキャストは
桁の丸めで誤差が出ます。

精密な計算でなくても出ますから
辞めた方が良い習慣ですf(^^
by か~みっと (2011-02-25 18:56) 

hiropon355

か~みっとさん

そうなんですか?そしたらこれからは使用を控えようかと。
by hiropon355 (2011-02-25 18:59) 

か~みっと

うん、
前に仕事をしてた所では
float禁止がプログラム設計書に
書かれてたぐらいですからね。

アセンブラのコードを出力してみて下さい。
floatにした時の無駄がよく分かると思います。
(多分(w)
by か~みっと (2011-02-25 19:08) 

か~みっと

あっご紹介
 ↓
http://www.pro.or.jp/~fuji/mybooks/cdiag/index.html#mokuji[Cプログラミング診断室]

C言語について
共感出来る少ないライター(本職はプログラマ)さんです。
by か~みっと (2011-02-26 06:55) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。