SHARE
TWEET

Untitled

a guest Dec 3rd, 2019 69 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <iostream>
  2. #include <iomanip>
  3. #include <math.h>
  4. #include <string>
  5. #include <fstream>
  6. #include <cstdio>    // для функции remove
  7. using namespace std;
  8.  
  9. int main() {
  10.     setlocale(0, "");
  11.     string inp;
  12.     cout << "\t\t[Выберите задание]\n"; //меню
  13.     cout << "\t\t 1.Задача «Заем»\n";
  14.     cout << "\t\t 2.Задача «Ссуда»\n";
  15.     cout << "\t\t 3.Задача «Копирование файла»\n";
  16.     cout << "\t\t 4.Задача «Фильтр»\n";
  17.     cout << "\t\t 5.Задача «Сортировка букв»\n";
  18.  
  19.     float n, S, p, m, k;
  20.  
  21.     while (inp != "end") {
  22.         cout << ">";
  23.         cin >> inp;
  24.         if (inp != "1" && inp != "2" && inp != "3" && inp != "4" && inp != "5" && inp != "menu" && inp != "end" &&  inp != "delete") {
  25.             cout << "\nInvalid input, try again\n\n";
  26.         }
  27.         if (inp == "1") {       //Задача «Заем»
  28.             cout << "\nСколько заняли рублей? ";
  29.             cin >> S;
  30.             while (S <= 0) {
  31.                 cout << "Некорректное значение, попробуйте ещё раз ";
  32.                 cin >> S;
  33.             }
  34.             cout << "На сколько лет? ";
  35.             cin >> n;
  36.             while (n <= 0) {
  37.                 cout << "Некорректное значение, попробуйте ещё раз ";
  38.                 cin >> n;
  39.             }
  40.             cout << "Под какой процент? ";
  41.             cin >> p;
  42.             while (p <= 0) {
  43.                 cout << "Некорректное значение, попробуйте ещё раз ";
  44.                 cin >> p;
  45.             }
  46.             m = (S*(p / 100)*(pow((1 + (p / 100)), n))) / (12 * ((pow((1 + (p / 100)), n)) - 1));
  47.             if (m >= 1000000) {
  48.                 cout << "Месячная выплата состовляет: " << int(m) + 1 << " рублей.\n\n";
  49.             }
  50.             else {
  51.                 cout << "Месячная выплата состовляет: " << m << " рублей.\n\n";
  52.             }
  53.         }
  54.         if (inp == "2") {       //Задача «Ссуда»
  55.             cout << "\nСколько заняли рублей? ";
  56.             cin >> S;
  57.             while (S <= 0) {
  58.                 cout << "Некорректное значение, попробуйте ещё раз ";
  59.                 cin >> S;
  60.             }
  61.             cout << "На сколько лет? ";
  62.             cin >> n;
  63.             while (n <= 0) {
  64.                 cout << "Некорректное значение, попробуйте ещё раз ";
  65.                 cin >> n;
  66.             }
  67.             cout << "Какая месячная выплата? (не меньше чем ";
  68.             float ml = S / (n * 12);
  69.             if (ml >= 1000000) {
  70.                 cout << int(ml) + 1;
  71.             }
  72.             else {
  73.                 cout << ml;
  74.             }
  75.             cout << ") ";
  76.             cin >> m;
  77.             while (m < (S / (n * 12))) {
  78.                 cout << "Некорректное значение, попробуйте ещё раз ";
  79.                 cin >> m;
  80.             }
  81.             p = 0;
  82.             k = 0;
  83.             while (k < m) {
  84.                 p += 0.001;
  85.                 k = (S*(p / 100)*(pow((1 + (p / 100)), n))) / (12 * ((pow((1 + (p / 100)), n)) - 1));
  86.             }
  87.             cout << "Ссуда выдана под " << round(p * 100) / 100 << "% годовых.\n\n";
  88.         }
  89.         if (inp == "3") {       //Задача «Копирование файла»
  90.             cout << "\nСоздаёт текстовый файл с текстом 'Задание выполнено'. Копируем содержимое файла и выводим на экран.\n";
  91.             ofstream fout("C:/Users/Saint/Desktop/testfile.txt");
  92.             fout << "Задание выполнено";
  93.             fout.close();
  94.             ifstream fin("C:/Users/Saint/Desktop/testfile.txt");
  95.             if (!fin.is_open()) // если файл не открыт
  96.                 cout << "Файл не может быть открыт!\n\n"; // сообщить об этом
  97.             else {
  98.                 char st[20]; // объявление символьного массива (строки)
  99.                 fin.getline(st, 20); // считали строку из файла
  100.                 fin.close(); // закрываем файл
  101.                 cout << st << "\n\n"; // напечатали эту строку
  102.             }
  103.         }
  104.         if (inp == "4") {       //Задача «Фильтр»
  105.             cout << "\nСоздаём файл, содержащий 'fhs 12 fjr 45 sjw 7 fk 8 gk 0', и выводим только цифры.\n";
  106.             ofstream fout("C:/Users/Saint/Desktop/testfile.txt");
  107.             fout << "fhs 12 fjr 45 sjw 7 fk 8 gk 0";
  108.             fout.close();
  109.             ifstream fin("C:/Users/Saint/Desktop/testfile.txt");
  110.             if (!fin.is_open()) // если файл не открыт
  111.                 cout << "Файл не может быть открыт!\n\n"; // сообщить об этом
  112.             else {
  113.                 char da = ' ';
  114.                 while (da != '0') {
  115.                     fin >> da;
  116.                     if (da == '1' || da == '2' || da == '3' || da == '4' || da == '5' || da == '6' || da == '7' || da == '8' || da == '9' || da == '0')
  117.                         cout << da;
  118.                     else
  119.                         cout << " ";
  120.                 }
  121.             }
  122.             cout << "\n\n";
  123.         }
  124.         if (inp == "5") {       //Задача «Сортировка букв»
  125.             cout << "\nЗадаём строку в 30 букв \"rxcftgvbhyujnmkiolpaqwsdergjkz\" и раставляем их в алфавитном порядке\n\n";
  126.             char arr[] = { 'r', 'x', 'c', 'f', 't', 'g', 'v', 'b', 'h', 'y', 'u', 'j', 'n', 'm', 'k', 'i', 'o', 'l', 'p', 'a', 'q', 'w', 's', 'd', 'e', 'r', 'g', 'j', 'k', 'z' };
  127.            
  128.             const int SIZE = 30;
  129.             int arr2[SIZE], j, j_;
  130.            
  131.         /*  for(int i = 0; i < SIZE; i++) {
  132.                 int memory = int(arr[i]);
  133.                 for (int j = 0; j < SIZE; j++) {
  134.                     if(memory >= int(arr[j])) {
  135.                         memory = int(arr[j]);
  136.                         j_ = j;
  137.                     }
  138.                 }
  139.                 arr[j_] = 124;
  140.                 arr2[i]=memory;
  141.                 cout<< char(arr2[i]) << "  ";
  142.                 for(int g = 0; g < SIZE; g++) {
  143.                     cout << arr[g];
  144.                 }
  145.                 cout << "\n———————\n";
  146.             }*/
  147.            
  148.            
  149.     ///////////////////////////////////////
  150.            
  151.            
  152.             for(int i = 0; i < SIZE; i++) {
  153.                 int memory = int(arr[i]);
  154.                 int memory1 = int(arr[i]);
  155.                 j = i;
  156.                 for (; j < SIZE; j++) {
  157.                     if(memory >= int(arr[j])) {
  158.                         memory = int(arr[j]);
  159.                         j_ = j;
  160.                     }
  161.                 }
  162.                 arr[j_] = memory1;
  163.                 arr[i]=memory;
  164.                 cout<< char(arr[i]) << "  ";
  165.                 for(int g = 0; g < SIZE; g++) {
  166.                     cout << arr[g];
  167.                 }
  168.                 cout << "\n———————\n";
  169.             }
  170.            
  171.            
  172.         /*  string text("zxcftgvbhyujnmkiolpaqwsdergjkz");
  173.             int *mas = new int[text.length()];
  174.             int j;
  175.             for (int i = 0; i < text.length(); i++)
  176.             {
  177.                 j = (int)text[i]; // узнаем числовое значение символа
  178.                 mas[i] = j; //заносишь в целочисленный масив  числовое значение символа
  179.             }
  180.             //сортируем массив                              
  181.             for (int i = text.length() - 1; i >= 1; --i)
  182.             {
  183.                 for (int j = 0; j < i; ++j)
  184.                 {
  185.                     if (mas[j] > mas[j + 1])
  186.                     {
  187.                         int buf = mas[j];
  188.                         mas[j] = mas[j + 1];
  189.                         mas[j + 1] = buf;
  190.                     }
  191.                 }
  192.             }
  193.             //выводим отсортированну строку
  194.             for (int i = 0; i < text.length(); i++)
  195.             {
  196.                 cout << (char)mas[i];
  197.             }
  198.             delete[] mas;
  199.             cout << "\n\n"; */
  200.         }
  201.         if (inp == "delete") {
  202.             if (remove("C:/Users/Saint/Desktop/testfile.txt") != 0)  // удаление файла testfile.txt
  203.                 cout << "\nОшибка удаления testfile.txt\n\n";
  204.             else
  205.                 cout << "\ntestfile.txt успешно удалён\n\n";
  206.         }
  207.     }
  208.     return 0;
  209. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top