Пример готовой курсовой работы по предмету: Программирование
Содержание
СОДЕРЖАНИЕ
1.Постановка задачи.
2.Выбор среды программирования.
3.Построение математической модели.
4.Блок-схемы алгоритмов
5.Программный код.
6. Руководство к программе
7.Использованная литература.
Постановка задачи
Ввести высоту прямой призмы, а также стороны, углы и высоту равнобокой трапеции, лежащей в основании. Вычислить неизвестные углы и стороны, площади полной и боковой поверхности, радиус вписанной окружности, если она существует.
Программа должна включать в себя следующие возможности:
Задание начальных параметров;
Расчет и просмотр значений;
Построение фигуры мгновенно и в режиме анимации;
Получение справочных сведений.
Ввести указанные в задании параметры геометрической фигуры. Вместо некоторых из них можно вводить 0, тогда размер считается неизвестным. Проверить, корректна ли введенная информация, достаточно ли введено данных. Вычислить указанные в задании параметры геометрической фигуры.
Построить изображение рассчитанной фигуры, произвести дополнительные построения описанные и вписанные окружности, высоты. Подписать основные точки. Если необходимо добавить комментарии. Построение изображения должно проводится в двух режимах: мгновенно и по точкам в режиме анимации. Предоставить пользователю выбор режима и цвет линий изображения.
Выбор среды программирования.
С появлением и развитием операционных систем Microsoft Windows (3.1, 3.11, 95, 98, 2000), пришедших на смену DOS, значение Turbo Pascal как среды программирования резко снизилось. В настоящее время эта среда практически не применяется и используется для внесения коррективов в ранее созданные и до сих пор работающие программы и базы данных и/или в низкоресурсных компьютерах устаревших моделей.
Значение самого языка Turbo Pascal, напротив, не уменьшилось, т. к. на смену вышеназванным DOS-средствам одноименного названия пришло новое, еще более мощное и более удобное средство программирования среда Delphi (Делфи или Дельфи), основой которого является по-прежнему Turbo Pascal и который выступает теперь под названием Object Pascal.
Построеие математической модели
Пусть H высота призмы, a большее основание, b меньшее, h высота трапеции, с боковая сторона, alpha угол при основании а, beta угол при основании b, r радиус вписанной окружности, S1 боковая поверхность, S2 полная поверхность.
Рассмотрение ситуаций неполноты данных.
1)Известна высота призмы, основания и высота трапеции. Тогда для определения углов при основаниях воспользуемся следующими формулами:
tg α 1 = 2h/(a-b)(1)
α 1 = arctg(2h/(a-b))(2)
В градусах α = 180α 1/п(3)
β= 180-α (4)
2) Известны основания трапеции и угол при одном из оснований.
Находим угол при другом основании через формулу(4) либо α = 180- β (5)
Находим высоту h = (a-b)/2 (6) * tg α, где α в градусах.
Для перевода в радианы воспользуемся формулой α 1=π α/180 (7)
3)если дано большее основание, высота и угол при основании, то можем определить второе основание по формуле:
b=2h/tgα
1. где α 1 в градусах, для перевода в радианы воспользуемся формулой (7)
4)если выполняется условие a+b=2h, то в трапецию можно вписать окружность.
Её радиус R определяется по формуле R=h/2.
Боковая сторона определяется по формуле c=h/sinα
Условиями некорректных данных будут следующие факты:
1)Введенные значения углов пи основании не равны в сумме 180
2)Введены длины оснований, высота, углы, при этом не выполняется соотношение tgα 1=2h/(a-b), где α
1. острый угол при основании в радианах, с учётом погрешности вычисления, т.е. tgα 1-2h/(a-b)
Выдержка из текста
begin
if alfa 0 then
begin
bbeta:=true;
balfa:=true;
alfa 1:=pi*alfa/180;
beta:=180-alfa;
bbeta 1:=true;
beta 1:=pi*beta/180;
end;
if beta 0{ and balfa=False} then
begin
balfa:=true;
bbeta:=true;
beta 1:=pi*beta/180;
alfa:=180-beta;
balfa 1:=true;
alfa 1:=pi*alfa/180;
end;
end;
procedure Tform 1.Control;
begin
error:=false;
balfa 1:=false;
bbeta 1:=false;
balfa:=false;
bbeta:=false;
ba:=false;
bb:=false;
bc:=false;
bh:=false;
bh1:=false;
br:=false;
bs 1:=false;
bs 2:=false;
if h0 then
bh:=true;
if h10 then
bh1:=true;
if s 10 then
bs 1:=true;
if s 20 then
bs 2:=true;
if a 0 then
ba:=true;
if b 0 then
bb:=true;
if c 0 then
bc:=true;
if r 0 then
br:=true;
radials;
if balfa and bbeta then
if (alfa+beta)180 then
begin
showmessage(‘Error 1: angles fractured.’);
error:=true;
end;
{ if balfa then begin
str:=floattostr(alfa 1); check for radian translation
showmessage(str);
end; }
if balfa and ba and bb and bh then
if not(abs(tan(alfa 1)-2*h/(a-b))
Список использованной литературы
1.Атанасян Л.С. Геометрия 9-11, , 1994г., «Просвещение», 400 с.
2.Фаронов В.В., «Программирование для ВУЗов» 2003 год, 640 стр.
3.Шестаков А.П., Семакин Е.Г., «Основы алгоритмизации и программирования для среднего профессионального образования»,ИЦ Академия, 400 стр.