Автор работы: Пользователь скрыл имя, 03 Марта 2015 в 12:13, курсовая работа
Объектом исследования данной курсовой работы является язык программирования высокого уровня Pascal ABC. Язык программирования Паскаль (Pascal) является одним из первых языков, который отличался строгой типизацией и наличием средств структурного (процедурного) программирования. Этот язык представляет собой процедурный язык, включает в себя множество структур и конструкций наподобие if, then, while, еlsе и так далее.
Синтаксис раздела операторов основной программы:
BEGIN
<оператор 1=""> { Операторы выполняются}
<оператор 2=""> { строго последовательно}
… {друг за другом.}
<оператор n="">
END.
Комментарий.
Это пояснительный текст, который можно записать в любом месте программы, где разрешен пробел. Текст комментария ограничен: слева - '{', справа - '}', и может содержать любые символы. Комментарий игнорируется транслятором, и на программу влияния не оказывает.
Пример использования комментария:
PROGRAM PR;
<разделы>
BEGIN
<оператор 1="">
<оператор 2="">
{< Оператор 3; >
…
<оператор n=""> }
END.
Средства комментария часто используются для отладки. Так в приведенном выше примере, операторы — 3,... N, заключенные в фигурные скобки, временно не выполняются.
Основным средством пунктуации является символ точка с запятой – ';'.
1. Точка с запятой не ставится после слов LABEL, TYPE, CONST, VAR, а ставится
после каждого описания этих разделов.
2. Точка с запятой не ставится после BEGIN и перед END, так как эти слова – операторные скобки.
3. Точка с запятой разделяет операторы, и ее отсутствие вызовет:
А := 333 {ошибка — нет ';'}
В := А/10;;;;; {четыре пустых оператора}
4. Возможна ситуация:
END; следует писать END
END; > END
END; END;
5. Допускается
запись метки на пустом
6. Точка с запятой не ставится после операторов WHILE, REPEAT, DO и перед UNTIL.
7. В условных операторах ';' не ставится после THEN и перед ELSE.
Цель: Составить программу, которая переводит одни единицы измерения в другие. Исходные данные вводятся с клавиатуры, результаты выводятся на экран.
Задача 1. Перевести литры в кубические сантиметры.
Выполнение
1. 1 литр равен 1000 кубических сантиметров. Для того чтобы перевести литры в кубические сантиметры, необходимо задать константу, которая будет хранить значение количества минут в одном кубическом сантиметре. Назовём её L_1cm.
2.Вводим две переменные: L – начальное значение, количество литров, которые необходимо перевести в кубические сантиметры; A – итоговое значение, количество кубических сантиметров, соответствующее введенным литрам.
3.Начальное значение L вводим с помощью оператора readln.
4.Выполняем расчёт по формуле:
, (1)
где
A - количество кубических сантиметров;
L - количество литров;
L_1cm – количество литров в одном кубическом сантиметре.
5.Выводим полученный результат на экран с помощью оператора writeln.
Для решения задачи используется среда Pascal ABC.
program pd;
const L_1cm=1000;
var
L,A,cm:real;
begin
writeln('Введите количество литров');
readln(L);
A:=L_1cm*L;
writeln('Ответ ',A,' cm^3');
end.
Текстовый пример
Рисунок 1- Ввод количества литров.
Рисунок 2 – Вывод результата.
Цель: Составить программу реальной информатики, которая производить вычисления параметров реальных фигур и процессов. Исходные данные вводятся с клавиатуры, результаты выводятся на экран.
Задача 2. . Скорость света 299792 км/с. Какое расстояние проходит свет за один час, сутки?
Выполнение
(2)
(3)
где c_cv_h - скорость света в часе;
с_сv - скорость света;
сh – 1 час в секундах;
с_cv_c – скорость света в сутках;
сt – в сутках 24 часа.
Для решения задачи используется среда Pascal ABC.
program pd;
const
c_cv=299792;
ch=3600;
ct=24;
var
c_cv_h,c_cv_c:real;
begin
writeln(c_cv);
c_cv_h:=c_cv/ch;
c_cv_c:=c_cv_h*ct;
writeln('Скорость света ',c_cv_h,' в часе,' ,c_cv_c,' в сутках');
end.
Тестовый пример
Рисунок 3 – Готовая задача.
Рисунок 4 - Вывод скорости света в часах и сутках.
Цель: Вычислить значение выражения с учетом области допустимых значений.
Задача 3. Вычислить значение выражения.
Выполнение
(4)
Для решения задачи используется среда Pascal ABC.
program reshenie;
var a,x,y,b,c,M:real;
begin
writeln('Введите M,x,y:' );
readln(M,x,y);
a:=sqrt(abs(M*Power(sin(x)/
b:=(3*x/5)*Power(ln(Power(y,-
c:=Power(M,-x);
if c<>0 then
if b>0 then
writeln (a+b*c)
else writeln(' Подлогарифмическое выражение <= 0 ')
end.
Тестовый пример
Рисунок 5 – Ввод значений.
Рисунок 6 –Вывод результата.
Цель: Вычислить значение функции.
Задача 4. Решить уравнение.
Выполнение
(5)
Для решения задачи используется среда Pascal ABC.
program sm;
var
x,g,y:real;
begin
writeln('Введите значения x,y');
readln(x,y);
if x*y<0 then g:=sqr(x+y)*ln(sqrt(ABS(x)))
else
if x*y=0 then g:=sqr(x)+sqr(y)-exp(2)
else
g:=sqr(x)+sqr(y)-sqrt(x*y);
writeln('g = ' , g:5:3);
end.
Тестовый пример
.
Рисунок 7- Программа
Рисунок 8 –Вывод результата.
Цель:. Выбор. Составить программу для решения задачи используя команду позволяющую выбор из списка предоставленных данных.
Задача 5. Ввести номер месяца. Вывести номер квартала.
Выполнение
Для решения задачи используется среда Pascal ABC.
program mkv;
var m:integer;
kv:string;
begin
writeln ('Введите номер месяца');
readln(m);
case m of
1 : writeln ('1 квартал');
2 : writeln ('1 квартал');
3 : writeln ('1 квартал');
4 : writeln ('2 квартал');
5 : writeln ('2 квартал');
6 : writeln ('2 квартал');
7 : writeln ('3 квартал');
8 : writeln ('3 квартал');
9 : writeln ('3 квартал');
10 : writeln ('4 квартал');
11 : writeln ('4 квартал');
12 : writeln ('4 квартал');
else writeln('нет такого номера месяца');
end;
writeln(kv);
end.
Тестовый пример 1
Рисунок 9 – Программа.
Информация о работе Язык программирования высокого уровня Pascal ABC