Разработка программы на языке высокого уровня
Министерство образования и науки РФ
Подольский институт (филиал)
Государственного образовательного учреждения
высшего профессионального образования
«Московский государственный открытый университет»
Кафедра «Информационные технологии»
Курсовая работа
по дисциплине «Теория и технология программирования»
Выполнил: студент группы 6-21 Карпова А.Г. Шифр: 609436 Проверил преподаватель: Челяпина О.И. |
Подольск, 2010
Задание №1.
Этапы программирования | Выполнение |
1) Постановка задачи | Разработать программу на языке высокого уровня и блок-схему для вычисления арифметического выражения при заданных значениях исходных данных. |
2) Математическое описание | |
3) Разработка блок-схемы |
a=16.6; b=3.4; x=0.61 Вывод Q; S |
4) Написание программы | Program pr1; Var a, b, x, S, Q: real; Begin readln; a:=16.6; b:=3.4; x:=0.61; S:= exp(3*ln(x))*(1-cos(2*exp(2*ln(x+b)))/1+cos(2*exp(2*ln(x+b))))+a/sqrt(x+b); Q:=(b*exp(2*(ln(x)))-a)/(exp(a*x)-1); writeln ('Q=', Q); writeln ('S=', S); End. |
5) Вывод результата | Q=-0.000613806205496508 S=8.51662541268611 |
Задание №2.
Этапы программирования | Выполнение |
1) Постановка задачи | Составить блок-схему алгоритма и программу для вычисления значения функции U, зависящей от нескольких аргументов, значения которых выбираются произвольно и задаются по вводу. |
2) Математическое описание | U= max(a,b) y≠0; cos(x)≠cos(y) |
3) Разработка блок-схемы | См. на след. стр. |
4) Написание программы | Program pr2; Var a, b, x, y, U: real; Begin writeln ('x='); readln (x); writeln ('y='); readln (y); If (y<>0) and (cos(y)<>cos(x)) then begin a:=ln(abs(cos(x)-cos(y)))+(exp(2*ln(x)))/(2*y); b:=exp(exp(2*ln (x))+exp(2*ln(y)))+sin(abs(4*x-2)); writeln (‘a=’,x); Writeln(‘b=’,b); end; If a>b then u:=a ; If b>a then u:=b else writeln(‘a=b’); writeln (‘u(‘max)=’, u); end. |
5)Вывод результата | При x=2.5; y=3.5; a=2.5 b=108254988.739589 U=108254988.739589 |
Ввод: x, y
Y<>0 и cos(y)<>cos(x)
Вывод: a, b
a>b
U=a
Да
Нет
ттттттт
b>a
Вывод: U
Да
U=b
Нет
a=b
Задание №3 (а).
Этапы программирования | Выполнение | ||||||||||||||||||||||||||||||||||||||||
1) Постановка задачи | Разработать программу на языке высокого уровня и структограмму для вычисления значения функции. Осуществить ввод значений вводимых исходных данных и результат вычисления значения функции, сопровождая вывод наименованиями переменных. | ||||||||||||||||||||||||||||||||||||||||
2) Математическое описание |
a = 2.5 | ||||||||||||||||||||||||||||||||||||||||
3) Разработка структограммы |
| ||||||||||||||||||||||||||||||||||||||||
4) Написание программы | program pr31; var a, b, x,w: real; begin a:=2.5; writeln ('x='); readln (x); if x>a then w:=exp(3*ln(x))*sqrt(x-a); if x=a then w:=x*sin(a*x); if x<a then w:=exp(-a*x)*cos(a*x); writeln('x:=',x); writeln ('w=', w); end. | ||||||||||||||||||||||||||||||||||||||||
5)Вывод результата | x:=2 w=0.00191130077129597 x:=2.5 w=-0.082948041368892 x:=3 w=19.0918830920368 | ||||||||||||||||||||||||||||||||||||||||
Задание №3 (б).
Этапы программирования | Выполнение | ||||||||||||||||||||||||||||||||||||||||
1) Постановка задачи | Модифицировать программу для многократного вычисления значений функции при изменении аргумента в указанном диапазоне и с заданным шагом. Организовать вывод значений аргумента и функции в виде таблицы. | ||||||||||||||||||||||||||||||||||||||||
2) Математическое описание |
| ||||||||||||||||||||||||||||||||||||||||
3) Разработка структограммы |
| ||||||||||||||||||||||||||||||||||||||||
4) Написание программы | program pr32; var a, b, x,w: real; begin readln; a:=2.5; x:=1; Repeat if x>a then w:=exp(3*ln(x))*sqrt(x-a); if x=a then w:=x*sin(a*x); if x<a then w:=exp(-a*x)*cos(a*x); writeln('x:=',x); writeln ('w=', w); x:=x+0.5; until x>5; end. | ||||||||||||||||||||||||||||||||||||||||
5)Вывод результата | x:=1 w=-0.0657618725797153 x:=1.5 w=-0.019297706425682 x:=2 w=0.00191130077129597 x:=2.5 w=-0.082948041368892 x:=3 w=19.0918830920368 x:=3.5 w=42.875 x:=4 w=78.3836717690616 x:=4.5 w=128.870210871248 x:=5 w=197.642353760524 | ||||||||||||||||||||||||||||||||||||||||
Задание №4.
Этапы программирования | Выполнение | ||||||||||
1) Постановка задачи | Разработать программу на языке Pascal и структограмму для вычисления первых n-членов степенного ряда. | ||||||||||
2) Математическое описание | |||||||||||
3) Разработка структограммы |
| ||||||||||
4) Написание программы | program pr4; var n,I: integer; Var x,y: real; Begin Writeln('x=',x); readln(x); Writeln('n=',n); readln(n); y:=1; For i:=1 to n do begin y:=y+(exp(i*ln(x)))/(i+1); end; Writeln('y=',y); End. | ||||||||||
5)Вывод результата | x=2 n=5 y=18.0666666666667 | ||||||||||
Задание №5.
Этапы программирования | Выполнение |
1) Постановка задачи | Разработать программу на языке Pascal с использованием подпрограммы. |
2) Математическое описание | |
3) Написание программы | Program pr5; |
4)Вывод результата |
Задание №6.
Этапы программирования | Выполнение |
1) Постановка задачи | Разработать программу для распечатки слова в обратном порядке. |
2) Написание программы | program pr6; var a: string; var i, k: integer; begin readln; a:=’karpova’; k:=length(a); for i:=k downto 1 do write (a[i]); writeln; end. |
3)Вывод результата | «avoprak» |