前提・実現したいこと
20人が10点満点のテストを受けて、キーボードから20人分の点数を打ち込み、
そのヒストグラムを表示するプログラム
という問題のヒストグラムの部分がわかりません。
手順として、
1.20人分の点数を入力する部分1重ループを作成
2.入力した点数が010以外の場合の処理を追加10を表示
3.各点の人数を数える処理を追加し、数えた人数を画面に表示
4.1重ループで0
5.2重ループ化し、*で表示
と書かれています。
また、-(マイナス)の場合は0に、10を超えた場合は10にカウントするようにしたいです。
結果
1人目の点数:?
:
:
:
19人目の点数:-2
負なので0点に置き換えます
20人目の点数:12
10を超えているので10に置き換えます
0:**
1:
2:*
:
:
:
9:***
10:*
のような結果が出るようにしたいです。
発生している問題・エラーメッセージ
3、4、5がわかりません。
該当のソースコード
C言語
1#include<stdio.h> 2 3int main() { 4 int a[20]; 5 int i; 6 7 for(i=0; i<20; i++){ 8 printf("%d個目の実数:",i+1); 9 scanf("%d",&a[i]); 10 11 if(a[i]>10){ 12 printf("10を超えているので10に置き換えます\n"); 13 }else if(a[i]<0){ 14 printf("負なので0点に置き換えます\n"); 15 } 16 }
試したこと
ググったり、知恵袋で調べ試行錯誤した。
補足情報(FW/ツールのバージョンなど)
cpadというものでコードを書いています。
> と書かれています。
学校の課題などでしょうか?であれば、まずは担当の先生などに聞いてください。
> ググったり、知恵袋で調べ試行錯誤した。
具体的にどう調べて何を試行錯誤したか書いてください。
少なくともコンパイル可能なコードであることを確認してみてください。
もしコンパイルできないことが問題であれば、コンパイルエラーについて質問しましょう。
はい、学校の課題です。
オンライン授業なので気軽に質問することもできず、友達に聞いてもわからないといわれてしまい質問しました。
今の私には、調べたことが多すぎてうまくまとめえるほどの知識がないですので諦めます。
次質問できるころまでには、もっと知識をつけて具体的に状況を説明できるように頑張ります。
ありがとうございました。
> オンライン授業なので気軽に質問することもできず
別に対面でなくても担当教員の連絡先に「この問題がわかりません」とメールでもなんでもすれば良いと思います。あるいは授業中にでも「質問したいときはどうすればよいですか?」と素直に聞きましょう。
授業として教える側にも責任はあると思うので、「質問できない」という先入観は捨ててコニュニケーションをしてみてください。
アドバイスありがとうございます。
先生に質問してみることにします。
回答2件
あなたの回答
tips
プレビュー