• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:C++でのプログラムについての質問です)

C++で二次関数の解を求めるプログラムを作成する方法

このQ&Aのポイント
  • C++で二次関数の解を求めるプログラムを作成する方法を説明します。
  • プログラム内の自作関数solveをvoid solve(double, double, double)の形式で変更し、同じ動作をするように変更する方法を教えてください。
  • 質問者は、二次方程式の係数を入力し、解を求めるプログラムを作成しましたが、自作関数の形式を変更したいとのことです。

質問者が選んだベストアンサー

  • ベストアンサー
  • asuncion
  • ベストアンサー率33% (2127/6289)
回答No.1

好きにしてくださってかまいません。 #include <stdio.h> #include <stdlib.h> #include <math.h> void solve(double a, double b, double c) { double D; if (a == 0) { // 2次方程式ではないとき if (b == 0) { // 係数がおかしいとき printf("係数がおかしい\n"); exit(EXIT_FAILURE); } else { printf("実数解1個 = %f\n", -c / b); } } else { D = b * b - 4 * a * c; if (D > 0) { printf("実数解1個目 = %f\n", (-b + sqrt(D)) / (2 * a)); printf("実数解2個目 = %f\n", (-b - sqrt(D)) / (2 * a)); } else if (D == 0) { printf("実数解1個 = %f\n", -b / (2 * a)); } else { printf("虚数解1個目 = %f + %fi\n", -b / (2 * a), sqrt(-D) / (2 * a)); printf("虚数解2個目 = %f - %fi\n", -b / (2 * a), sqrt(-D) / (2 * a)); } } } int main(void) { double a, b, c, x1, x2; printf("2次方程式ax^2 + bx + c = 0の係数a, b, cを1行で入力>"); scanf("%lf%lf%lf", &a, &b, &c); solve(a, b, c); return EXIT_SUCCESS; }

addaadaa
質問者

お礼

できました ありがとうございます!

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • wormhole
  • ベストアンサー率28% (1626/5665)
回答No.2

>自作関数solveをvoid solve(double, double, double)のように変更し同じ動作をするように変更したいです 自作関数solveは、どこにあるんでしょうか。 質問にはmain関数しか見当たりませんけど。

すると、全ての回答が全文表示されます。
このQ&Aのポイント
  • 突然ネットワーク内からプリンターが使用できなくなりました。プリンターケーブルで認識はしているのですが、セットアップが完了しません。
  • WIFIでも接続を試みましたが環境的な原因かもしれませんが認識しません。
  • 内容確認と対策をご教授下さい。
回答を見る

専門家に質問してみよう