Advertisement
Jater

Lesson_1

Jan 5th, 2018
327
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 8.11 KB | None | 0 0
  1. /*заголовочный файл стандартной библиотеки языка Си, который содержит в себе функции,
  2. занимающиеся выделением памяти, контролем процесса выполнения программы, преобразованием типов*/
  3. #include <cstdlib>
  4. /*заголовочный файл с классами, функциями и переменными для организации ввода-вывода в языке программирования C++.
  5. Он включён в стандартную библиотеку C++. Название образовано от Input/Output Stream («поток ввода-вывода»).*/
  6. #include <iostream>
  7. /*включает функцию _getch(), которая делает задержку экрана и по нажатии любой клавиши закрывает консольное окно.*/
  8. #include<conio.h>
  9. /*библиотека математических функций: sqrt(x) - корень квадратный числа x, pow(x,y)  - возведение x в степень y, и другие*/
  10. #include <math.h>
  11. /*открывает пространство имен библиотеки iostream.
  12. то есть, чтобы не писать: std::cin.. или std::ifstream...*/
  13. using namespace std;
  14. /*Специальная функция с именем main — это начальная точка выполнения для всех программ на языках C и C++
  15. Параметр argc содержит число аргументов командной строки и является целым числом.
  16. Он всегда равен, по крайней мере, 1, поскольку имя программы квалифицируется как первый аргумент.
  17. Параметр argv - это указатель на массив символьных указателей. Каждый элемент данного массива указывает на аргумент командной строки.
  18. Все аргументы командной строки - это строки. Все числа конвертируются программой во внутренний формат.
  19. int указывает, что функция возвращает целое число (void - ничего не возвращает)*/
  20. int main(int argc, char *argv[])
  21. {
  22.     /*1. Создать программу для автоматизации процесса перевода старой русской меры веса в современную.
  23.     Программа должна позволить пользователю ввести два числа (пуды и фунты) и
  24.     сообщить, каково значение в килограммах (1 пуд = 40 фунтам = 16,38 кг).*/
  25.     float pud, funt;//объявление переменных вещественного типа под хранение данных пудов, фунтов.
  26.     cout << "Vvedite pudy: ";//Оператор вывода данных. Запрашивает ввод пудов
  27.     cin >> pud;// оператор ввода данных, принемающий значение пудов
  28.     cout << "Vvedite funty: ";//Оператор вывода данных. Запрашивает ввод фунтов. \n - символ переноса строки
  29.     cin >> funt;// оператор ввода данных, принемающий значение фунтов
  30.     cout << pud << " pudov = " << pud*16.38 << " kg\n";
  31.     cout << funt << " funtov = " << funt*0.45 << " kg\n";
  32.     cout << "*******\n";
  33.    
  34.     /*2. Создать программу для перевода количества лет, введенного пользователем, в секунды*/
  35.     int age;
  36.     cout << "Vvedite gody: ";
  37.     cin >> age;
  38.     cout << "Kol-vo secund: " << age*12*30*24*60*60 << "\n"; //сразу на выводе производим умножение лет на месяцы в году, дни в месяце, часы в сутках, минуты, секунды
  39.     cout << "*******\n";
  40.    
  41.     /*3. Создать программу для перевода градусной меры угла в радианную.
  42.     Чтобы найти радианную меру какого-нибудь угла по данной градусной мере,
  43.     нужно умножить число градусов нa Pi/180, число минут на Pi/180*60 и найденные произведения сложить.*/
  44.     int grad, min;
  45.     const double Pi = 3.14159265; //const - указание на хранение постоянного значение, неизменяющегося в ходе работы программы.
  46.                                 //double - вещественный тип с двойной точностью. float занимает 4 байта, double - 8 байт )
  47.     cout << "Vvedite gradusnoe znachenie ugla: ";
  48.     cin >> grad;
  49.     cout << "Vvedite minutnoe znachenie ugla: ";
  50.     cin >> min;
  51.     cout << "rad ugla v " << grad << " gradusov i " << min << " minut = " << (grad*Pi/180) + (min*Pi/(180*60)) << "\n";
  52.     cout << "*******\n";
  53.    
  54.     /*4. Тело падает с высоты h. Какова его скорость в момент соприкосновения с землей и когда это произойдет.*/
  55.     double h, v, t; //объявляем переменные высоты (задается пользователем), скорости и времени
  56.     const double g = 9.8;
  57.     cout << "Vvedite vysotu: ";
  58.     cin >> h;
  59.     t = sqrt(2*h/g); //кладем в переменную t время падения, вычисляя его через корень функцией sqrt
  60.     v = g*t;
  61.     cout << "Skorost' tela v moment soprikosnoveniya: " << v <<";\nVremya padeniya: " << t << "\n";
  62.     cout << "*******\n";
  63.    
  64.     /*5. В равнобедренном треугольнике известно основание c и высота h. Найти площадь треугольника S и периметр Р.*/
  65.     double c,hh, S, P;
  66.     cout << "Vvedite osnovanie treugolnika: ";
  67.     cin >> c;
  68.     cout << "Vvedite vysotu: ";
  69.     cin >> hh;
  70.     S = 0.5*c*hh;
  71.     P = c + 2*sqrt(pow(c/2,2)+pow(hh,2));
  72.     cout << "Ploshad: " << S << ";\nPerimetr: " << P <<"\n";
  73.     cout << "*******\n";
  74.    
  75.     /*6. Известна диагональ ромба d. Вычислить его площадь S и периметр P.*/
  76.     double d, SS, PP, a;//объявляем переменные диагонали, площади, периметра и стороны - a
  77.     cout << "Vvedite diagonal': ";
  78.     cin >> d;
  79.     SS = pow(d,2)/2;
  80.     a = pow(SS,0.5);
  81.     PP = a*4;
  82.     coun << "Ploshad': " << SS << "Perimetr: " << PP << "\n";
  83.    
  84.     cout << "!HAPPY END!";
  85.     /*cin.get() - Функция get() же стандартного потока ввода cin заставляет систему ожидать ввода пользователем любого символа, который она считывает, и программа завершается.
  86.     Но в данном случае используется getch() из библиотеки conio.h, т.к. get находится в режиме ожидания и принемает последний нажатый enter, при вводе фунтов, за символ*/
  87.     _getch(); // функция ждёт нажатия любой клавиши
  88.     /*Макрос EXIT_SUCCESS используется для возвращения ОС кода успешного завершения программы.
  89.     Этот макрос заменяется на системно-зависимое выражение,
  90.     которые используется в качестве аргумента для функции exit.
  91.     Оно должно означать, что работа программы была завершена успешно.
  92.     Противоположное значение может быть задано макросом EXIT_FAILURE.*/
  93.     return EXIT_SUCCESS;
  94. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement