【C++】実験二プログラム制御
15368 ワード
文書ディレクトリ実践問題1 実践問題2 実践問題3 実践問題4 実践問題5 実践問題1
【問題の説明】
ループ構造を利用して,作成プログラムは次のような「図形」を表示する.
1
131
13531
1357531
135797531
【入力形式】印刷図形の行数
【出力形式】プリントパターン
【サンプル入力】3
【サンプル出力】
1
131
13531
【例の説明】各行には、中央のスペースを必要としないトップ・グリッドが出力されます.
実践問題2
【問題の説明】
ある店は4種類の商品を販売しています:A商品は1キロ当たり2.75元です.B商品は12.5元です.C商品は1メートル当たり26.8元です.D商品は1台512元で、3台を超えると10%割引され、8台を超えると15%割引されます.価格を計算するプログラムを設計し、4つの商品を購入する数量を入力することで、各商品の対応金額と総額を計算し、表示します.
【入力形式】
各商品の数量を入力します.
【出力形式】
各商品の買掛金額と総額を出力します.
【サンプル入力】
1 2 3 2
【サンプル出力】
A:2.75
B:25
C:80.4
D:1024
total:1132.15
【例の説明】出力データは1行を占める.
実践問題3
【問題の説明】
n以内に残り1を3で除かれ、個数が6のすべての整数(例えば16、46、…、286など)を求めて画面に表示する.
【入力形式】
数を入力
【出力形式】
すべての結果を出力、スペースで区切る
【サンプル入力】
300
【サンプル出力】
16 46 76 106 136 166 196 226 256 286
【サンプル説明】余分な文字は使用しないでください.
実践問題4
【問題の説明】
プログラムを作成して参加選手の得点を統計し、得点基準は1つの最高点と1つの最低点を除いた後、残りの得点に対して平均値を求める.まず、キーボードから評価者の個数numを入力し、numの点数(点数が10以下の正実数)を入力して最終スコアを出力する必要があります.
【入力形式】
評価者の数と各スコアを入力します.
【出力形式】
得点を出力する.
【サンプル入力】
5 9.2 9.6 9.5 9.7 9.7
【サンプル出力】
9.6
【サンプル説明】計算された最終スコアのみを出力します.
実践問題5
【問題の説明】
ユーザが入力した任意の正の整数a(a≧1)とb(b≧2)について,bn≦aを満たす最大の整数nを求めるプログラムを設計した.
【入力形式】
2つの数.
【出力形式】
1つのデータ.
【サンプル入力】
30 5
【サンプル出力】
2
【問題の説明】
ループ構造を利用して,作成プログラムは次のような「図形」を表示する.
1
131
13531
1357531
135797531
【入力形式】印刷図形の行数
【出力形式】プリントパターン
【サンプル入力】3
【サンプル出力】
1
131
13531
【例の説明】各行には、中央のスペースを必要としないトップ・グリッドが出力されます.
#include
using namespace std;
int main()
{
int n;
cin >> n;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=i;j++) cout << j*2-1;
for(int j=i-1;j>=1;j--) cout << j*2-1;
cout << endl;
}
return 0;
}
実践問題2
【問題の説明】
ある店は4種類の商品を販売しています:A商品は1キロ当たり2.75元です.B商品は12.5元です.C商品は1メートル当たり26.8元です.D商品は1台512元で、3台を超えると10%割引され、8台を超えると15%割引されます.価格を計算するプログラムを設計し、4つの商品を購入する数量を入力することで、各商品の対応金額と総額を計算し、表示します.
【入力形式】
各商品の数量を入力します.
【出力形式】
各商品の買掛金額と総額を出力します.
【サンプル入力】
1 2 3 2
【サンプル出力】
A:2.75
B:25
C:80.4
D:1024
total:1132.15
【例の説明】出力データは1行を占める.
#include
#include
using namespace std;
int main()
{
int a,b,c,d;
double a_sum,b_sum,c_sum,d_sum;
cin >> a >> b >> c >> d;
cout << "A:" << (a_sum=a*2.75) << endl;
cout << "B:" << (b_sum=b*12.5)<< endl;
cout << "C:" << (c_sum=c*26.8)<< endl;
if(d>=0&&d<=3) d_sum=d*512;
else if(d>3&&d<=8) d_sum=d*512*0.9;
else d_sum=d*512*0.85;
cout << "D:" << d_sum << endl;
cout << "total:" << (a_sum+b_sum+c_sum+d_sum);
return 0;
}
実践問題3
【問題の説明】
n以内に残り1を3で除かれ、個数が6のすべての整数(例えば16、46、…、286など)を求めて画面に表示する.
【入力形式】
数を入力
【出力形式】
すべての結果を出力、スペースで区切る
【サンプル入力】
300
【サンプル出力】
16 46 76 106 136 166 196 226 256 286
【サンプル説明】余分な文字は使用しないでください.
#include
using namespace std;
int main()
{
int n;
cin >> n;
for(int i=1;i<=n;i++) if(i%3==1&&i%10==6) cout << i << " ";
return 0;
}
実践問題4
【問題の説明】
プログラムを作成して参加選手の得点を統計し、得点基準は1つの最高点と1つの最低点を除いた後、残りの得点に対して平均値を求める.まず、キーボードから評価者の個数numを入力し、numの点数(点数が10以下の正実数)を入力して最終スコアを出力する必要があります.
【入力形式】
評価者の数と各スコアを入力します.
【出力形式】
得点を出力する.
【サンプル入力】
5 9.2 9.6 9.5 9.7 9.7
【サンプル出力】
9.6
【サンプル説明】計算された最終スコアのみを出力します.
#include
using namespace std;
int main()
{
int n;
double min=10,max=0,sum=0,num;
cin >> n;
for(int i=1;i<=n;i++)
{
cin >> num;
if(min>num) min=num;
if(max<num) max=num;
sum+=num;
}
cout << (sum-min-max)/(n-2);
return 0;
}
実践問題5
【問題の説明】
ユーザが入力した任意の正の整数a(a≧1)とb(b≧2)について,bn≦aを満たす最大の整数nを求めるプログラムを設計した.
【入力形式】
2つの数.
【出力形式】
1つのデータ.
【サンプル入力】
30 5
【サンプル出力】
2
#include
#include
using namespace std;
int main()
{
int a,b,ans;
cin >> a >> b;
ans = log(a)/log(b);
cout << ans;
return 0;
}