Практическое занятие №7 1М
Тема: «Программный принцип работы компьютера. Примеры компьютерных моделей различных процессов. Проведение исследования в социально-экономической сфере на основе использования готовой компьютерной модели.»
Оборудование: персональный компьютер, среда программирования PascalABC.
Время работы 2 часа
Краткие теоретические сведения.
Паскаль - язык профессионального программирования, который назван в честь французского математика и философа Блеза Паскаля (1623-1662) и разработан в 1968-1971 гг. Никлаусом Виртом. Первоначально был разработан для обучения, но вскоре стал использоваться для разработки программных средств в профессиональном программировании.
Паскаль популярен среди программистов по следующим причинам:
Прост для обучения.
Отражает фундаментальные идеи алгоритмов в легко воспринимаемой форме, что предоставляет программисту средства, помогающие проектировать программы.
Позволяет четко реализовать идеи структурного программирования и структурной организации данных.
Использование простых и гибких структур управления: ветвлений, циклов.
Надежность разрабатываемых программ.
Save as - сохранить с новым именем,
Save all - сохранить все в окнах (записывает содержимое всех окон редактора в соответствующие файлы),
Change dir - смена каталога (позволяет изменить установленный по умолчанию диск или каталог),
Print - печать файла,
Get info - выдача информации о текущем состоянии программы и используемой памяти,
DOS Shell - выход в DOS без выгрузки из памяти (для возврата ввести команду exit),
Exit - выход и выгрузка из памяти.
Программы на языке Паскаль имеют блочную структуру:
Блок типа PROGRAM - имеет имя, состоящее только из латинских букв и цифр. Его присутствие не обязательно, но рекомендуется записывать для быстрого распознавания нужной программы среди других листингов.
Программный блок, состоящий в общем случае из 7 разделов:
раздел описания модулей (uses);
раздел описания меток (label);
раздел описания констант (const);
раздел описания типов данных (type);
раздел описания переменных (var);
раздел описания процедур и функций;
раздел описания операторов.
Общая структура программы на языке Паскаль:
| Рrogram ИМЯ..; {заголовок программы} Uses ...; {раздел описания модулей} Var ..; {раздел объявления переменных} ... Begin { ачало исполнительной части программы} ... {последовательность ... операторов} End. {конец программы} |
Пример программы, которая осуществляет сложение двух чисел и выводит сумму на экран:
| Program Summa; Uses Crt;{Подключаем модуль Crt} Var number1, {переменная, в которой будет содержаться первое число} number2, {переменная, в которой будет содержаться второе число} rezult {переменная, в которой будет содержаться результат} :integer; {указывает тип целых чисел} Begin ClrScr;{Используем процедуру очистки экрана из модуля Crt} Write ('Введите первое число '); {Выводим на экран символы, записанные между апострофами} Readln (number1); {Введенное пользователем число считываем в переменную number1} Write ('Введите второе число '); {Выводим на экран символы, записанные между апострофами} Readln (number2); {Введенное пользователем число считываем в переменную number2} rezult := number1 + number2; {Находим сумму введенных чисел и присваиваем переменной rezult} Write ('Сумма чисел ', number1, ' и ', number2, ' равно ', rezult); {Выводим на экран строчку, содержащую ответ задачи} Readln;{Процедура задержки экрана} End. |
Ход работы
Задача
Составить таблицу значений функции y = 5 - x2/2 на отрезке [-5; 5] с шагом 0.5.
Решение
Алгоритм решения задачи:
Присвоить переменной x значение начала отрезка.
Пока x не достигнет конца отрезка
вычислять значение y по формуле,
вывести на экран значение x и y,
увеличить x на заданный шаг.
Программа на языке Паскаль:
var
x, y: real;
begin
x := -5;
writeln(' x y ');
while x do begin
y := 5 - x*x/2;
writeln(x:4:1,' | ',y:5:2);
x := x + 0.5
end;
end.
Выполнение программы:
x y
-5.0 | -7.50
-4.5 | -5.13
-4.0 | -3.00
-3.5 | -1.13
-3.0 | 0.50
-2.5 | 1.88
-2.0 | 3.00
-1.5 | 3.88
-1.0 | 4.50
-0.5 | 4.88
0.0 | 5.00
0.5 | 4.88
1.0 | 4.50
1.5 | 3.88
2.0 | 3.00
2.5 | 1.88
3.0 | 0.50
3.5 | -1.13
4.0 | -3.00
4.5 | -5.13
5.0 | -7.50
2. Найти периметр пятиугольника, если длины его сторон a,b,c,d,f - вводятся с клавиатуры.
РЕШЕНИЕ:
program Prim_2_1;
var a,b,c,d,f,p:integer;
begin
writeln('Введите 5 численных значений:');
readln(a,b,c,d,f );
p:=a+b+c+d+f;
writeln('p=',p);
readln
end.
3. Вычислить значение выражения: у=5х3+16х2+18х-29.
РЕШЕНИЕ:
program Prim_2_2;
var y,x:integer;
begin
writeln('Введите x:');
readln(x);
y:=5*x*x*x+16*x*x+18*x-29;
writeln('y=',y);
readln
end.
4. Сумма вводимых целых чисел
begin
var n := ReadInteger('Введите число слагаемых:');
var s := 0.0;
for var i:=1 to n do
begin
var x := ReadReal($'Введите слагаемое №{i}:');
s += x;
end;
Println($'Сумма равна {s}');
end.
Контрольные вопросы
Что такое среда программирования?
Опишите среду программирования Тurbo Pascal.
Как сохранить текст программы в Тurbo Pascal?
Какова структура программы на языке Pascal?
Как осуществить запуск программы?