【掲示板ご利用上の注意】

 ※題名は具体的に!
 ※学校の課題の丸投げ禁止!
 ※ソースの添付は「HTML変換ツール」で字下げ!
 ※返信の引用は最小限に!
 ※環境(OSとコンパイラ)や症状は具体的に詳しく!
 ※返信付き投稿の削除は禁止!
 ※マルチポスト(多重投稿)は慎んで!

 詳しくはこちら


本当はこんなに大きく書きたくはないのですが、なかなか守っていただけなくて…。
 守ってくださいね。お願いします。(by管理人)

C言語ソース⇒HTML形式ツール掲示板2こちら


管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧

No.21475

-2.0E-03を-0.002として読み込む方法
投稿者---ゆかり(2005/06/17 14:37:43)


文字の"-2.0E-03"を実数の -0.002 として取り込みたいのですが
どうやればいいのでしょうか?
どうぞよろしくお願いします。



この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:-2.0E-03を-0.002として読み込む方法 21477 YuO 2005/06/17 15:13:49


No.21477

Re:-2.0E-03を-0.002として読み込む方法
投稿者---YuO(2005/06/17 15:13:49)


>文字の"-2.0E-03"を実数の -0.002 として取り込みたいのですが
>どうやればいいのでしょうか?

strtodを使います。
http://www9.plala.or.jp/sgwr-t/lib/strtod.html



この投稿にコメントする

削除パスワード

No.21478

Re:-2.0E-03を-0.002として読み込む方法
投稿者---ゆかり(2005/06/17 16:12:40)


早速のコメントありがとうございます。
これって制限があるのでしょうか?
実行結果は次のようになりました。

2E-01=0.200000
2E-02=0.020000
2E-03=0.002000
2E-04=0.000200
2E-05=0.000020
2E-06=0.000002
2E-07=0.000000
2E-08=0.000000
2E-09=0.000000





この投稿にコメントする

削除パスワード

No.21479

Re:-2.0E-03を-0.002として読み込む方法
投稿者---まきじ(2005/06/17 16:24:51)


>これって制限があるのでしょうか?
>実行結果は次のようになりました。

double 型の、精度の既定値は、6 だからです。


この投稿にコメントする

削除パスワード

No.21480

Re:-2.0E-03を-0.002として読み込む方法
投稿者---ゆかり(2005/06/17 16:42:45)


了解しました。
みなさんどうもありがとうございました。


この投稿にコメントする

削除パスワード

No.21481

Re:-2.0E-03を-0.002として読み込む方法
投稿者---REE(2005/06/17 17:28:12)


>>これって制限があるのでしょうか?
>>実行結果は次のようになりました。
>
>double 型の、精度の既定値は、6 だからです。

今回はdoubleの精度は問題ありません。

表示方法の問題と思われます。

以下は推測の回答です。

printfの書式指定の%fを%.15fにしてみてください。



この投稿にコメントする

削除パスワード

No.21482

Re:-2.0E-03を-0.002として読み込む方法
投稿者---ゆかり(2005/06/17 17:32:34)


あっ本当ですね。
じゃあいくらが制限なのでしょう??


この投稿にコメントする

削除パスワード

No.21483

Re:-2.0E-03を-0.002として読み込む方法
投稿者---REE(2005/06/17 17:50:37)


>あっ本当ですね。
>じゃあいくらが制限なのでしょう??

doubleは浮動小数での記憶ですので、指数部と仮数部にそれぞれ有効範囲があります。
仮数部の精度は約15桁、指数部の範囲は±300くらいです。
例えば、2.0000000000000000000000000000000000000000001E+2 は無理ですが、2.0E-200ならOKです。


この投稿にコメントする

削除パスワード

No.21484

Re:-2.0E-03を-0.002として読み込む方法
投稿者---REE(2005/06/17 17:56:11)


>>double 型の、精度の既定値は、6 だからです。
>
>今回はdoubleの精度は問題ありません。

まきじさんの発言は、printfでの%fの小数点以下の表示桁数の規定値を表していると思われます。
double型の精度の勘違いしていました。(そしておそらく質問者も・・)



この投稿にコメントする

削除パスワード

No.21485

Re:-2.0E-03を-0.002として読み込む方法
投稿者---まきじ(2005/06/17 19:48:10)


>まきじさんの発言は、printfでの%fの小数点以下の表示桁数の規定値を表していると思われます。

その通りです。
printf("%.15lf",strtod("2E-09",&p));
という感じかなと


この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧