2017年09月20日
《その36》 関数(p.205演習6-1,演習6-2,演習6-3 )
新版明解C++入門編 p.205 演習6-1
受け取ったint型引数の値nが負であれば-1を返却し、0であれば0を返却し、正であれば1を返却する関数 sign_ofを作成せよ。
以下の /* ・・・ */ の部分を作成すること。※作成するのは、関数本体の部分です。
int sign_of(int n) { /* ・・・ */ }
ただし、関数だけを作っても、正しく動作するかどうかの検証ができません。
そのため、関数をテストするmain関数なども作る必要があります。
これ以降の演習問題も同様です。
// p205_演習6-1
#include <iostream>
using namespace std;
int sign_of(int n)
{
if (n < 0)
n = -1;
if (n > 0)
n = 1;
return n;
}
int main()
{
int n;
do {
cout << "整数入力(999で終了) : "; cin >> n;
cout << "判定 … " << sign_of(n) << '\n';
} while (n != 999);
}
新版明解C++入門編 p.205 演習6-2
三つのint型引数 a, b, c の最小値を求める関数 min を作成せよ。
int min(int a, int b, int c) { /* ・・・ */ }
// p205_演習6-2
#include <iostream>
using namespace std;
int min(int a, int b, int c)
{
int min = a;
if (min > b)
min = b;
if (min > c)
min = c;
return min;
}
int main()
{
int a, b, c;
cout << "3整数入力 : "; cin >> a >> b >> c;
cout << "最小値 … " << min(a, b, c) << '\n';
}
新版明解C++入門編 p.205 演習6-3
三つのint型引数 a, b, c の中央値を求める関数 med を作成せよ。
int med(int a, int b, int c) { /* ・・・ */ }※中央値の例を、以下に示す。
変数 a, b, c が 1 , 3, 2 であれば中央値は 2で、1, 2, 1 であれば 1で、
1, 1, 1 であれば 1。
// p205_演習6-3
#include <iostream>
using namespace std;
int med(int a, int b, int c)
{
int med = a;
if ((a - b) * (b - c) >= 0) med = b;
if ((b - c) * (c - a) >= 0) med = c;
return med;
}
int main()
{
int a, b, c;
do {
cout << "3整数入力(0 0 0 の入力で終了) : "; cin >> a >> b >> c;
cout << "中央値 … " << med(a, b, c) << '\n';
} while (a != 0 || b != 0 || c != 0);
}
--
この記事へのコメント
コメントを書く
この記事へのトラックバックURL
https://fanblogs.jp/tb/6720610
※ブログオーナーが承認したトラックバックのみ表示されます。
この記事へのトラックバック