読者です 読者をやめる 読者になる 読者になる

個人的自由ノート

ふと自分が気になった事を書いてます

慣習 C++で問題を解く

今回はちょっと苦戦しました。懐かしい感じの問題が出てきて少々考えこみました。それでもそれよりかは優しいわけですが、頭が衰えてるなぁ…。

#include <iostream>

using namespace std;

int main(void){

  for(int i = 1; i < 10; i++){
    for(int j = 1; j < 10; j++){
      int m = i * j;
      cout << (m < 10 ? "  " : " ") << m;
    }
    cout << endl;
  }

  return 0;
}

#include <iostream>

using namespace std;

int main(void){
  int n;

  cout << "正方形を表示します。段数はいくらか入力してください。" << endl;
  cin >> n;

  for(int i = 0; i < n; i++){
    for(int j = 0; j < n; j++){
      cout << "*";
    }
    cout << endl;
  }

  return 0;
}

#include <iostream>

using namespace std;

int main(void){
  int n;

  cout << "段数を入力してください。" << endl;
  cin >> n;

  for(int i = 0; i < n; i++){
    for(int j = 0; j <= i; j++){
      cout << "*";
    }
    cout << endl;
  }
  
  return 0;
}

#include <iostream>

using namespace std;

int main(void){
  int n;

  cout << "段数を入力してください。" << endl;
  cin >> n;

  for(int i = 0; i < n; i++){
    for(int j = 0; j < n - i; j++){
      cout << "*";
    }
    cout << endl;
  }

  return 0;
}

#include <iostream>

using namespace std;

int main(void){
  int n;

  cout << "段数を入力してください。" << endl;
  cin >> n;

  for(int i = 1; i <= n; i++){
    for(int j = 1; j <= n - i; j++){
      cout << " ";
    }
    for(int k = 1; k <= i; k++){
      cout << "*";
    }
    cout << endl;
  }

  return 0;
}

#include <iostream>

using namespace std;

int main(void){
  int n;

  cout << "段数を入力してください。" << endl;
  cin >> n;

  for(int i = n; i > 0; i--){
    for(int j = i; j < n; j++){
      cout << " ";
    }
    for(int k = 1; k <= i; k++){
      cout << "*";
    }
    cout << endl;
  }

  return 0;
}

二重for文が多いですね。よく使うアルゴリズムだし、解いておいても損ではないと思います。頭の運動にもなるし。