Когда вы запускаете эту программу, то видите синее окно ввода. Именно в нем и набирается текст программы — вы вводите ее с клавиатуры. Вверху находиться полоса меню, через нее осуществляется доступ ко всем ресурсам и возможностям Турбо Паскаля. Активным меню становиться при нажатии клавиши F10. Основные взможности меню, о которых я хочу вам рассказать — это Открытие и Сохранение файлов.
Представим, что мы начали писать в окне ввода программу, которую не закончили, и хотим дописать после. Что надо сделать? Сохранить ее на диске, а после загрузить обратно в редактор.
Итак, запускаем Паскаль и набираем что-нибудь в онке редактора. Далее — сохраняем программу. Для этого:
Нажимаем F10 и переходим в меню.
Выбираем меню File, а далее — Save — открывается окно сохранения файла.
Выбираем имя для файла и вводим его в строку ввода.
Нажимаем Enter и файл сохраняется.
Теперь можно выйти из программы.
Как загрузить файл обратно в Паскаль? Программы на Паскале всегда имеют расширение .pas. Зная это, мы всегда будем безошибочно отличать их от других файлов.
Как написать программу на Pascal за 30 секунд.
Открываем файл в Паскале:
Запускаем Turbo Pascal и нажимаем F10.
Выбираем меню File, после Open. Появляется окно открытия файла.
Вводим имя файла в строку ввода или выбираем его из списка.
Нажимаем Enter и Паскаль открывает окно редактора с текстом программы, сохраненной на диске.
Вот и все действия, необходимые для того, чтобы успешно использовать сохранение и загрузку программ. Но кроме этого, программы необходимо запускать и проверять на ошибки. Эти действия тоже осуществляются через меню, но можно также использовать «горячие клавиши» — сочетания клавиш, при которых быстро производиться доступ к пунктам меню, без перехода к нему и соответсвующего выбора.
Итак, мы написали программу и хотим проверить ее на ошибки. Для этого можно просто попробовать ее запустить и посмотреть, работает она или нет. Но запускать программу и проверять ее на ошибки — это разные вещи, зачем же использовать одно вместо другого? Вот и давайте рассмотрим, как сделать это все в отдельности.
Проверка на ошибки — «компиляция».
Имея в окне редактора текст программы, можно проверить его на ошибки — такие как ошибки синтаксиса (забыли поставить «;»), ошибки в служебных словах (написали не begin, a bigin) и другие.
Для того, чтобы это сделать, необходимо нажать клавиши Alt-F9: нажать Alt и удерживая его нажать F9.
После этого начнется процесс проверки и если все написано без ошибок, то появиться окно успешной компиляции, в котором будет мигать надпись
«Compile successfull: Press any key»
Если же возникли какие-либо ошибки, то процесс проверки остановится на первой из них, переведя курсор в строку с ошибкой и вверху или внизу редактора появиться красная строка с названием ошибки. Названия ошибок мы будем разбирать позже.
Процесс, который поисходит при этом, называется «компиляция».
Как сделать игру Теннис на Паскале
Компиляция — это перевод программы с языка программирования на язык машинный, понятный компьютеру.
При нажатии сочетания клавиш Alt-F9 и происходит попытка компиляции, то есть ваша программа переводиться с Паскаля на машинный язык. И если этот процесс не будет прерван ошибками в синтаксисе, структуре или какими-либо еще, то программа может быть запущена и выполнена компьютером.
Как это сделать — запустить программу? Читайте.
Источник: studfile.net
Мастер-класс по информатике «Программирование тестов»
Цель мастер класса – изучить язык программирования Pascal, научить составлять тесты с применением операторов ввода, вывода и условия.
Хусаенова Гульнур Айратовна
Описание разработки
Цель мастер класса – изучить язык программирования Pascal, научить составлять тесты с применением операторов ввода, вывода и условия.
Задачи:
1) обобщить и дополнить имеющиеся знания учащихся о линейных алгоритмах, закрепить знания о блок — схемах, о структуре программ; умение безошибочно располагать команды условия, ввода и вывода; проверить умение отличать операторы условия ввода и вывода.
2)развивать алгоритмическое мышление обучающихся.
3) воспитывать интерес к изучению программирования, умение планировать свою деятельность, воспитывать чувство коллективизма, взаимопомощи, бережного отношения к компьютерной технике.
1. интерактивная доска.
2. мультимедийная презентация. Приложение 4
3. раздаточный материал Приложение 1, 2 (Шаблон — блок — схема, карточка с операторами).
4. демонстрационная таблица Приложение 3 (Операторы и команды в Pascal).
5. Тест в Pascal. Приложение 5, 6
Используемые методы обучения: объяснительно иллюстративный (рассказ, беседа, практическая работа)
Ход мастер — класса:
Целеполагание.
Добрый день, уважаемые коллеги и учащиеся!
Задача современной школы – обеспечить вхождение учащихся в информационное общество, научить пользоваться новыми информационными технологиями.
Наш кружок называется «Основы программирования», цель которого формирование алгоритмического и логического мышления, так же навыков программирования и ИКТ компетентности.
Чтобы быть программистом не достаточно знать Компьютерные технологии, необходимо уметь работать и разбираться в них.
Тема сегодняшнего мастер – класса «Составление тестов на языке Паскаль». Цель которого научить программировать простые тесты. Каждый учащийся составит свой вопрос с вариантами ответа, затем все программы объединим в одну и получим общий проект – программу — тест.
Актуализация
Тест. Повторение операторов ввода, вывода, условия
Ребята посмотрите на экран, давайте вместе ответим на пару вопросов и повторим основные операторы программирования.
(на экране приложение Тест на паскале)
Как вы думаете, можно ли с помощью простых операторов, которые мы повторили только что, составить такую же программу — тест? (Да можно)
Сообщение нового материала
Учащиеся разделены на группы по 3 — 4 человека, на столах лежат карточки с операторами(приложение 1) и блок — схема шаблон алгоритма (приложение 2).
Блок — схемой называется форма записи алгоритма с помощью геометрических фигур.
Оператор ввода и вывода принято обозначать параллелограммом.
Начало и конец Овалом.
Решение учебной задачи
Перед вами шаблон программы — тест.
Ребята ваша задача расставить карточки с операторами согласно блок схеме:
Весь материал – смотрите документ.
-82%
Источник: videouroki.net
The Discord
В свете работы над моими старыми программами из КГУ понадобилось покрывать код юнит-тестами. Как выяснилось после гуглопоиска, для Free Pascal, которым я компилирую свою переработку, существует проект под названием FPTest, представляющий собой каркас для написания юнит-тестов на этом замечательном языке.
Документации по этому проекту довольно немного, и официальная вики, как и README, сильно Lazarus-ориентированы. Поэтому расскажу здесь, как подключить FPTest к существующему консольному проекту и собрать тесты, написанные с его помощью.
Допустим, у нас есть программа
Я разберу первое задание из курса «алгоритмизация и программирование» в КГУ за 2006 год.
Требуется написать программу, которая будет получать число от пользователя с консоли, вычислять значение достаточно сложной математической функции от неё и выдавать результат обратно на консоль. Как-то так:
program Lesson01; uses SysUtils; var x: real; answer: real; begin writeln(‘Enter 0.1 =< x =0.1) and (x<=0.6); answer:= MyFunction(x); writeln(‘Answer is ‘,answer:12:3); end.
Понятное дело, MyFunction где-то определена. Для того, чтобы подключить юнит-тесты, нужно осознать то, что запускать тесты будет другая программа, которую тоже нужно компилировать.
То есть, каждый билд будет собирать две программы: одна собственно та, которая нужна и другая, которая запускает юнит-тесты и рапортует о результатах. Поэтому весь код, который будет покрыт юнит-тестами, выносим в отдельный .pas файл, который будет использоваться как программой с тестами, так и основной программой.
Итого, состав файлов конечного решения задачи выглядит так:
- Lesson01.pas — точка входа основной программы.
- Tests01.pas — точка входа юнит-тестов.
- L01Code.pas — код программы, проверяемый тестами.
- L01Tests.pas — код самих юнит-тестов (а вы как думали? 🙂 ).
Я здесь не буду говорить о том, как писать сами юнит-тесты, используя FPTest. Только о том, как их подключить.
Разнесём код по отдельным файлам
Приведу полные листинги всех четырёх файлов, это важно, потому что boilerplate code, нужный для нормальной работы FPTest, не особо очевиден:
Lesson01.pas
program Lesson01; uses SysUtils, L01Code; var x: real; answer: real; begin writeln(‘Enter 0.1 =< x =0.1) and (x<=0.6); answer:= MyFunction(x); writeln(‘Answer is ‘,answer:12:3); end.
Tests01.pas
program Tests01; uses TextTestRunner, L01Tests; begin L01Tests.RegisterTests; RunRegisteredTests; end.
L01Tests.pas
unit L01Tests; interface uses TestFramework, L01Code; type Lesson1Tests = class(TTestCase) published procedure TestValidInput; procedure TestNegativeXShouldThrowError; procedure TestMinimumAllowedX; procedure TestMaximumAllowedX; end; procedure RegisterTests; implementation uses math; const precision = 0.0001; procedure RegisterTests; begin TestFramework.RegisterTest(Lesson1Tests.Suite); end; procedure Lesson1Tests.TestValidInput; begin Check(MyFunction(0.1) — 12.4244944 < precision, ‘On the left edge function should be calculable’); Check(MyFunction(0.35) — 4.8590140 < precision, ‘Function should be calculable in the middle of interval’); Check(MyFunction(0.6) — 4.8087379 < precision, ‘On the right edge function should be calculable’); end; procedure Lesson1Tests.TestNegativeXShouldThrowError; begin StartExpectingException(EInvalidArgument); MyFunction(-1); StopExpectingException(); end; procedure Lesson1Tests.TestMinimumAllowedX; begin StartExpectingException(EInvalidArgument); MyFunction(0.1 — precision); StopExpectingException(); end; procedure Lesson1Tests.TestMaximumAllowedX; begin StartExpectingException(EInvalidArgument); MyFunction(0.6 + precision); StopExpectingException(); end; initialization end.
L01Code.pas
unit L01Code; interface function MyFunction(x: real) : real; implementation uses Math; function MyFunction(x: real) : real; begin if (x < 0.1) then raise EInvalidArgument.Create(‘Expected x in [0.1, 0.6]’); if (x >0.6) then raise EInvalidArgument.Create(‘Expected x in [0.1, 0.6]’); MyFunction := abs(sin(power(10.5*x, 1/2))) / (power(x, 2/3) — 0.143) + 2*pi*x; end; initialization end.
Как обычно, тестов больше, чем кода.
Связывание вместе
Теперь, когда у нас все эти файлы счастливо лежат в одной папке, нам нужно собирать программу с тестами, указывая компилятору, где лежит папка с исходниками FPTest. Я вот не знал, что для этого нужно использовать параметр -Fu :
$ fpc -Fu»ПУТЬ ДО FPTEST» -Mobjfpc Tests01.pas
Путь можно относительный. Обязательно использовать флаг -Mobjfcp , потому что FPTest у себя внутри использует объектную модель, так что без -Mobjfpc тесты не соберутся.
Саму программу следует собирать уж так, как заблагорассудится, в зависимости от того, что там в ней как работает. Вышеописанная программа собирается без наворотов:
$ fpc Lesson01.pas
Источник: hijarian-sys.blogspot.com