Практическое занятие № 5 Тема: Среда программирования. Тестирование программы. Программная реализация несложного алгоритма. Цель работы: изучить среду программирования и структуру программы PascalABC, научиться составлять несложные программы в этой среде программирования, производить тестирование программы. Оборудование: персональный компьютер, среда программирования 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? Как осуществить запуск программы? |