c言語の勉強を高校でしていて以下のような問題が出され、どうすればいいのか考えてみたのですが解くことができません。申し訳ありませんがどなたか分かりやすい形で答えてくださいますようお願いします。
問題:点数分布を20点刻みでグラフ表示してください。点数を入力し、終了する時は負の数を入力してください。
*人数に制限は無く(恐らく繰り返しの作業?)、その各個人の点数を入力。「printf」「scanf」「for」を使って20点刻みの点数分布を作成。以下の様な形にしたい↓
80- : **
60-80 : *** ←この * はその範囲に含まれる人数を表す。
40-60 : *
20-40 : ***
-20 : **
そして補足してお願いしたい事が、以下の問題を上記の答えにそって答えてください。
①この問題における基礎的考察
②設計したデータ構造の説明
③アルゴリズムの説明
④ソースコードの説明
C言語:点数分布を20点刻みでグラフ表示
Re: C言語:点数分布を20点刻みでグラフ表示
暇つぶしにやってみました。
多分仕様通りかと・・・。
多分仕様通りかと・・・。
#include <stdio.h>
int main(){
// 初期化
int ten = 0, count_A = 0, count_B = 0, count_C = 0, count_D = 0, count_E = 0;
printf("■ 点数を入力してください\n");
for(int i = 0;;i++){
printf("%d人目:", i+1);
scanf("%d", &ten);
// 負の値で終了
if(ten < 0){
break;
}
if(ten > 79){
count_A++;
}else if(ten > 59){
count_B++;
}else if(ten > 39){
count_C++;
}else if(ten > 19){
count_D++;
}else{
count_E++;
}
}
printf("\n■ 点数分布\n");
printf("80- :");
for(; count_A > 0; count_A--){ // カウントした分*表示
printf("*");
}
printf("\n60-80:");
for(; count_B > 0; count_B--){
printf("*");
}
printf("\n40-60:");
for(; count_C > 0; count_C--){
printf("*");
}
printf("\n20-40:");
for(; count_D > 0; count_D--){
printf("*");
}
printf("\n -20:");
for(; count_E > 0; count_E--){
printf("*");
}
printf("\n");
return 0;
}
大体コメント入れました。kou2 さんが書きました: そして補足してお願いしたい事が、以下の問題を上記の答えにそって答えてください。
①この問題における基礎的考察
②設計したデータ構造の説明
③アルゴリズムの説明
④ソースコードの説明
百聞は~
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 14年前
- 住所: 東海地方
- 連絡を取る:
Re: C言語:点数分布を20点刻みでグラフ表示
マルチポストというか、こちらの回答コピペして質問しておられます。
フォーラムルール違反になりますので相互リンクをお願いします。
http://dixq.net/board/board.html
「以下は点数分布を20点刻みでグラフ表示化しようとした物です。教えて頂きたいの... - Yahoo!知恵袋」
http://detail.chiebukuro.yahoo.co.jp/qa ... 1391549158
フォーラムルール違反になりますので相互リンクをお願いします。
http://dixq.net/board/board.html
「以下は点数分布を20点刻みでグラフ表示化しようとした物です。教えて頂きたいの... - Yahoo!知恵袋」
http://detail.chiebukuro.yahoo.co.jp/qa ... 1391549158
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
Re: C言語:点数分布を20点刻みでグラフ表示
知恵袋の方はマルチポストの指摘が都合が悪かったのか取り消しされていますね。
取り消し前に保存したもの
http://www.peeep.us/bc83fb8d
取り消し前に保存したもの
http://www.peeep.us/bc83fb8d
オフトピック
この後はここに戻ってくるのか、ほかの場所にマルチポストするのか・・・
Advanced Supporting Developer
無理やりこじつけ(ぉ
無理やりこじつけ(ぉ