evgeniyosipov

Sosulki.cpp

Dec 27th, 2014
218
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 6.56 KB | None | 0 0
  1. #include "stdafx.h"
  2.  
  3. using std::cin;
  4. using std::cout;
  5. using std::cerr;
  6. using std::endl;
  7. using std::flush;
  8. using std::string;
  9. using std::ofstream;
  10.  
  11.  
  12. int _tmain(int argc, _TCHAR* argv[])
  13. {
  14.     setlocale(LC_ALL, "Russian");
  15.     cout << "Привет , это снова ваш вездесущий \"Собиратор-1000 \". У меня есть интересная тема для беседы... сосульки... Да, именно они.\n"
  16.          << "Вы поговорите со мной? Y(да) или N(нет): " << flush;
  17.    
  18.  
  19. //Разрешение на продолжение беседы
  20.     string agr1;
  21.     while (getline(cin, agr1))
  22. {
  23.         switch (agr1[0])
  24. {
  25. case 'n':
  26. case 'N':
  27.     cout << "\nВсего вам доброго, досвидания\n"
  28.          << "\nЕвгений Осипов (www.fastandclever.ru), 2011\n" << endl;
  29.     system("pause");
  30.     return 0;
  31. case 'y':
  32. case 'Y':
  33.     break;
  34. default:
  35. cerr << "Ошибка! Введите Y(да) или N(нет): " << flush;
  36. continue;
  37. }  
  38.  
  39. cout << "\nЯ так и знал, что вас заинтересует эта столь важная тема!\n" << endl;
  40. break;
  41. }
  42.  
  43. cout << "Нынче сосульки как-то подросли, не заметили ? Y(да) или N(нет): " << flush;
  44.  
  45. string agr2;
  46. while (getline(cin, agr2))
  47. {
  48.         switch (agr2[0])
  49. {
  50. case 'n':
  51. case 'N':
  52.     cout << "\nРекоменду присматриваться к ним! Сосульки нужно пересчитывать... всех их нужно  пересчитать... УхахАхахА =)\n" << endl;
  53.     break;
  54. case 'y':
  55. case 'Y':
  56.     cout << "\nРастут как на дрожжах, надеюсь вы их считаете... я ,например, на каждой крыше пересчитываю =)\n" << endl;
  57.     break;
  58. default:
  59. cerr << "Ошибка! Введите YES или NO: " << flush;
  60. continue;
  61. }
  62. break;
  63. }
  64.  
  65.  
  66. cout << "Хорошо, далее создадим текстовой файл и введём туда их количество.\n"
  67.      << "Каждому виду сосулек придумано своё имя: Большульки, Нормульки, Малюльки (большого, среднего и наименьшего размера соответсвенно)" << endl;
  68.  
  69.  
  70.  
  71. //Ввод кол-во сосулек
  72. cout << "\nСколько Большулек вы увидели этой зимой (можно солгать, я не обижусь)?: " << flush;
  73. unsigned bolsh;
  74.  
  75.     while (cin >> bolsh, !cin.eof()){
  76.  
  77.              if(cin.fail()){
  78.              cerr << "Ошибка! Введите целое число: " << flush;
  79.              cin.clear();
  80.              cin.get();
  81.              fflush(stdin);
  82.              continue;
  83.              }
  84.  
  85.              fflush(stdin);
  86.              break;
  87.              }
  88.  
  89. cout << "\nСколько Нормулек вы видели этой зимой (также можно солгать, я не обижусь)?: " << flush;
  90. unsigned normul;
  91.  
  92.     while (cin >> normul, !cin.eof()){
  93.  
  94.              if(cin.fail()){
  95.              cerr << "Ошибка! Введите целое число: " << flush;
  96.              cin.clear();
  97.              cin.get();
  98.              fflush(stdin);
  99.              continue;
  100.              }
  101.  
  102.              fflush(stdin);
  103.              break;
  104.              }
  105.  
  106. cout << "\nСколько Малюлек вы видели этой зимой?: " << flush;
  107. unsigned malul;
  108.  
  109.     while (cin >> malul, !cin.eof()){
  110.  
  111.              if(cin.fail()){
  112.              cerr << "Ошибка! Введите целое число: " << flush;
  113.              cin.clear();
  114.              cin.get();
  115.              fflush(stdin);
  116.              continue;
  117.              }
  118.  
  119.              fflush(stdin);
  120.              break;
  121.              }
  122.  
  123. cout << "\nПока я вычисляю общее кол-во сосулек и записываю их в файл, задам ещё вопрос. Я вам нравлюсь?: ..............\n"
  124.      << "Шутка-вопрос, я же знаю, что нравлюсь вам! Кстати, пошутить люблю, вам нравиться мой юмор? Y(да) или N(нет): "<< flush;
  125.  
  126. string agr3;
  127.     while (getline(cin, agr3))
  128.             {
  129.                     switch (agr3[0])
  130.             {
  131.             case 'n':
  132.             case 'N':
  133.                 cout << "\nЭхмхмхмммм, ну ладно, проехали. Продолжаем дальше..." << endl;
  134.                 break;
  135.             case 'y':
  136.             case 'Y':
  137.                 cout << "\nСпасибо, вы супер! Знал, что с юмором у меня всё в порядке, но всё равно  спасибо!\n"
  138.                           <<"Продолжаем дальше..."<< endl;
  139.                 break;
  140.             default:
  141.             cerr << "Ошибка! Введите Y(да) или N(нет): " << flush;
  142.             continue;
  143.             }  
  144.             break;
  145.             }
  146.  
  147. //Создаём txt файл
  148. cout << "\nВведите название файла, куда сохраните все данные: " << flush;
  149. string begtxt;
  150. string endtxt = ".txt";
  151.  
  152. SetConsoleCP (1251); // Смена кодировки для корректного вывода в txt файл
  153. getline(cin, begtxt);
  154.  
  155. string usrtxt = begtxt + endtxt;
  156.  
  157.  
  158. ofstream ftxt(usrtxt.c_str());
  159. if (!ftxt) return -1;
  160. //Выводим инфу в txt файл
  161.  
  162. ftxt << "Общее кол-во сосулек: " << bolsh + normul + malul << "\n"
  163.      << "Из них:\nБольшулек: " << bolsh << "\n"
  164.      << "Нормулек: " << normul << "\n"
  165.      << "Малюлек: " << malul << "\n\n"
  166.      << "Вот и всё =) Казалось бы ничего сложного... но это не так =) Мы очень постарались!"<< "\n"
  167.      << "НЕ удалайте этот файл пжл, вы же не хотите забыть про количество уникальных сосулек, или как ? Введите Y(да) или N(нет):.... меня занесло =)"<< "\n"
  168.      << "До скорых встреч, ваш Собиратор-1000\n"
  169.      << "\nЕвгений Осипов (www.fastandclever.ru), 2011\n" << endl;
  170.  
  171. SetConsoleCP (866); //Смена кодировки для корректного ввода и вывода в консоль
  172. cout << "\nВот и всё, просмотрите текстовой файл "<< usrtxt << " и узнайте, что же там!\n"
  173.      << "PS: Файл " << usrtxt << " располагается в той же директории, что и сама программа\n"
  174.      << "\nЕвгений Осипов (www.fastandclever.ru), 2011\n" << endl;
  175.  
  176. system ("pause");
  177. return 0;
  178. }
Advertisement
Add Comment
Please, Sign In to add comment