==== 練習問題ヒント(5月16追記) ==== P8 練習問題\\ その1\\ - 試験点xを入力 - xは60点以上? * YES:"合格"を表示 * NO:"不合格"を表示 {{url>https://replit.com/@youetsusato/P8-Wen-Ti-1?v=1&embed=true#main.cpp 600,700}} その2\\ - x%2 == 0 ? * YES: "偶数"を表示 * NO: "奇数"を表示 {{url>https://replit.com/@youetsusato/P8-Wen-Ti-2?v=1&embed=true#main.cpp 600,700}} その3\\ - 西暦をxとする(xを代入か初期化) - x % 100 == 0 ? * YES: - x % 400 == 0 ? * YES: "うるう年"を表示 * NO: "平年"を表示 * NO: - x % 4 == 0 ? * YES: "うるう年"を表示 * NO: "平年"を表示 {{url>https://replit.com/@youetsusato/P8-Wen-Ti-3uruuNian-Pan-Ding?v=1&embed=true#main.cpp 600,700}} P10 練習問題\\ 問題1.\\ - カウンタcntを用意 - cnt ← 0 - cnt < 3 の間以下を繰り返す - "大事なことだから何回も言います" と表示 - cnt ← cnt + 1 {{url>https://replit.com/@youetsusato/P10-Wen-Ti-1?v=1&embed=true#main.cpp 600,700}} 問題2. - sum←0 (sumを初期化) - 以下を繰り返す(無限ループ) - キーボードからaを入力 - a == 0 ? * YES: - sum を出力 - プログラム終了 * No : - sum = sum + a {{url>https://replit.com/@youetsusato/P10-Wen-Ti-2?v=1&embed=true#main.cpp 600,700}} 問題3.\\ - sum←0 (sumを初期化) - 以下を繰り返す(無限ループ) - キーボードからaを入力 - a == 0 ? * YES: - sum を出力 - プログラム終了 * No : - a > 0 ? * YES: sum = sum + a * NO: 何もしない {{url>https://replit.com/@youetsusato/P10-Wen-Ti-3?v=1&embed=true#main.cpp 600,700}} P11問題\\ 問題1.\\ - 整数xを入力 - cnt ← 1 - cnt <= 9 の間以下を繰り返す - ans ← cnt * x - x "*" cnt "=" ans(改行) を表示 - cnt ← cnt + 1 {{url>https://replit.com/@youetsusato/P11-Wen-Ti-1?v=1&embed=true#main.cpp 600,700}} 問題2.\\ - cnt ← 1 - cnt <= 10 の間以下を繰り返す - cnt % 2 == 0 ? * YES: "偶数"を表示 * NO: "奇数"を表示 {{url>https://replit.com/@youetsusato/P10-Wen-Ti-2-1?v=1&embed=true#main.cpp 600,700}} 問題3.\\ - cnt ← 0、sum ← 0 - cnt <= 50の間以下を繰り返す - cnt % 2 == 1 ? * YES: sum ← sum + cnt * NO: 何もしない - sumを表示する {{url>https://replit.com/@youetsusato/P11-Wen-Ti-3?v=1&embed=true#main.cpp 600,700}} P13問題 問題1. 横に8個(8列)、縦に6個(6行)表示しなきゃない。 それプラス、1行目は黒白黒白黒。。。。2行目は白黒白黒。。。という順番 さてどうしようか? 方針として、まず、2重ループで箱を8列6行表示してみる アルゴリズム\\ - cnt%%_%%retu ← 0, cnt%%_%%gyou ← 0 - cnt%%_%%gyou < 6の間、以下を繰り返す - cnt%%_%%retu < 8 の間、以下を繰り返す - "□"を表示 - cnt%%_%%retu ← cnt%%_%%retu + 1 - 改行文字を表示 - cnt%%_%%gyou ← cnt%%_%%gyou + 1 このアルゴリズムが動くと    □□□□□□□□ □□□□□□□□ □□□□□□□□ □□□□□□□□ □□□□□□□□ □□□□□□□□ が、表示される。 あとは白黒を何とかすればいいよね! 問題2. 12ページの問題1で指定され段の九々を表示する処理は実現できているはず。 指定された段の九々を表示する処理を 九々(段)という命令で表す。 たとえば 九々(2)を実行すると __2 __4 __6 __8 _10 _12 _14 _16 _18 を出力する。 これを使って、 1.cnt_dan ← 1 2.cnt_dan <= 9 の間、以下を繰り返す あ)九々(cnt_dan) い)改行を表示 う)cnt_dan ← cnt_dan + 1 あとは、九々のところを、12ページの問題2と同じように書く! 問題3. 基本は、問題1と同じ 7x7の繰り返しになっているだけなので繰り返しの回数をかえて、 まずは、これを表示する □□□□□□□ □□□□□□□ □□□□□□□ □□□□□□□ □□□□□□□ □□□□□□□ □□□□□□□ んで、これを表示するときに 1行目 白6黒1 2行目 白5黒2 3行目 白4黒3 4行目 白3黒4 5行目 白2黒5 6行目 白1黒6 7行目 白0黒7 で表示する。 1行目の白と黒を分ける条件式を考えてみよう。 (黒の数と、今考えている行数が一致していることを使っていくぅ) === 問題1.(チェッカーフラッグのやつ) === {{url>https://replit.com/@youetsusato/P12-Wen-Ti-1?v=1&embed=true#main.cpp 600,700}} === 問題1.もうちょいまとまったやつ(チェッカーフラッグのやつ) === {{url>https://replit.com/@youetsusato/tietukahuratuguwotukuruyo?v=1&embed=true#main.cpp 600,700}} === 問題2.(九々表のやつ) === {{url>https://replit.com/@youetsusato/Jiu-Jiu-Biao?v=1&embed=true#main.cpp 600,700}} === 問題3.(三角模様のやつ) === {{url>https://replit.com/@youetsusato/P13-Wen-Ti-3-Mo-Yang-sono2?v=1&embed=true#main.cpp 600,700}}