if文の中身教えてください

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
sakaguchikakeru
記事: 2
登録日時: 2年前

if文の中身教えてください

#1

投稿記事 by sakaguchikakeru » 2年前

2次方程式ax²+bx+c=0についてa,b,cの値を実数値として与えると2解を持つプログラムを作りなさい。
という問題で答えが「a b cの値を入力:1,1,-6」で「2解」となります。
ここまでしかできてないのですがif文の中身が分からないので教えてください。

コード:

#include<stdio.h>
int main(void){
double a, b, c, d;
printf("a b cの値を入力:");
scanf=("%lf%lf%lf", &a, &b, &c);
if()

アバター
みけCAT
記事: 6734
登録日時: 13年前
住所: 千葉県
連絡を取る:

Re: if文の中身教えてください

#2

投稿記事 by みけCAT » 2年前

if文の中身以前の問題ですね。

・「2解を持つプログラム」とは何か?2解を持つ「か判定する」プログラム?
・scanf は関数であり、そこに代入はできない
・例にはコンマが入っているのに、書式はそれに対応していない
 (例のコンマは入力ではなく出力の可能性があるので、間違っていると断定はできない)
・個人的には、とりあえず関数の最初の { に対応する } を書いておきたい

まずは作るプログラムの仕様 (どのような入力を受け入れ、どのような場合にそれぞれどのような出力をするか)
をはっきりさせましょう。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

アバター
みけCAT
記事: 6734
登録日時: 13年前
住所: 千葉県
連絡を取る:

Re: if文の中身教えてください

#3

投稿記事 by みけCAT » 2年前

ポイントとなりそうなのが、

・a = 0 の場合の処理に注意!
・2進の内部表現で10進の実数をちょうど表せない場合があり、誤差に注意!

という点ですね。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

sakaguchikakeru
記事: 2
登録日時: 2年前

Re: if文の中身教えてください

#4

投稿記事 by sakaguchikakeru » 2年前

分かりました。ちょっと頑張ってみます

返信

“C言語何でも質問掲示板” へ戻る