Advertisement
JewishCat

lab1

Apr 11th, 2018
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.38 KB | None | 0 0
  1. // lab1.cpp: определяет точку входа для консольного приложения.
  2. //
  3.  
  4.  
  5.  
  6. #include "stdafx.h"
  7. #define _USE_MATH_DEFINES
  8. #include <iostream>
  9. #include <string>
  10. #include <cmath> // библиотека, необходимая для получения M_PI;
  11.  
  12. //Вариант 16
  13. //Написать программу вычисления площади поверхности цилиндра.
  14. //
  15. //Формула:  s = 2 * M_PI*r*r + 2 * M_PI*r*h, где r - радиус основания цилиндра,
  16. //  h - высота цилиндра,
  17. //  s - площадь поверхности цилиндра.
  18. //
  19. //  Рекомендуемый вид экрана во время выполнения программы :
  20. //
  21. //Вычисление площади поверхности цилиндра.
  22. //Введите исходные данные :
  23. //Радиус основания(см) -> 5.5
  24. //Высота цилиндра(см) -> 7
  25. //
  26. //Площадь поверхности цилиндра : 431.97 кв.см.
  27.  
  28. using namespace std;
  29.  
  30. double vvod_chisla() {
  31.     double number;
  32.     while (true)
  33.     {
  34.         cout << "Введите число " << endl;
  35.         cin >> number;
  36.         if (cin.good())
  37.         {
  38.             cin.ignore(10, '\n');
  39.             break;
  40.         }
  41.         cin.clear();
  42.         cout << "Неправильный ввод  " << endl;
  43.         cin.ignore(10, '\n');
  44.     }
  45.     return number;
  46. }
  47. double cilindr(double rad, double vys);
  48. int main()
  49. {
  50.     setlocale(LC_ALL, "Russian");
  51.  
  52.     double rad, vysota;
  53.  
  54.     cout << "Вычисление площади поверхности цилиндра." << endl << "Введите исходные данные: " << endl; //Вывод сообщений в консоль. endl - конец строки
  55.     cout << "Радиус основания(см) -> ";
  56.     rad = vvod_chisla(); // Получаем вводимые данные и записываем в переменную osnovanie
  57.     cout << "Высота цилиндра(см) -> ";
  58.     vysota = vvod_chisla();
  59.     cout << "Площадь поверхности цилиндра: " << cilindr(rad, vysota) << " кв.см." << endl; // Передаем переменные в функцию cilindr() для расчёта площади поверхности
  60.     system("pause");
  61.     return 0;
  62. }
  63.  
  64. double cilindr(double rad, double vys) {
  65.  
  66.     return ((2 * M_PI * rad * rad) + (2 * M_PI * rad * vys));
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement