2重ループ

for文を入れ子にし、2重ループにすることで長方形状に # を出力することができます。

例として、4行8列の # を出力することを考えてみましょう。

次のコードを実行することによって、1行に8個の # を出力することができます。

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

この処理を4回繰り返すことで、4行8列の # を出力することが可能です。

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

出力結果:

########
########
########
########

C++による模範解答

#include <iostream>

int main() {
  while (true) {
    int h, w;
    std::cin >> h >> w;

    if (h == 0 and w == 0) {
      break;
    }

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

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

Reference

 

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

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