課題
今日の課題は, switch文を使うものはない.
(無理矢理使ってもいいけれど…)
むしろ, for文関連です.
基礎プロくんでやってみてもらいたい.
最初のは今回の教材ページの例題の応用.
あとのふたつは
ちょっと考える必要のある問題.
- 3 か 7 で割れる数の個数
整数 n を入力する (n は1以上),
1以上, n以下の整数のうち, 3 か 7 で割れる数の個数を
もとめよ.
入力例:
20
対応する出力:
8
- データの最小値
いくつかの整数データを読み込み,
そのなかで最小の値を出力するプログラムを作る.
入力は最初の行にデータの個数 n (n は1以上),
その次から一行にひとつずつ, n個のデータが与えられる.
(データはすべて0以上, 100000000未満とする.)
出力はこのn個のデータのうち, 最小のものを出力する.
ヒント: 最小値を求めるには, 前に述べた「回数を求める」と
似た方法を使う.
まず, 「暫定最小値」を憶えておく変数をひとつ用意し,
次々のデータをその変数と比較して, 新記録があったら
その変数の値を更新すればよい.
さて, あとはその「暫定最小値」の変数の初期値をどうするか, だ…
入力例:
3
2
0
9
対応する出力:
0
- ピタゴラス
整数 z を入力する (z は 1以上).
z を斜辺とし, 残りの二辺を x, y とする直角三角形で,
x, y が整数のものをすべて列挙したい.
つまり, (x*x + y*y) が z*z に等しくなる正の整数 x, y の組をすべてもとめる.
出力は一行に一組ずつ, x と y を空白一文字をはさんで出力する.
出力の順は, x の小さいほうから昇順にならべる.
(今回は, 平方根などは使わずに解く.)
入力例:
5
対応する出力:
3 4
4 3
[page 5]
prev
index
next