Entries
floatではなくてdoubleだった……凹。
下の記事はBorand C++ Compilerがうまく働いていないからエラーになっていたようです。。。
あー、ですネ。
#include <stdio.h>
int main()
{
int i;
double a;
a = 0.0;
for (i = 0; i < 100; i++)
{
a = a + 0.1;
}
printf("%f\n", a);
return 0;
}
floatだと、何故か変な数字になります。
doubleだといい数字。
説明書を読んでいちお、なっとくしました。。。
果たしてfloatを使う機会はあるのか???
あー、ですネ。
#include <stdio.h>
int main()
{
int i;
double a;
a = 0.0;
for (i = 0; i < 100; i++)
{
a = a + 0.1;
}
printf("%f\n", a);
return 0;
}
floatだと、何故か変な数字になります。
doubleだといい数字。
説明書を読んでいちお、なっとくしました。。。
果たしてfloatを使う機会はあるのか???
スポンサーサイト
5件のコメント
[C29]
- 2006-02-27
- 編集
[C33] mkさんへ。
いや、bccでもfloatは扱えるはずです。スミマセン。わたしがbccの設定ミスをしたのでコンパイル出来なかったんです。でも、数値的にはfloatよりもdoubleの方が正確でした。むしろ、doubleを使ったほうが正確というぐらい。。。
stdinのことについてはまだ、まったくわかりません。でも、嬉しいですよ。たくさんのお便りありがとうございます。☆
Eclipseは日本語化できますか! 別途のおまじないってなんだろう。。。^ ^;
stdinのことについてはまだ、まったくわかりません。でも、嬉しいですよ。たくさんのお便りありがとうございます。☆
Eclipseは日本語化できますか! 別途のおまじないってなんだろう。。。^ ^;
- 2006-02-27
- 編集
[C38] 計算精度について
float(単精度)については下記を参照してください。
http://e-words.jp/w/E58D98E7B2BEE5BAA6E5AE9FE695B0.html
所詮、2進数の計算結果を10進数に直すので、浮動小数については、数値の精度が狂います。
しかし、あまり計算精度を必要としない分野もありますから、状況によっては、精度より計算速度を優先させたい場合などに単精度が使われます。単精度の方が計算量が少ないので、その分計算速度が速いわけです。
http://e-words.jp/w/E58D98E7B2BEE5BAA6E5AE9FE695B0.html
所詮、2進数の計算結果を10進数に直すので、浮動小数については、数値の精度が狂います。
しかし、あまり計算精度を必要としない分野もありますから、状況によっては、精度より計算速度を優先させたい場合などに単精度が使われます。単精度の方が計算量が少ないので、その分計算速度が速いわけです。
- 2006-02-28
- 編集
[C41] 須栗歩人さんへ。
なるほど詳細な計算をするということは実行速度に影響が出てくるんですネ。じゃあ、floatもちゃんと使う機会があるんですネ。勉強になりました。何時もありがとうございます。。。
- 2006-03-01
- 編集
コメントの投稿
0件のトラックバック
- トラックバックURL
- http://rokalita.blog52.fc2.com/tb.php/25-0175fd29
- この記事に対してトラックバックを送信する(FC2ブログユーザー)
知りませんでした。
ここから先は前の記事へのコメントへのコメントなんですが、
stdinはstandard inputのこと。
つまり、標準入力。
たいていC言語だと標準入力はキーボードなんで、キーボード入力されたものを読み込むのにstdinとおまじないを唱えてるわけです。
あと、Eclipseは日本語化できますよ。
前に自分がやったときにはEclipseのサイトのどこかに言語のパッケージがあったんですが、たしか日本の有志によってパッチも出てます。
ただし、Eclipseをすでに起動した場合は別途おまじないが必要だったと思います。
http://www.eclipsewiki.net/eclipse/index.php?%C6%FC%CB%DC%B8%EC%B2%BD
らへんを参考にしてみてくださいな。