落書きノート

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

C++ 問題を解く

暇潰しにやっていた問題集ですが、他のプログラミング言語にも使えそうなので、やってみます。

#include <iostream>
#include <ctime>
#include <cstdlib>

using namespace std;

int main(void){
  int a[6];
  int t[6];
  int i = 0;
  bool flag = false;

  srand(time(NULL));

  memset(a, 0, sizeof(a));
  memset(t, 0, sizeof(t));

  do{
    flag = false;
    t[i] = 1 + rand() % 10;

    for(int j = 0; j < i; j++){
      if(t[i] == a[j]){
        flag = true;
      }
    }

    if(flag){
      continue;
    }

    a[i] = t[i];
    i++;
  }while(i < 6);

  for(int i = 0; i < 6; i++)
    cout << "a[" << i << "] = " << a[i] << endl;

  return 0;
}

#include <iostream>
#include <ctime>
#include <cstdlib>
#include <iomanip>

using namespace std;

int main(void){
  int a[15];

  srand(time(NULL));

  memset(a, 0, sizeof(a));

  for(int i = 0; i < 15; i++){
    a[i] = rand() % 11;
    cout << "a[" << setw(2) << i << "] : ";
    for(int j = 0; j < a[i]; j++){
      cout << "*";
    }
    cout << endl;
  }

  return 0;
}

#include <iostream>
#include <ctime>
#include <cstdlib>

using namespace std;

int main(void){
  const int n = 15;
  int a[n];

  srand(time(NULL));

  memset(a, 0, sizeof(a));

  for(int i = 0; i < n; i++)
    a[i] = rand() % 11;

  for(int i = 10; i >= 1; i--){
    for(int j = 0; j < n; j++){
      cout << (a[j] >= i ? "* " : "  ");
    }
    cout << endl;
  }

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

  for(int i = 0; i < n; i++)
    cout << i % 10 << ' ';
  cout << endl;

  return 0;
}