• 締切済み

プログラムする言語によって精度は変わる?

memphisの回答

  • memphis
  • ベストアンサー率40% (975/2395)
回答No.6

C言語の場合、CPU/OSで違ったりします。 また、コンパイルオプションでも計算精度は違います。 この辺りの話しは検索すれば多くの情報が出てきますので一度は見るといいでしょう。

関連するQ&A

  • C++が最初のプログラム言語

    昔コボルをやっていた者ですが、 C++を最初に勉強している人もしくは、 仕事にしている人はいませんか? 私はVBが比較的簡単に習得できると思い、 簡単なものを作成したのですが、 やっていて、おもしろくない(コボルもそうでした。)のですが、 C++の本を買ってみて、色々いじっていると、 おもしろいと思ったのですがこんな感じで勉強を すすめてある程度習得した人っているのでしょうか? 掲示板などでは、C++は覚えておいてそんはしない が、習得するのは大変とかいてあるのが多いのです。

  • C言語プログラム

    N次の複素正方行列S,Tの積Uを計算するプログラムを作りたいのですが、実数で正方行列を計算するプログラムと 複素数の積、和のプログラム struct complex { double re; double im; }; を作ったのですが、この二つをまとめるとプログラムができるらしいのですがまとめ方が全然わかりません。どのようにしたらいいかヒントなど教えてください。

  • C言語のプログラムについてですが、

    #include <stdio.h> int main(void) { double r; printf("半径を入力してください:"); scanf("%lf", &r); printf("円周=%f\n", 2.0 * r * 3.14159); printf("円面積=%f\n", r * r * 3.14159); return 0; } 上のC言語のプログラムを参考にして 正三角形一辺を double値でキーボード入力し、次のように高さと 面積を計算するプログラムを教えてください。 よろしくお願いしますl_ω_l 3の平方根は1.73205とします。 [実行結果] ======= 一辺の値を入力してください: 20 高さ=17.320500 面積=173.205000

  • C言語プログラム

    学校のレポートでC言語のプログラムを作りました。ところが実行してみると計算値を表示させるところに -1.#IND00 と表示されます。本当は実数が表示されるはずなに・・・ 多分、私のプログラムが間違っているのだろうと思います。どこが間違っているのか目星をつけるためにこの出力結果の意味を教えてほしいのです。

  • プログラム言語について

    プログラム言語ってJava C PHP C++ (Visual)Basic C#等がありますけど どう違うんですか? それぞれの違いを教えてください

  • 手続き型言語からオブジェクト指向型言語にコンバート

    COBOLで書かれたプログラムをC#、JAVAなどのプログラムに書き換えるって簡単ですか? COBOLは構造化プログラミングと呼ばれ、JAVAなどはオブジェクト指向でタイプが違うのではないかと思うのですがいかがでしょう?

  • プログラム言語って・・・

    はじめまして プログラム言語を勉強したいと思っているのですが、何を勉強したらよいのでしょうか? JAVAとかCとかVBとかCGIとかいろいろありますが、何を勉強したらいいのかわかりません・・ 社会人なのでPCスクールに通う時間もないし金銭的にもそこまで余裕がないので本を買って独学しようと思っています。 巷の求人誌を見るとプログラマーは引っ張りダコです、プログラミングに関しては全くのド素人です、 以前、知人に尋ねたら「何を作るかによって使う言語がちがってくる」と言ってましたがイマイチよくわかりませんでした、 JAVAとかHTMLとかXMLはネットに関する言語だということはわかりますがそれ以外のVBとかCとかC++とかCOBOLとかは何に使うのですか? また今から時代の将来性を考えると、私のようなまっさらの素人は何を勉強したらよいでしょうか? オススメの書籍やサイトが御座いましたら教えて下さいマセ。。

  • C言語での桁落ちの以下のプログラムを教えてください

    C言語の本の問題で答えが書いてなく困っております。 f(x)=xの5乗-ルート(1+xの10乗)+1/{2×ルート(1+xの10乗)}の式が与えられ x=0,1,2・・・50 における f(x) の値を求める場合のプログラムを教えてください。 注**そのまま計算した場合と式を変形して正確に計算した場合を比較せよ(一つのプログラムで両方計算).

  • C言語でintをdoubleに

    C言語でプログラミングを書いています。 10問の問題の正解数に応じて正答率を出すプログラムを書いているのですが、正解数を数えるものをintで定義(seikaiとする)し、正答率の計算結果を出すものをdoubleで定義(rituとする)しました。 seikaiをインクリメントで数え ritu=seikai/10*100 という計算をしました。このrituを%fで表示させようとしても正しく表示されません。intで定義したものを計算に用いて、その計算結果をdoubleで定義したもので表示することはできないのですか?? また、自分で調べたら、ritu=(double)seikai/10*100とやるというものがありましたが、”(double)”を使わずに計算を反映させることはできませんか?

  • C言語のプログラムに関することで質問です。

    C言語のライブラリを利用したプログラムのことで質問なのですが、座標xとyの成分から、ベクトルの角度(t)と大きさ(r)を求めるプログラムを作りました。しかし、このままのプログラムだと、ある場合のときに限り、正しい値が返されなくなるらしいのですが、それはどのような場合で正しい値が返されなくなってしまうのかを教えてください。また、正しい値がでるようにするにはどこをどう直したらよいのでしょうか? 自分でも考えてみたのですが、分からず困っています。分かる方どうかよろしくお願いいたします。 #include <stdio.h> #include <stdlib.h> #include <math.h> #define square(x) ((x) * (x)) //ベクトルの角度θを返す関数 double theta(double x, double y) { return atan(y / x); } //ベクトルの大きさを返す関数 double radius(double x, double y) { return sqrt(square(x) + square(y)); } int main(int argc, char **argv) { double x, y; //x, yは座標 double t, r; //t, rは極座標 if(argc == 3 && (x = atof(argv[1])) && (y = atof(argv[2]))) { t = theta(x, y);  //極座標tを計算 r = radius(x, y); //極座標rを計算   //ベクトルの角度と大きさを表示 printf("t = %f, r = %f\n", t, r); } return 0; }