C言語:点数分布を20点刻みでグラフ表示

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
kou2

C言語:点数分布を20点刻みでグラフ表示

#1

投稿記事 by kou2 » 13年前

c言語の勉強を高校でしていて以下のような問題が出され、どうすればいいのか考えてみたのですが解くことができません。申し訳ありませんがどなたか分かりやすい形で答えてくださいますようお願いします。
  問題:点数分布を20点刻みでグラフ表示してください。点数を入力し、終了する時は負の数を入力してください。
     
     *人数に制限は無く(恐らく繰り返しの作業?)、その各個人の点数を入力。「printf」「scanf」「for」を使って20点刻みの点数分布を作成。以下の様な形にしたい↓
                        
                     80- : **
                      60-80 : *** ←この * はその範囲に含まれる人数を表す。
                     40-60 : *
                     20-40 : ***
                       -20 : **
      
     そして補足してお願いしたい事が、以下の問題を上記の答えにそって答えてください。
                     ①この問題における基礎的考察
                     ②設計したデータ構造の説明
                     ③アルゴリズムの説明
                     ④ソースコードの説明
        
                                              

アバター
little
記事: 44
登録日時: 13年前
連絡を取る:

Re: C言語:点数分布を20点刻みでグラフ表示

#2

投稿記事 by little » 13年前

暇つぶしにやってみました。
多分仕様通りかと・・・。

コード:

#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点刻みでグラフ表示

#3

投稿記事 by softya(ソフト屋) » 13年前

マルチポストというか、こちらの回答コピペして質問しておられます。
フォーラムルール違反になりますので相互リンクをお願いします。
http://dixq.net/board/board.html

「以下は点数分布を20点刻みでグラフ表示化しようとした物です。教えて頂きたいの... - Yahoo!知恵袋」
http://detail.chiebukuro.yahoo.co.jp/qa ... 1391549158
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

アバター
asd
記事: 319
登録日時: 14年前

Re: C言語:点数分布を20点刻みでグラフ表示

#4

投稿記事 by asd » 13年前

知恵袋の方はマルチポストの指摘が都合が悪かったのか取り消しされていますね。
取り消し前に保存したもの
http://www.peeep.us/bc83fb8d
オフトピック
この後はここに戻ってくるのか、ほかの場所にマルチポストするのか・・・
Advanced Supporting Developer
無理やりこじつけ(ぉ

閉鎖

“C言語何でも質問掲示板” へ戻る