制御構造の入れ子

$H$ 行 $W$ 列の # を出力するためには次のように実装しました。

for (int i = 0; i < h; i++) {
  for (int j = 0; j < w; j++) {
    std::cout << '#';
  }
  std::cout << std::endl;
}
std::cout << std::endl;

この問題では、出力する文字の一部を # に、一部を . にする必要があります。

for 文のはそのままに、以下のようにしてi行目j列目に出力する文字をif文を用いて決定することを考えてみましょう。

for (int i = 0; i < h; i++) {
  for (int j = 0; j < w; j++) {

    if ( # を出力する条件 ) {
      // # を出力
    } else {
      // . を出力
    }

  }
  std::cout << std::endl;
}
std::cout << std::endl;

Reference

 

オンラインジャッジではじめるC/C++プログラミング入門 (マイナビ)

AIZU ONLINE JUDGE のコース問題を題材にした解説書です。各トピックごとに C/C++ 言語の基礎的な内容を学習し、Introduction to Programming の演習問題にチャレンジしていきます。内容は敷居の高いものではなく、プログラミング初学者が取り組む例題からスタートしています。