このプログラムは, 配列を使わなくても作成できる. しかし, 今回は配列を使う練習として, まず10個のデータをすべて配列に入力してから 総和の計算を行うようにプログラムを作成する. (例によって, 入力データはただちにプリントしておく. 以後の問題も同様.)
入力例:
対応する出力: (合計は1023)1 2 4 8 16 32 64 128 256 512
1 2 4 8 16 32 64 128 256 512 1023
入力例:
対応する出力: (前半は入力データのそのまま出力で, 後半が逆順の出力)1 1 2 3 5 8 13 21 34 55
1 1 2 3 5 8 13 21 34 55 55 34 21 13 8 5 3 2 1 1
考え方: データを10個全部配列に読み込む. しかるのち, 0 の出現回数, 1の出現回数…9の出現回数を順次求めていって, 最大回数の整数を見つけ出せばよかろう.別解: 整数値 i が何回出現したかをカウントする. 一種類のものをカウントするのだったらカウント用変数はひとつで足りるが, ここでは10種類(0から9までの整数)をそれぞれカウントしなければいけないから, カウント用に10個の要素をもつ配列 count[] を用意して, count[i] で整数値 i の出現回数をかぞえればよい.
入力例:
2と8がそれぞれ3回ずつ出現して同率トップなので, 問題文のルールによって出力は小さい方の 2 となる:4 8 1 5 2 2 8 2 0 8
4 8 1 5 2 2 8 2 0 8 2