#include <stdio.h>
#include <math.h>
#include <time.h>
double pow_2_53 ;
double pow_2_1022 ;
double pow_2_1074 ;
double abssucc(double x){
return x / (1 - pow_2_53);
}
double abspred(double x){
return x * (1 - pow_2_53);
}
double succ (double x){
if(abs(x) < pow_2_1022) return x + pow_2_1074;
if (x >= 0) return abssucc(x);
else return abspred(x);
}
double pred(double x){
if(abs(x) < pow_2_1022) return x - pow_2_1074;
if (x >= 0) return abspred(x);
else return abssucc(x);
}
int main(){
pow_2_53 = pow(2,-53);
pow_2_1022 = pow(2,-1022);
pow_2_1074 = pow(2,-1074);
clock_t start, end;
double r= 0;
int i=0;
start = clock();
for(i;i<1000000;i++){
r= succ(1);
printf("%.50f\n",r);
}end = clock();
printf("ループ100万回の時間: %f秒\n", (double)(end - start) / CLOCKS_PER_SEC);
}
このプログラムを動かしたいのですが、動きません。どこがおかしいのでしょうか?
教えて下さい!
No.2ベストアンサー
- 回答日時:
pow_2_53 = pow((double)2,(double)-53);
pow_2_1022 = pow((double)2,(double)-1022);
pow_2_1074 = pow((double)2,(double)-1074);
引数の型が違うので(pow関数の引数は両方ともdouble)、違う関数とみなされたからエラーがでました。ライブラリ関数を使う場合は引数の型をチェックしましょう。
http://simd.jugem.jp/?eid=33
No.4
- 回答日時:
以前の質問、
http://oshiete.goo.ne.jp/qa/6860931.html
の、No.3 の指摘も反映させた方が良いかもしれませんね
(エラーはエラーのままだろうけど)
あと、No.1 の(ベストアンサーに選んだのだから)回答も最後もまで読んだ方が良いかもしれません。
(これもエラーの表示とは直接関係ないけど)
そして、もしかして、計算のスピードを評価しようとしているのなら、時間を計る部分でひたすら printf() を繰り返すのは、計算のスピードじゃなくて、表示のスピードを計測しているだけだと思いますが。
No.3
- 回答日時:
「エラーが出て動作しない」じゃわからん. なんでメッセージひとつまともに書けないんだろう. それとも, あなたは「エラーが出て動作しない」といわれてすべて理解できる超能力を持っているのですか? もしそうだとしても, この世界にそれほどの超能力の持ち主は多くないだろうことを認識してください.
C なら pow に整数を引数として与えても自動的に変換しなければなりません. つまり, エラーにならないのが正しい動作です>#2.
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# c言語でユーザ関数を利用して複素数のべき乗と絶対値の数列を計算するプログラムが作りたいです。 3 2023/01/29 22:13
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- C言語・C++・C# バイナリファイルをコピーするのにかかる時間を測りたいのですが実行するとFatel error:gli 2 2022/11/03 01:10
- C言語・C++・C# C言語のマクローリン展開ローラン展開のコードについて 3 2022/12/15 14:45
- FX・外国為替取引 mql4のコンパイルエラー箇所の修正お願いします。 1 2023/03/15 16:14
- C言語・C++・C# C 言語の Gauss Jordan 法について 2 2022/12/28 11:16
- C言語・C++・C# 並列プログラミングのπ計算について 1 2022/07/16 22:30
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- C言語・C++・C# Cのdoubleの浮動小数点表示について 3 2023/04/17 13:14
- C言語・C++・C# (C言語)めちゃくちゃな値になってしまいます。 5 2022/08/13 11:55
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Stuck
-
Notepad++の関数リスト表示の変...
-
どちのほうがすきですか?
-
擬似コード 長さがmの配列でな...
-
こんなことてしますか??
-
C言語って古いですか?
-
gcc13.2のバグ?
-
C言語について
-
バッファリングについて。
-
C言語 列挙型(enum型)変数について
-
C言語初心者 ポインタについて...
-
卒業研究でよく分からないとこ...
-
scipy っていうのをいれようと...
-
パイソンの
-
VisualStudio2022でC言語プログ...
-
擬似コード
-
あなたは、Excelはどうやって学...
-
pythonの質問です。
-
プログラミングについての質問...
-
chatgptでつくってもらったコー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
MACで動く実行ファイルをWindow...
-
VisualStudioで、コードを印刷...
-
c言語
-
c言語
-
大量のデータを読み込んで表示...
-
C言語の関数と配列に関する質問
-
win10で、正確な待ち時間の作り方
-
Linuxでの開発環境構築や設定の...
-
C言語 バッファについて。
-
これなにがちがうんですか??
-
C++6.0でのresource.hについて
-
トリプトファンってケト原性あ...
-
c#のTLS1.2での通信について
-
C++でデスクトップGUIアプリ開...
-
Windows Formアプリからコンソ...
-
LinuxカーネルのCFSで用いられ...
-
「using Windows」でエラーが出る
-
C言語初心者 ポインタについて...
-
Bitcoin、BTCはブロックチェー...
-
C言語初心者 構造体 課題について
おすすめ情報