アフィリエイト広告を利用しています

広告

posted by fanblog

2017年11月19日

《その142》 int型とdouble型の混在する計算 & p.97演習3-4


 int型とdouble型の混在する計算

 int型とdouble型の混在する計算では、int型数値は暗黙の型変換によって double 型に変換され、計算の精度が維持されます。


 デフォルト桁数
 標準では、double型で表示される場合のデフォルト桁数は 6桁になります。
6桁というのは、整数部分と小数部分を合わせた桁数です。


cout << 1.568 * 2.2156 << "\n";
cout << 123.5 * 506.22 << "\n";
cout << 1.5 * 22156.88 << "\n";
cout << 123.5 * 506322 << "\n";
cout << 1.568 * 232156 << "\n";


e03_0001.png



新版明解C++中級編 p.97 演習3-4
 以下に示す形式の関数 f(x) を、台形公式によって積分した値を返却する関数 daikei を作成せよ。
    double f(double x);
 関数 daikei は、以下の形式とする。
    double daikei(double x1, double x2, int n, double fp(double));
 引数 x1 と x2 は積分区間の下限値と上限値であり、引数 n は積分区間の分割数である。
最後の引数 fp は、積分の対象となる関数へのポインタである。

// p97_演習3-4
#include <iostream>
using namespace std;

double f1(double x) {
return 3 * x * x;
}

double f2(double x) {
return x * x * x - 3 * x * x + 2 * x + 4;
}

double daikei(double x1, double x2, int n, double fp(double)) {
double d = (x2 - x1) / n; // 分割の幅(台形の高さとする)
double s = 0; // 面積
for (int i = 0; i < n; i++) {
s += (fp(x1) + fp(x1 + d)) * d / 2;
// 面積 = (上底 + 下底) * 高さ / 2
x1 += d;
}
return s;
}

int main() {
cout << "◆f(x) = 3 * x * x\n"
" ( 2 <= x <= 4, 分割数 6)\n";
cout << " 面積の計算値 : " << daikei( 2, 4, 6, f1) << '\n';
cout << " (実際の面積は : 56.0)\n";

cout << "◆f(x) = x * x * x - 3 * x * x + 2 * x + 4\n"
" ( 1 <= x <= 3, 分割数 15)\n";
cout << " 面積の計算値 : " << daikei( 1, 3, 15, f2) << '\n';
cout << " (実際の面積は : 10.0)\n";
}

e03_04.png


新版 明解C 入門編 (明解シリーズ)

新品価格
¥2,916から
(2017/11/10 13:13時点)

新版 明解C 中級編 (明解シリーズ)

新品価格
¥2,916から
(2017/11/10 13:14時点)





この記事へのコメント
コメントを書く

お名前:

メールアドレス:


ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバックURL
https://fanblogs.jp/tb/6986856
※ブログオーナーが承認したトラックバックのみ表示されます。

この記事へのトラックバック

 たまに、クリック お願いします m(_ _)m

 AA にほんブログ村 IT技術ブログ C/C++へ

こうすけ:メール kousuke_cpp@outlook.jp

【1】★★C++ 記事目次★★ ← 利用可能です。
・新版明解C++入門編 / 新版明解C++中級編
・その他 C++ 関連記事

【2】★★こうすけ@C#★★
・C# の初歩的な記事


検索
<< 2018年08月 >>
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
プロフィール
こうすけさんの画像
こうすけ

 たまに、クリック お願いします m(_ _)m

 AA にほんブログ村 IT技術ブログ C/C++へ

こうすけ:メール kousuke_cpp@outlook.jp

【1】★★C++ 記事目次★★ ← 利用可能です。
・新版明解C++入門編 / 新版明解C++中級編
・その他 C++ 関連記事

【2】★★こうすけ@C#★★
・C# の初歩的な記事


×

この広告は30日以上新しい記事の更新がないブログに表示されております。