Лекция: Принцип работы

Система Pascal ABC (или аналогичный вариант ‑ Pascal ABC.Net) ‑ современная бесплатная среда программирования, предназначенная для обучения последнему на языке Паскаль и ориентированная на студентов младших курсов. Данная среда, не уступая по возможностям морально устаревшему Turbo Pascal’ю, вместе с тем обладает существенно более удобным интерфейсом и позволяет обучаемым осуществить переход от простейших программ к модульному, объектно-ориентированному, событийному и компонентному программированию. Многие концепции в Pascal ABC сознательно упрощены, что позволяет использовать их на более ранних этапах обучения. Например, модуль графики обходится без объектов, хотя его возможности практически совпадают с графическими возможностями Borland Delphi.

 
 

 

 


Рис. 2. Окно программы Pascal ABC

Pascal ABC ‑ программа, которая совмещает в себе полноценный курс заданий,[1] оказывающий существенную помощь в овладении данным языком программирования: курс заданий Pascal ABC обеспечивает легкий переход к модульному программированию, учит использовать переменные и составлять собственные задачи.

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

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

Рис. 3. Окно рабочей программы с использованием графики

Содержание работы

Работа предполагает базовые знания школьного курса языка программирования Turbo Pascal. Запустить программу Pascal ABC. Ознакомиться с работой программы, строкой меню, окном редактора кода и ввода-вывода команд. Воспроизвести примеры, приведенные ниже, используя, где необходимо, преобразование команд «школьного алгоритмического языка» в операторы паскаля. По указанию преподавателя выбрать вариант из Приложения В. По завершении работы результаты сохранить в файл.

Пример 1.Пешеход шел по пересеченной местности. Его скорость движения по равнине v1 км/ч, в гору – v2 км/ч и под гору – v3 км/ч. Время движения соответственно t1, t2 и t3 ч. Какой путь прошел пешеход?

1. Ввести v1, v2, v3, t1, t2, t3.

2. S1 := v1 * t1.

3. S2 := v2 * t2.

4. S3 := v3 * t3.

5. S := S1 + S2 + S3.

6. Вывести значение S.

7. Конец.

Пример 2.Дано натуральное трехзначное число n, в записи которого нет нулей. Составить алгоритм, который возвращает значение истина, если верно утверждение: «число n кратно каждой своей цифре», и ложь – в противном случае.

1. Ввести число n

2. A := n mod 10 {разряд единиц}

3. B := n div 100 {разряд сотен}

4. C := n div 10 mod 10 {десятки}

5. L := (n mod A=0) and (n mod B=0) and (n mod C=0)

6. Вывод L

7. Конец

На приведенной выше схеме div и mod соответственно операции деления нацело и получения остатка от целочисленного деления. В фигурных скобках записаны пояснения (комментарии) к операторам.

 

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

Пример 3.Составить алгоритм и программу, запрашивающую имя и затем приветствующую его обладателя.

ProgramHello;VarName: String;{Описание переменной Nameстрокового типа}BEGINWrite('Как тебя зовут? '); {Вывод на экран текста вопроса}ReadLn(Name);{Ввод c клавиатуры имени}WriteLn('Привет, ', Name, '!'); {Вывод на экран приветствия}ReadLnEND.

Здесь последний оператор ReadLn позволяет видеть на экране результаты работы программы, пока не будет нажата клавиша <Enter>.

Пример 4.Определить объём и площадь боковой поверхности цилиндра с заданными радиусом основания R и высотой H.

Program Cylinder;UsesCrt; {Подключение библиотеки Crt}VarR, {радиус основания цилиндра}H, {высота цилиндра }V, {объем цилиндра }S: Real; {площадь боковой поверхности цилиндра}BEGINClrScr; {Вызов из библиотеки Crt процедуры очистки экрана}Write('Введите высоту цилиндра: '); ReadLn(H);Write('Введите радиус основания: '); ReadLn(R);V := Pi * R * R * H;S := 2 * Pi * R * H; WriteLn;WriteLn('Объем цилиндра = ', V: 5: 2); {Здесь 5 – общее количество позиций, занимаемых переменной V при выводе, а 2 — количество позиций в дробной части значения V}WriteLn('Площадь боковой поверхности = ', S: 5: 2);ReadLnEND.
еще рефераты
Еще работы по информатике