• Предмет: Информатика
  • Автор: Трафальгар
  • Вопрос задан 7 лет назад

Напишите на с++ через классы:
Есть отель. В нем n номеров. Если номер занят, то false, если свободен, то true. Заполненность номеров хранится в массиве. Нужно добавить функцию бронирования номера. Если номер занят, то вывести false, если свободен true. Так же нужно вывести массив занятых и свободных номеров

Ответы

Ответ дал: saintegg
0
Вот решение, как я понял, что тебе нужно, если что-то переделать - пиши
Ответ дал: saintegg
0
void createRooms (unsigned int n)
{
srand(time(0));
for (int i = 0; i < n; i++)
{

rooms.push_back( rand() % 2);
}
}

void ViewRooms ()
{
for (int i = 0; i < rooms.size(); i++)
{
std::cout << "Room - " << i << " ";
if (rooms[i]) std::cout << "truen"; else std::cout << "falsen";
}
}

void cancelBooking (int n)
{
if (!rooms[n]) rooms[n] = 1; else std::cout << "This room is free.";
}
};
Ответ дал: saintegg
0
int main ()
{
Hotel hotel;

while (1)
{
system("cls");

std::cout << "Choose an option:n1. Create rooms.n2. Booking room.n3. View rooms.n4. Cancel booking.n 5. Exit.n";
int choice;
std::cin >> choice;

system("cls");

int n;
Ответ дал: saintegg
0
switch(choice)
{
case 1:
std::cout << "Set nubmer of rooms: ";

std::cin >> n;
hotel.createRooms(n);
break;
case 2:
std::cout << "Set room's number to book: ";
std::cin >> n;
hotel.booking(n);
break;
case 3:
hotel.ViewRooms();
system("pause");
break;
case 4:
std::cout << "Set a room to cancel booking: ";
std::cin >> n;
hotel.cancelBooking(n);
break;
}

if (choice == 5) break;
}
}
Ответ дал: saintegg
0
первые инклюды - iostream, vector, ctime
Ответ дал: saintegg
0
в седьмой строке добавить bool в треуольных скобках между vector и rooms
Вас заинтересует