Добавлен: 21.10.2018
Просмотров: 2015
Скачиваний: 9
24
Рисунок 5 – Результаты решения с набором значений варианта 3
Рисунок 6 –Результаты решения с набором значений варианта 4
Рисунок 7 – Результаты решения с набором значений варианта 5
25
Заключение
В курсовой работе решена задача нахождения наибольшей высоты
усеченного круглого цилиндра, при котором объем данного цилиндра и шара
радиуса R отвечают поставленным требованиям. Составлена и отлажена
программа, реализующая указанный алгоритм. С ее помощью проведены
расчеты, проанализированы полученные результаты. Анализ результатов
показал, что поставленная задача успешно решена.
26
Список использованных источников
1. Вениаминов, А. В. Оптические системы записи, хранения и
отображения информации / А. В. Вениаминов, В. Н. Михайлов. – СПб:
СПбГУ ИТМО, 2009. – 94 с.
2. Энциклопедия «Техника». — М.: Росмэн, 2006.
3. Макарова, Н. В. Информатика: Учебник / Н.В. Макарова. – М.:
Финансы и статистика, 2002. – 768 с.
4. Степанов, А. Н. Информатика : учеб. для вузов / А. Н. Степанов. –
СПб.: Питер, 2008. – 768 с.
5. Симонович, С. В. Информатика. Базовый курс : учеб. для техн. вузов /
С. В. Симонович. – СПб.: Питер, 2009. – 640 с.
6. Майсеня, Л. И. Справочник по математике. Основные понятия и
формулы / Л. И. Майсеня. – Минск: Выш. шк., 2012. – 309 с.
7. Павловская, Т. А. C/C++. Программирование на языке высокого
уровня / Т. А. Павловская. – СПб.: Питер, 2003. – 461 с.
27
ПРИЛОЖЕНИЕ А
Код программы
#include <iostream>
#include <math.h>
using std::cin;
using std::cout;
int main()
{
setlocale(0, "rus");
double l, k, m, R, r, h1, h2, max, Sz, Su, S, p = 3.14;
cout << "Введите l:\t";
cin >> l;
cout << "Введите k:\t";
cin >> k;
cout << "Введите m:\t";
cin >> m;
cout << "Введите R:\t";
cin >> R;
cout << "Введите r:\t";
cin >> r;
cout << "Введите h1:\t";
cin >> h1;
h2 = l - m;
Su = 4 * p * R * R;
Sz = p * r * (h1 + h2 + r + sqrt(r * r + pow(((h2 - h1) /
2 ), 2)));
while ((Sz >= Su) && (k <= h2))
{
h2 += m;
Sz = p * r * (h1 + h2 + r + sqrt(r * r + pow(((h2 -
h1) / 2 ), 2)));
}
max = h2 + m;
S = p * r * (h1 + (h2 + m) + r + sqrt(r * r + pow((((h2 +
m) - h1) / 2), 2)));
if ((S <= Su) && (max >= k))
{
cout << "Площадь поверхности усеченного цилиндра = "
<< S << "\n";
cout << "Площадь поверхности шара = " << Su << "\n";
cout << "Максимальное значение большей высоты = " <<
max << "\n";
}
else
cout << "Решения нет!" << "\n";
system("pause");
return 0;
}