На игральном кубике выпадает произвольное случайное число. Среди трехзначных чисел должны выбрать те, которые имеют цифру, которая выпала на кубике. Разработай программу и класс «Game» для проверки, содержит ли трехзначную цифру, которая выпала на кубике ?
Информатика
Прошу! Помогите! Плиииз
+ комментарии к членам класса
11 класс
Тема: «Основи ООП, мова C#»
Answers & Comments
Ответ:
#include <iostream>
#include <string>
#include <vector>
using namespace std;
class game {
private: int number;/*число которое выпало*/
public: string trynitynumber;/*Трехзначное число*/
public: bool consist = false;/*Значение содержит ли подстроку в искомом номере*/
private: bool isConsist(string sub){/*Ишем подстроку в строке*/
int pos = trynitynumber.find(sub);
if (pos != std::string::npos) {
consist = true;
return consist;
}
else return false;
}
private: int getRandomNumber(int min, int max)
{
srand(static_cast<unsigned int>(time(0))); // устанавливаем значение системных часов в качестве стартового числа для инициализаци ПГСЧ
static const double fraction = 1.0 / (static_cast<double>(RAND_MAX) + 1.0);
// Равномерно распределяем рандомное число в нашем диапазоне
return static_cast<int>(rand() * fraction * (max - min + 1) + min);
}
public: void makeMove() {/*Бросаем кости*/
number = getRandomNumber(1,6);
isConsist(to_string(number));
}
};
int main()
{
int a;
cin >> a;
game gameobject;
gameobject.trynitynumber = to_string(a);
gameobject.makeMove();
if (gameobject.consist) { cout << "Yes"; }
else { cout << "No"; }
}
Объяснение: