Advertisement
Guest User

Untitled

a guest
Mar 20th, 2018
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.07 KB | None | 0 0
  1. #include <iostream>
  2. #include <locale>
  3. using namespace std;
  4.  
  5. struct Tree {
  6.     float height;
  7.     float width;
  8.     int age;
  9.     char *name;
  10. };
  11.  
  12. Tree chooseTreeDialog() {
  13.     while (true) {  // Не самый лучший способ, но ИНОГДА применимо. Тут более или менее логично.
  14.         cout << "Введите желаемое дерево:" << endl;    // Программист тоже должен иметь возможность прочитать сообщения :)
  15.         cout << "A - Дуб" << endl;                   // Не только пользователю же всё)
  16.         cout << "B - Берёза" << endl;
  17.         cout << "C - Каштан" << endl;
  18.         cout << "D - Японская Вишня" << endl;
  19.         cout << "Ваш выбор: ";
  20.  
  21.         char c;
  22.         cin >> c;
  23.         switch (c) {
  24.             case 'A': {
  25.                 return {60.5, 100.0, 230, "Дуб"};    // Пока так сойдёт, потом будет немного иначе это выглядеть чаще всего.
  26.             }
  27.  
  28.             case 'B': {
  29.                 return {30.4, 52.8, 129, "Берёза"};
  30.             }
  31.  
  32.             case 'C': {
  33.                 return {45.6, 83.8, 129, "Каштан"};
  34.             }
  35.  
  36.             case 'D': {
  37.                 return {15.0, 46.5, 156, "Японская Вишня"};
  38.             }
  39.  
  40.             default: {
  41.                 cout << "Ошибка! Введите доступные номера!" << endl;
  42.                 break;
  43.             }
  44.         }
  45.     }
  46. }
  47.  
  48. void printTreeInfo(const Tree& tree) {
  49.     cout << "Имя:" << tree.name << endl;
  50.     cout << "Высота:" << tree.height << endl;
  51.     cout << "Ширина:" << tree.width << endl;
  52.     cout << "Возраст:" << tree.age << endl;
  53. }
  54.  
  55. int main() {
  56.     setlocale(LC_ALL, "Russian");
  57.  
  58.     Tree tree = chooseTreeDialog();
  59.     printTreeInfo(tree);
  60.  
  61.     bool Next = false;
  62.     cout << "Желаете продолжить?" << endl;
  63.     cout << "1 - Да" << endl;
  64.     cout << "2 - Нет" << endl;
  65.     cin >> Next; // Ты заполняешь bool символом. Будешь всегда(почти) получать true, по идее.
  66.  
  67.     if (Next) {
  68.         main();
  69.     }
  70.  
  71.     system("pause");
  72.     return 0;
  73. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement