Я создаю программу, которая выводит идентификатор и случайные угадывания ответов.Вы можете догадаться, A, B, C, D, и идентификатор состоит из случайных символов в первых 2 букв и цифры в следующих 3.
Ошибка в том, что программа дает мне такой идентификатор, какthis: YN420BBBBCBACDBBCDB
В нем четко виден идентификатор.Но он помещает случайный ответ вместе с ним в одну переменную.Вот мой код:
#include <iostream>
#include <stdio.h>
#include <ctime>
#include <cstdlib>
#include <string>
#include <fstream>
using namespace std;
char id[6];
char answers[16];
int main()
{
srand(time(NULL));
int random =rand() % 500+1;
const char* const a_to_d = "ABCD" ;
const char* const a_to_z = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" ;
const char* const zero_to_seven = "01234567";
for (int i = 0; i < random; ++i){
int ri = rand() % 26;
id[0] = a_to_z[ri];
int ri1 = rand() % 26;
id[1] = a_to_z[ri1];
int ri2 = rand() % 7;
id[2] = zero_to_seven[ri2];
int ri3 = rand() % 7;
id[3] = zero_to_seven[ri3];
int ri4 = rand() % 7;
id[4] = zero_to_seven[ri4];
id[6] = 0;
cout<<id<<" "<<answers<<endl<<endl;
int fi = rand() % 4;
answers[0] = a_to_d[fi];
int fi1 = rand() % 4;
answers[1] = a_to_d[fi1];
int fi2 = rand() % 4;
answers[2] = a_to_d[fi2];
int fi3 = rand() % 4;
answers[3] = a_to_d[fi3];
int fi4 = rand() % 4;
answers[4] = a_to_d[fi4];
int fi5 = rand() % 4;
answers[5] = a_to_d[fi5];
int fi6 = rand() % 4;
answers[6] = a_to_d[fi6];
int fi7 = rand() % 4;
answers[7] = a_to_d[fi7];
int fi8 = rand() % 4;
answers[8] = a_to_d[fi8];
int fi9 = rand() % 4;
answers[9] = a_to_d[fi9];
int fi10 = rand() % 4;
answers[10] = a_to_d[fi10];
int fi11 = rand() % 4;
answers[11] = a_to_d[fi11];
int fi12 = rand() % 4;
answers[12] = a_to_d[fi12];
int fi13 = rand() % 4;
answers[13] = a_to_d[fi13];
int fi14 = rand() % 4;
answers[14] = a_to_d[fi14];
answers[16] = 0;
}
return 0;
}