Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <iomanip>
- #include <math.h>
- #include <string>
- #include <fstream>
- #include <cstdio> // для функции remove
- using namespace std;
- int main() {
- setlocale(0, "");
- string inp;
- cout << "\t\t[Выберите задание]\n"; //меню
- cout << "\t\t 1.Задача «Заем»\n";
- cout << "\t\t 2.Задача «Ссуда»\n";
- cout << "\t\t 3.Задача «Копирование файла»\n";
- cout << "\t\t 4.Задача «Фильтр»\n";
- cout << "\t\t 5.Задача «Сортировка букв»\n";
- float n, S, p, m, k;
- while (inp != "end") {
- cout << ">";
- cin >> inp;
- if (inp != "1" && inp != "2" && inp != "3" && inp != "4" && inp != "5" && inp != "menu" && inp != "end" && inp != "delete") {
- cout << "\nInvalid input, try again\n\n";
- }
- if (inp == "1") { //Задача «Заем»
- cout << "\nСколько заняли рублей? ";
- cin >> S;
- while (S <= 0) {
- cout << "Некорректное значение, попробуйте ещё раз ";
- cin >> S;
- }
- cout << "На сколько лет? ";
- cin >> n;
- while (n <= 0) {
- cout << "Некорректное значение, попробуйте ещё раз ";
- cin >> n;
- }
- cout << "Под какой процент? ";
- cin >> p;
- while (p <= 0) {
- cout << "Некорректное значение, попробуйте ещё раз ";
- cin >> p;
- }
- m = (S*(p / 100)*(pow((1 + (p / 100)), n))) / (12 * ((pow((1 + (p / 100)), n)) - 1));
- if (m >= 1000000) {
- cout << "Месячная выплата состовляет: " << int(m) + 1 << " рублей.\n\n";
- }
- else {
- cout << "Месячная выплата состовляет: " << m << " рублей.\n\n";
- }
- }
- if (inp == "2") { //Задача «Ссуда»
- cout << "\nСколько заняли рублей? ";
- cin >> S;
- while (S <= 0) {
- cout << "Некорректное значение, попробуйте ещё раз ";
- cin >> S;
- }
- cout << "На сколько лет? ";
- cin >> n;
- while (n <= 0) {
- cout << "Некорректное значение, попробуйте ещё раз ";
- cin >> n;
- }
- cout << "Какая месячная выплата? (не меньше чем ";
- float ml = S / (n * 12);
- if (ml >= 1000000) {
- cout << int(ml) + 1;
- }
- else {
- cout << ml;
- }
- cout << ") ";
- cin >> m;
- while (m < (S / (n * 12))) {
- cout << "Некорректное значение, попробуйте ещё раз ";
- cin >> m;
- }
- p = 0;
- k = 0;
- while (k < m) {
- p += 0.001;
- k = (S*(p / 100)*(pow((1 + (p / 100)), n))) / (12 * ((pow((1 + (p / 100)), n)) - 1));
- }
- cout << "Ссуда выдана под " << round(p * 100) / 100 << "% годовых.\n\n";
- }
- if (inp == "3") { //Задача «Копирование файла»
- cout << "\nСоздаёт текстовый файл с текстом 'Задание выполнено'. Копируем содержимое файла и выводим на экран.\n";
- ofstream fout("C:/Users/Saint/Desktop/testfile.txt");
- fout << "Задание выполнено";
- fout.close();
- ifstream fin("C:/Users/Saint/Desktop/testfile.txt");
- if (!fin.is_open()) // если файл не открыт
- cout << "Файл не может быть открыт!\n\n"; // сообщить об этом
- else {
- char st[20]; // объявление символьного массива (строки)
- fin.getline(st, 20); // считали строку из файла
- fin.close(); // закрываем файл
- cout << st << "\n\n"; // напечатали эту строку
- }
- }
- if (inp == "4") { //Задача «Фильтр»
- cout << "\nСоздаём файл, содержащий 'fhs 12 fjr 45 sjw 7 fk 8 gk 0', и выводим только цифры.\n";
- ofstream fout("C:/Users/Saint/Desktop/testfile.txt");
- fout << "fhs 12 fjr 45 sjw 7 fk 8 gk 0";
- fout.close();
- ifstream fin("C:/Users/Saint/Desktop/testfile.txt");
- if (!fin.is_open()) // если файл не открыт
- cout << "Файл не может быть открыт!\n\n"; // сообщить об этом
- else {
- char da = ' ';
- while (da != '0') {
- fin >> da;
- if (da == '1' || da == '2' || da == '3' || da == '4' || da == '5' || da == '6' || da == '7' || da == '8' || da == '9' || da == '0')
- cout << da;
- else
- cout << " ";
- }
- }
- cout << "\n\n";
- }
- if (inp == "5") { //Задача «Сортировка букв»
- cout << "\nЗадаём строку в 30 букв \"rxcftgvbhyujnmkiolpaqwsdergjkz\" и раставляем их в алфавитном порядке\n\n";
- 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' };
- const int SIZE = 30;
- int arr2[SIZE], j, j_;
- /* for(int i = 0; i < SIZE; i++) {
- int memory = int(arr[i]);
- for (int j = 0; j < SIZE; j++) {
- if(memory >= int(arr[j])) {
- memory = int(arr[j]);
- j_ = j;
- }
- }
- arr[j_] = 124;
- arr2[i]=memory;
- cout<< char(arr2[i]) << " ";
- for(int g = 0; g < SIZE; g++) {
- cout << arr[g];
- }
- cout << "\n———————\n";
- }*/
- ///////////////////////////////////////
- for(int i = 0; i < SIZE; i++) {
- int memory = int(arr[i]);
- int memory1 = int(arr[i]);
- j = i;
- for (; j < SIZE; j++) {
- if(memory >= int(arr[j])) {
- memory = int(arr[j]);
- j_ = j;
- }
- }
- arr[j_] = memory1;
- arr[i]=memory;
- cout<< char(arr[i]) << " ";
- for(int g = 0; g < SIZE; g++) {
- cout << arr[g];
- }
- cout << "\n———————\n";
- }
- /* string text("zxcftgvbhyujnmkiolpaqwsdergjkz");
- int *mas = new int[text.length()];
- int j;
- for (int i = 0; i < text.length(); i++)
- {
- j = (int)text[i]; // узнаем числовое значение символа
- mas[i] = j; //заносишь в целочисленный масив числовое значение символа
- }
- //сортируем массив
- for (int i = text.length() - 1; i >= 1; --i)
- {
- for (int j = 0; j < i; ++j)
- {
- if (mas[j] > mas[j + 1])
- {
- int buf = mas[j];
- mas[j] = mas[j + 1];
- mas[j + 1] = buf;
- }
- }
- }
- //выводим отсортированну строку
- for (int i = 0; i < text.length(); i++)
- {
- cout << (char)mas[i];
- }
- delete[] mas;
- cout << "\n\n"; */
- }
- if (inp == "delete") {
- if (remove("C:/Users/Saint/Desktop/testfile.txt") != 0) // удаление файла testfile.txt
- cout << "\nОшибка удаления testfile.txt\n\n";
- else
- cout << "\ntestfile.txt успешно удалён\n\n";
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement