Файл: Алгоритмизация как обязательный этап разработки программы (Основные алгоритмические конструкции. Понятие компьютерной программы).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 23.04.2023

Просмотров: 242

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Иногда один и тот же язык может использовать и компилятор, и интерпретатор. К числу таких языков относится, например, Бейсик.

2.2 Понятие компьютерной программы

Компьютерная программа -- это набор инструкций для выполнения на вычислительной технике. Как правило, программы могут быть представлены в виде исходного кода и объектного (бинарного) кода.

С точки зрения пользователя компьютера важным отличием является характер программы:

· системные программы -- программы, обеспечивающие взаимодействие пользователя с компьютером и создающие среду для выполнения прикладных программ. К таким программам, например, относятся «операционные системы» и «драйвера».

· прикладные программы -- программы, с которыми взаимодействует непосредственно пользователь. Сюда можно отнести «браузер», «текстовые редакторы», «игры», «web-сайты».

Информация, хранящаяся на вашем компьютере, условно подразделяется на две большие группы:

Программы - рабочие инструменты компьютера, инструменты, последовательности команд, предназначенные для выполнения определенных операций.

Данные - информация, которую программы обрабатывают или создают, документы.

Программами называют законченные последовательности команд, понятных машине, инструкции, предназначенные для выполнения какого-либо данного человеком задания.

Во время создания и работы программы мы всегда видим три стороны, участвующие в этом процессе:

Пользователь - постановщик задачи. Сам пользователь написать программу не может, но зато он знает, какую именно задачу он должен решить.

Вывод к главе 2.

Сколько существует различных задач, столько существует и различных

алгоритмов для их решения. Тем не менее есть большая вероятность того

что задача которую вы пытаетесь решить в некотором смысле похожа на

другую задачу. Развивая глубокое понимание широкого диапазона алгоритмов, вы сможете выбрать верный алгоритм и применить его для решения задачи. Обобщая все выше сказанное, можно заметить, что знания и умения применять алгоритмы различных структур существенно облегчают решение поставленных задач, дают им графическую наглядность, а так же упрощают выявление не точностей допущенных при построении алгоритма.


Глава 3. Практическая часть

Задача 1

Необходимо выполнить расчет максимальной мощности двигателя автомобиля, а также расчет внешней характеристики двигателя при следующих начальных условиях:

mo ,

кг

Vmax , км/ч

Kв

кг/м3

F,

м2

Ψv

nN

мин-1

Kv

nmp

6000

100

0,62

3,9

0,021

3000

1,2

0,88

Решение.

Максимальная мощность двигателя у тягача по условию обеспечения максимальной скорости будет рассчитываться по формуле (1):

, (1)

Где Nemax это искомая максимальная мощность, KBm;

Nv – это мощность на режиме максимальной скорости, kBm;

Kv – это отношение частоты вращения коленчатого вала двигателя при максимальной скорости движения тягача к номинальной частоте вращения (2):

,(2)

nN – это частота вращения коленчатого вала двигателя на режиме максимальной мощности ( номинальная), мин-1

nv – это частота вращения коленчатого вала двигателя при максимальной скорости автомобиля, мин-1.

Мощность на режиме максимальной скорости определяется по данной формуле (3):

, (3)

Где m0 – это масса тягача, кг;

Ψvсуммарный коэффициент сопротивления дороги;

Vmax – это заданная максимальная скорость тягача;

nmp – это КПД трансмиссии;

Kв – коэффициент сопротивления воздуха, кг/м3.

F – это лобовая площадь тягача, м3.

Данная внешняя характеристика двигателя представляет собой зависимость мощности, крутящего момента от частоты вращения коленчатого вала двигателя при полном открытии заслонки карбюратора.

При известном значении максимальной мощности Nemax мощность в любой другой точке характеристики может быть найдена по формуле Лейдермана (4):

, (4)

где Ne мощность двигателя при произвольном значении частоты вращения коленчатого вала, кВт ;

Nemax максимальная мощность двигателя, кВт;

n - заданная частота вращения коленчатого вала, мин-1 ;


nN частота вращения коленчатого вала на режиме максимальной мощности, мин-1 ;

a,b,c коэффициенты, принимаемые для бензиновых двигателей, равны 1.

Крутящий момент в любой точке характеристики будет определяться по формуле (5):

Me =9549 ( Ne / n ), (5)

Составим схему алгоритма. В алгоритме будет три блока: ввод исходных данных, расчет по формулам(1)-(5) и вывод результата.

По приведенной блок-схеме была составлена программа, листинг которой приведен ниже.

program lab1;

var m0,vmax,Ke,F,Fv,nN,Ky,n_tr:real; {peremennye - ishodnye dannye}

Nv,Ne_max,n_v,Ne,Me:real; {peremennye - rezultaty}

BEGIN

{-----------VVOD ISHODNYH DANNYH-----}

writeln ('Vvedite ishodnye dannye:');

write ('m0=');readln(m0);

write ('Vmax=');readln(Vmax);

write ('Ke=');readln(Ke);

write ('F=');readln(F);

write ('Fv=');readln(Fv);

write ('nN=');readln(nN);

write ('Ky=');readln(Ky);

write ('n_tr=');readln(n_tr);

{----------RASCHET-------------------}

Nv:=2.725E-03*m0*Fv*Vmax/n_tr+2.14e-05*Ke*F*sqr(Vmax)*Vmax/n_tr;

Ne_max:=Nv/(Ky*(1+Ky*(1+Ky)));

n_v:=Ky*nN;

Ne:=Ne_max*(n_v/nN+sqr(n_v/nN)-sqr(n_v/nN)*n_v/nN);

Me:=9549*(Ne/n_v);

{----------VIVOD REZULTATA-----------}

writeln('Nv=',Nv);

writeln('Ne_max=',Ne_max);

writeln('n_v=',n_v);

writeln('Ne=',Ne);

writeln('Me=',Me);

End.

Программу написанную на языке Паскаль копирую и вставляю в проект, затем исправляю существенные различия.

Задача 2.

Вычислить функцию , для  с шагом .

a

b

h

f(x)

Начало отрезка

Конец отрезка

Шаг по отрезку

9

-12

0

1

РЕШЕНИЕ

Выполним схему алгоритма.

Эта схема была реализована на языке Паскаль в трех вариантах: были задействованы циклы с предусловием, с постусловием и с параметром. Листинги программ приведены ниже.

а) Цикл с постусловием

program lab 21;

var x,f:real;

begin

x:=-12;

repeat

if x<-7 then f:=sin((3.14/12)*x)

else

if x<=-3 then f:=2*cos((3.14/6)*x+(3.14/12))

else

f:=5* sin((3.14/12)*x);

writeln('f(',x:3:1,')=',f:6:2);

x:=x+1;

until x>0;

readln;

end.

б) Цикл с предусловием

program lab 22;

var x,y:real;

begin

x:=-12;

while x<=0 do

begin

if x<-7 then y:= sin((3.14/12)*x)

else

if x<=-3 then y:= 2*cos((3.14/6)*x+(3.14/12))

else

y:= 5* sin((3.14/12)*x);

writeln('f(',x:3:1,')=',y:6:2);

x:=x+1;

end;


readln;

end.

в) Цикл с параметром

program lab 23;

var

x,y,a,b,h,n1: real;

n ,i : integer;

begin

x:=-12;

a:=-12;b:=0;h:= 1;

n1:=(b-a)/h; n:=round(n1);

for i:=0 to n do

begin

if x<-7 then y:= sin((3.14/12)*x)

else

if x<=-3 then y:= 2*cos((3.14/6)*x+(3.14/12))

else

y:= 5* sin((3.14/12)*x);

writeln('f(',x:3:1,')=',y:6:2);

x:=x+1;

end;

readln;

end.


Решение этой же задачи было проведено в Excel. При вычислении функции использовалась логическая функция ЕСЛИ. Лист с решением задачи размещен ниже.

Программу написанную на языке Паскаль копирую и вставляю в проект, затем исправляю существенные различия.

Заключение

Выполнение данной курсовой работы, является неотъемлемой частью приобретения теоретических и практических навыков построения алгоритмов, позволит приобрести и развить умения построения сложных алгоритмов и разделения на меньшее составляющее, что в свою очередь упростит работу с ними и как следствие минимизирует возникновение ошибок при работе с ними. Предоставляет возможность попрактиковаться с различной «архитектурой» алгоритмов, отточить полученные умения при решении конкретных задач и понять принцип и структуру взаимодействия между ними.

Приложение

Рис. 1.1 Начало и конец алгоритма

Рис. 1.2 Шаг алгоритма, связанный с присвоением нового значения некоторой переменной, символ "процесс"

Рис. 1.3 Выбор направления выполнения алгоритма, символ "решение".

Рис. 2.1 Линейная алгоритмическая конструкция.

Рис. 2.2 Разветвляющаяся (или ветвящейся) алгоритмическая конструкция.

Рис. 2.3 Неполное ветвление.

Рис. 2.4 Блок – схема.

Библиография

1 Соболь Б.В. Информатика и программирование: учеб. Пособие для вузов/. Б.В. Соболь- 3-е изд; испр.- Ростов н/Д: Феникс, 2006 – 354 с.

2. Симонович С.В. Информатика. Базовый курс./ С.В Симонович.. - СПб.: Питер, 2001-640с.

3. О.А. Акулов, Н.В. Медведев. Информатика: базовый курс: учебник для студентов вузов/ О.А. Акулов, Н.В. Медведев. 6-е изд., испр. и доп.-М.: Издательство «Омега-Л», 2009.-574 с.

4. В.А. Каймин Информатика: Учебник для вузов. - М.: Высшее образование, 1998.-272с.


5. В.А. Кайми., Б.С. Касаев Информатика.: Практикум на ЭВМ. Учебное пособие.2000-216с.

6. Культин Н.Б. Программирование в TurboPascal 7.0 и Delphi.- 2-е издание, перераб. и доп.- Спб.: БХВ-Петербург,2002.-416 с.;ил.

7. Турбо Паскаль 7.0. Самоучитель. – СПб.: Питер; К.: Издательская группа BHV, 2002.-576 с.

8. Ван, Тассел Д. Стиль, разработка, эффективность, отладка и испытания программ / Ван Тассел Д.. - М.: Мир, 2017. - 332 c.

9.Лужецкий, М. Г. Автоматизация аналитической работы кредитной организации / М.Г. Лужецкий. - М.: Университет, 2015. - 555 c.

10.Попов, И. И. Использование семантических подходов в экономических моделях / И.И. Попов. - М.: Университет, 2016. - 646 c.

11.Постовалов 1С: Предприятие 7.7. Уроки программирования / Постовалов, Постовалова Сергей; , Анастасия. - М.: СПб: BHV, 2018. - 320 c.

12. Стивенс, У. UNIX: разработка сетевых приложений / У. Стивенс. - М.: СПб: Питер, 2015. - 400 c

13. Фролов, А.В. Локальные сети персональных компьютеров. Работа с сервером Novell NetWare / А.В. Фролов, Г.В. Фролов. - М.: Диалог-Мифи, 2017. - 168 c.

14. Семакин И.Г., Шестаков А.П Основы алгоритмизации и программирования: учеб. Пособие для вузов/ И.Г. Семаки., А.П. Шестаков – М.:Академия, 2016- 304с.

15. Воскобойников, Ю.Е. Основы вычислений и программирования в пакете MathCAD PRIME: Учебное пособие / Ю.Е. Воскобойников и др. - СПб.: Лань, 2016. - 224 c.

16. Черпаков, И.В. Основы программирования: Учебник и практикум для СПО / И.В. Черпаков. - Люберцы: Юрайт, 2016. - 219 c

17. Семакин, И.Г. Основы алгоритмизации и программирования. Практикум: Учебное пос. для студ. учреждений сред. проф. образования / И.Г. Семакин, А.П. Шестаков . - М.: ИЦ Академия, 2013. - 144 c.

18. Фридман, А.Л. Основы объектно-ориентированного программирования на языке Си++ / А.Л. Фридман. - М.: Гор. линия-Телеком, 2012. - 234 c.

19. Архангельский, А.Я. Язык Pascal и основы программирования в Delphi / А.Я. Архангельский. - М.: Бином-Пресс, 2008. - 496 c.

20. Алехин, В.А. Микроконтроллеры PIC: основы программирования и моделирования в интерактивных средах MPLAB IDE, mikroC, TINA, Proteus. Практикум / В.А. Алехин. - М.: ГЛТ , 2016. - 248 c.

  1. Семакин, И.Г. Основы алгоритмизации и программирования. Практикум: Учебное пос. для студ. учреждений сред. проф. образования / И.Г. Семакин, А.П. Шестаков . - М.: ИЦ Академия, 2013. - 144 c.

  2. Семакин И.Г., Шестаков А.П Основы алгоритмизации и программирования: учеб. Пособие для вузов/ И.Г. Семаки., А.П. Шестаков – М.:Академия, 2016- 304с.

  3. Культин Н.Б. Программирование в TurboPascal 7.0 и Delphi.- 2-е издание, перераб. и доп.- Спб.: БХВ-Петербург,2002.-416 с.;ил.

  4. Семакин, И.Г. Основы алгоритмизации и программирования. Практикум: Учебное пос. для студ. учреждений сред. проф. образования / И.Г. Семакин, А.П. Шестаков . - М.: ИЦ Академия, 2013. - 144 c.