Паскаль как писать программы


Язык программирования Pascal для новичков: основные понятия

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

Pascal – один из самых известных языков программирования. Создан в 1968 – 1969 годах швейцарским ученым Никлаусом Виртом, был назван в честь французского математика и физика Блеза Паскаля, и используется для обучения программированию по сей день.

1. Подготовка к работе
Итак, вы решили научиться программировать и начать с языка наиболее для этого подходящего – Pascal. Для начала работы вы должны приобрести (скачать) компилятор.

А что же собственно, такое, этот «компилятор»? Это специальная программа, которая считывает код программы, а затем переводит его на язык машинных кодов. То есть, по сути, все языки программирования – это способ “общения” с компьютером, а компилятор помогает перевести нашу “речь” на понятную ему.

Для Pascal существует немало компиляторов, самые известные из них: Pascal ABC, Free Pascal, Pascal ABC.NET, Turbo Pascal. Все эти программы по-своему хороши, но лично для меня (автора), очень удобен Pascal ABC (или Pascal ABC.NET), поскольку он имеет весьма удобный интерфейс, подробную справку, и даже специально подготовленный для новичков сборник задач.
2. Начало работы
Что ж, перед нами открыто окно компилятора. Чистый, белый (или синий?) лист. Здесь и будут появляться на свет наши первые программы. Перед началом работы следует запомнить, что язык Pascal – это совокупность трёх составляющих: алфавита, синтаксиса (правил написания объектов языка) и семантики (правил использования этих объектов). Алфавит Pascal состоит из:
  1. Прописных и строчных букв латиницы: A...Z, a…z;
  2. Цифр: 0...9;
  3. Специальных символов: + — * / = < >.,:; ‘ # ( ) { } [ ] и их комбинаций: «>=» «
Задача же синтаксиса и семантики состоит в том чтобы, правильно написать раздел программы и правильно составить ее структуру, в противном же случае наша программа будет работать неправильно (или же не работать вовсе!). Вам наверное уже не терпится приступить к самой интересной части, так что сейчас мы с вами попробуем написать ваши первые программы.

Структура программы выглядит так:

Program «имя программы»; — заголовок программы; (Примечание: в конце строки ставится точка с запятой, не во всех, но в большинстве) Uses (название библиотеки); здесь подключаются библиотеки, которые дают дополнительные возможности при создании программ; Label (имя метки); здесь, если необходимо, прописываются метки, позволяющие переходить в разные места программы (о них позже); Const тут указываем переменные с постоянной величиной, например, p=3.14; Var тут через запятую перечисляем все переменные, а затем, указываем тип данных (Пример: Var: K, L, M: integer; N, O: real; (если несколько типов)); Begin (здесь без точки с запятой) Дальше следует основной блок программы; end. – конец программы (обязательно после “end” точка, если только это конец программы, а не операторные скобки).
3. Создание первых программ
Теперь вы знакомы с основной структурой программы. Следует заметить, что из вышеперечисленных разделов обязательными есть только «Var», «Begin» и «end», остальные же могут применяться, если это требуется в ходе выполнения поставленной задачи. Откройте окно вашого компилятора, и введите следующие строки: program Programma1; begin end. Нажмите кнопку «Выполнить»(«Run»). Ничего не происходит? Так и есть, ведь наша программа «пустая», мы не указали что она должна делать, потому ничего и не произошло. Обычно принцип работы программы написанной на языке Pascal состоит из трёх этапов: ввод данных – обработка данных – вывод даннных. Теперь познакомимся с оператором “write”. Он служит для как раз для вывода данных без перехода на новую строку. Попробуем его применить, тем самым сделав нашу программу чуть сложнее и интереснее: program Programma1; begin write(' Pascal '); end. Собственно, так он и применяется. Между апострофами мы можем ввести любой текст, на любой раскладке, и после выполнения программы он появится в окне вывода (или в командной строке, смотря какой у вас компилятор). В данном случае, должно появиться слово «Pascal».
3.1. Операторы write, writeln, read, readln
Теперь поговорим о вводе данных. Мы уже познакомились с оператором write, но существуют также и другие. Writeln, к примеру, используется для вывода данных с переходом на новую строку. Зачем? Ну, например чтобы дать какой-нибудь переменной значение: program Programma1; var A:integer; begin writeln('A= '); read(A); {ввести значение и «прикрепить» его к переменной A} write(A); {Вывести значение переменной A} end. Как вы видите, я вкратце описал каждое действие в фигурных скобках. Это называется комментарий. В дальнейшем я также буду использовать их для объяснений. В этом примере для присваивания к переменной значения, введенного с клавиатуры используется оператор read. Мы видим, что при выполнении он прочитал строку в переменную А. А другой оператор, readln работает по другому. Используя его, мы можем сразу ввести нужную строку, и она прочитается в переменную: program Programma1; var A:integer; begin readln(A); write('A= ', A); {строка будет выглядеть так: «А= ' введенное значение А ' „} end. Теперь, когда вы немного знаете о вводе данных, поговорим о том, какие могут быть данные, и как их обрабатывать.
3.2. Типы данных в Pascal
Пока вы читали эту статью, вы, наверное, уже пару раз натыкались на непонятное вам integer. Внимательно изучив основную структуру программы, вы наверняка поняли, что это тип данных. Но что это означает? Давайте поближе с этим познакомимся. Исходные данные, которые вводятся с клавиатуры или читаются из файла, находяться в переменных, а они, в свою очередь, хранятся в оперативной памяти. Тип данных определяет, какие именно данные можно хранить, и сколько они займут оперативной памяти. Типы данных бывают целыми и вещественными.

•Целые типы данных (для целых чисел):

— byte Объем памяти значений этого типа составляет 1 байт. Диапазон значений для данного типа: от 0 до 255. — word Значения этого типа занимают уже 2 байта памяти, а диапазон значений уже побольше: от 0 до 65535. — integer (уже нам знакомый) Значения также занимают 2 байта памяти, диапазон такого же размера, но включает уже и отрицательные числа: -32786…32787. — LongInt Объем памяти, занимаемый значением типа равняется 4 байтам. Диапазон значений же полностью соответствует названию типа данных: от -2147483648 до 2147483647 — ShortInt Значение типа потребляет 1 байт памяти, диапазон относительно небольшой: -128…127.

•Вещественные типы данных (для чисел с дробной частью):

— Real

Занимаемая значением типа память – 6 байт. Число значащих цифр – 11-12. (значащие цифры – это точные цифры, т.е. не округленные). Диапазон значений типа: от 2.9*10-39 до 1.7*1038.

— Double Размер значения типа – 8 байт. Число значащих цифр – 15-16. Диапазон: 5.0*10324…1.7*10308. — Extended Занимает 10 байт. Число значущих цифр – 19-20. Диапазон: 3.4*10-4932…1.1*104932. Помимо этих, существуют также символьный тип данных (char) и даже логический тип данных (boolean), переменные которого могут принимать значения только true или false. Итак, мы уже немало узнали о вводе и выводе данных. Теперь же перейдем к самой сложной части – обработке данных.
3.3. Обработка данных. Математические операции. Условия. Логические операции.
Мы уже научились вводить данные в программу, теперь попробуем научиться их обрабатывать. Первое, и самое главное, что нам пригодится в этом деле – оператор присваивания. Выражается он вот так: «:=», и используется для присваивания значения переменной. Примеры: A:=1.5; B:=2+A. Теперь, когда мы знакомы с оператором присваивания, можем рассмотреть математические операции Pascal:
  1. Сложение (+);
  2. Вычитание (-);
  3. Умножение (*);
  4. Деление (/);
  5. Целочисленное деление (div) – возвращает целую часть от деления (Пример: 10 div 3 = 3);
  6. Остаток от деления (mod) – возвращает только остаток от деления (Пример: 5 mod 2 = 1);
Помимо приведенных, существуют еще такие операции и функции для работы с числами: abs(x) – возвращает модуль от x; sin(x) – синус угла x (в радианах); cos(x) – косинус угла x (в радианах); int(x) – возвращает целую часть от x; random(число) – случайное число от 0 до заданного; sqr(x) – квадрат x; sqrt(x) – квадратный корень x; inc(x) – увеличить x на 1; dec(x) – уменьшить x на 1. УсловияУсловия в Pascal играют очень большую роль, особенно если алгоритм выполнения программы разветвленный. Формулируется условие следующим образом: if (условие 1) then (действие 1 — основное) else (действие 2 — альтернативное) (if – если, then – то, else – иначе) При построении условия пользуются логическими операциями and, not, or, xor: • and – операнд, объединяющий несколько условий в одно. Действие будет выполняться, только если все перечисленные условия будут верны. program Usloviya; var a:integer; begin readln(a); if (2*2=4) and (3+2=5) then a:=a+1 else a:=a-1; write(a); end. На этом примере мы видим, что все условия, перечисленные через and верны, потому выполнялось только первое действие, идущее через than. Если хотя бы одно условие не было верно, тогда выполнилось бы второе действие. • not – логическое действие с условием из одной части. Если условие неверно, то будет выполняться основное действие (первое), если верно – то альтернативное (второе). program Usloviya; var b:integer; begin readln (b); if not 5=4 then b:=b+1 else b:=b-1; write (b); end. Условие 5=4 неверно, следовательно, будет выполняться первое действие. • or (или) – логический оператор для условия из нескольких частей. Основное действие будет выполняться, если верно хотя бы одно условие. program Usloviya; var d:integer; begin readln (d); if (5=4+1) or (5=4) then d:=d+1 else d:=d-1; write(d); end. Одно из условий верно, поэтому программа перейдет к основному действию. Тоже повторится, если верными будут все условия. Если же ни одно условие не будет верно, то выполниться альтернативное действие. • xor – с этим оператором основное действие выполняется, если верно только одно условие. Если верны несколько условий, или же ни одного, то выполнится альтернативное действие. program Usloviya; var n:integer; begin readln(n); if (6=4) xor (3=5-2) then n:=n+1 else n:=n-1; write (n); end. (Примечание: Не стоит забывать что приоритет логических операций выше чем математических, поэтому, если одни совмещаются с другими, то желательно выделять математические операции скобками, чтобы не возникало ошибок при выполнении программы.) Теперь мы с вами знакомы и с основами обработки данных. Осталось поговорить о некоторых дополнительные процедурах, и функциях для управления программой, которые вам не раз пригодяться при дальнейшем обучении на Pascal.
3.4. Процедуры и функции для управления программой
Поговорим о упомянутой раньше метке. Эта процедура очень легка в использовании и позволяет при надобности перейти в любую часть программы, «перескочив» одну из следующих частей, или же наоборот, вернуться в предыдущую часть. Прописывается метка очень просто: сперва описываем метку в разделе меток (см. п. 3. Начало работы. Структура программы), а затем указывается место перехода, а нужный оператор помечается меткой. program Metka; label 1,2; var A, B:integer; begin readln (A); 2: if A=5 then goto 1; {2: — действие после перехода на соответствующую метку,} A:=A+1; {goto — переход на метку} goto 2; 1: write (A); end. На данном примере, программа увеличивает на 1 введенное число, пока оно не станет равным пяти. Тут мы и можем проследить действие метки. •Delay(время) – остановка программы с задержкой, время в кавычках указывается в миллисекундах. •Readkey – остановка программы до нажатия клавиши, значение функции – код нажатой клавиши. •Exit – досрочное завершение процедуры. Следует заметить, что для работы delay, readkey, и exit необходимо подключить модуль crt (uses crt). Также посмотрите видео: Паскаль с нуля — первая программа.

4. Заключение
Прочитав эту статью, вы получили базовые знания по языку программирования Pascal. В доступных и понятных формулировках здесь были выложены основные понятия, принципы работы с данным языком. Теперь дело переходит к вам в руки. Если вы правильно воспользуетесь этой информацией, и продолжите обучаться языку Pascal, то вскоре сможете владеть им в совершенстве. Поняв принцип работы с Pascal, вы сможете изучить и другие языки программирования, и в будущем писать уже более «серьезные» программы, чем те с которыми вы познакомились при изучении этой статьи. Продолжайте учиться! Удачи! Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.

informpedia.ru

Урок 3. Первая программа в Pascal

Обычно, изучение любого языка программирования начинается с программы Hello, world! Но мы с вами займемся этим чуть попозже, потому что сейчас я хочу рассказать вам о величинах и типах данных в Pascal.

Виды величин

Обычно, изучение любого языка программирования начинается с программы Hello, world! Но мы с вами займемся этим чуть попозже, потому что сейчас я хочу рассказать вам о величинах и типах данных в Pascal. Что такое величина? Величина — это отдельный информационный объект, хранящийся в памяти компьютера. Существуют две классификации величин. Мы рассмотрим каждую в отдельности.

Более подробно мы поговорим о них в последующих уроках.

В свою очередь числовой делится на два типа.

Привожу сразу обозначение этого типа в Паскаль

Символьные тоже делятся на два типа.

Вторая классификация величин.Константа — значение неизменно. Переменная — значение может меняться в течение работы программы. Переменные обозначаются символическими именами, которые называются идентификаторами. Как присвоить значение какой либо переменной? С помощью команды присваивания! Команда присваивания в Паскаль: < переменная >:= < выражение >

Первая программа на Pascal

Структура программы в Паскаль

Заголовок

Program <  имя переменной >;

Объявление переменных и констант

const = ; var : ;

Раздел операторов

Begin ; ; …

end.

Ввод и вывод в Паскаль

У вас, наверняка, возникает вопрос: «Как вводить значения переменных с клавиатуры?», а также: «Как вывести на экран полученный результат?». Для этого используются четыре специальных оператора:

Для ввода:
  • read(Переменную)
  • readln(Переменную)
И для вывода:
  • write(Текст в  »)
  • writeln(Текст в »)

«В чем разница между read и readln, write и writeln?»: снова озадачитесь вы. Ответ прост. Если добавляете «ln» (что расшифровывается, как  Line), то курсор переносится на следующую строку.

Hello, World на Pascal

Теперь вы готовы написать первую программу.

Program Hello_World; {фигурные кавычки позволяют вставить комментарий к коду} Begin Write('Hello, World!'); End.

Ну, тут все понятно. Чтобы разнообразить решение предлагаю решить несколько задачек этого типа.

Задача 1.  Требуется запросить имя пользователя, а затем вывести «Привет, !» Для решения этой задачи нам потребуется строковой тип данных — string.

Program Hello_boy_girl; {фигурные кавычки позволяют вставить комментарий к коду} var name: string; {объявляем name -- это новая переменная} Begin Write('Введите свое имя: '); {так как мы используем write, курсор будет мигать после двоеточия} Read(name); {Считываем все, что ввел пользователь} Write('Привет,', name,'!'); {Обратите внимание! Переменная отделяется от кавычек ЗАПЯТЫМИ!} End.

Задача 2.  Требуется узнать сколько лет пользователю, а затем вывести  «Вам   лет». Очевидно, что для решения этой задачи нам потребуется целочисленный тип данных — Integer.

Program How_old_are_you; var years: integer; {объявляем years -- это новая переменная} Begin Writeln('Сколько вам лет?'); {так как мы используем writeln, каретка будет мигать под надписью} Read(years); {Считываем все, что ввел пользователь} Write('Вам ', years,' лет.'); End.

Ну, вот и все! Все, что я хотел рассказать вам в сегодняшнем уроке. Вы узнали, что такое величина в Pascal, и выучили основные типы. А также научились создавать простейшие линейные программы. Более подробно про типы в PascalABC.Net мы поговорим в следующих уроках. Кстати, про PascalABC.Net. Понятно, что писать программы на листочках бесполезно, и вы должны тренироваться на компьютере. По этой ссылке скачайте последнюю версию PascalABC.Net для Windows. Вот, как выглядит интерфейс программы при запуске.

P.S. Давайте выделим две особенности Pascal:

  1. Паскаль НЕ чувствителен к регистру, то есть  и program, и Program, и PrOgRaM для него ничем не отличаются. А потому с самого начала привыкайте писать в нижнем регистре, чтобы при переходе на другой язык программирования не испытывать никаких проблем с этим;
  2. Имя программы в Pascal не играет никакого значения, оно не несет в себе никаких полезных функций. Если хотите вы можете просто не писать ЕГО!

P.P.S.  В мире наиболее популярны три операционные системы: Linux,  Mac OS  и Windows. А если у вас не  Windows? Какой компилятор выбрать тогда? Об этом мы с вами поговорим в уроке номер N.

learnpascal.ru

Паскаль (Pascal) — основы программирования для начинающих

1001student.ru > Математика > Паскаль (Pascal) — основы программирования для начинающих

Пожалуй, нет ни одного современного человека, кто бы не знал язык Паскаль (основы программирования). И это не удивительно! Еще в учебнике по информатике для школьников расписаны самые основные понятия этой уникальной программы.

Сейчас, в век информационных технологий, каждый может провести для себя обучение по самоучителю онлайн (пройдя курсы «Изучение языков программирования с нуля»; «Паскаль для чайников» и другие).

История изучаемого языка не так проста: Паскаль претерпел множество изменений, прежде чем школьники увидели его в том виде, в каком его преподают на уроках. Это был самый первый простой язык (ord pascal) для программирования, помогающий решить множество практических задач прошлого столетия (1970 год). Он был разработан группой ученых.

С расширением платформ были созданы новые версии этой программы, а Паскаль стал классическим языком программирования.

Ниже разберемся: что такое Паскаль, каковы его основные инструменты. Рассмотрим операции и функции программы, ее специфические особенности. На примерах поймем, как она работает. Научимся писать и работать на языке Паскаль.

Оглавление:

  • Что такое язык программирования Паскаль
  • Особенности системы PascalABC.NET
  • Примеры программ на PascalABC.NET
  • Паскаль для начинающих – основные понятия
  • Структура программы
  • Функции управления программой
  • Заключение

Что такое язык программирования Паскаль

Это базовая высокоуровневая программа. Она занимает первое место в учебных планах многих школ и вузов Российской Федерации.

Особенности системы PascalABC.NET

Всё познается в сравнении, поэтому преимущества этой программы рассмотрим в соотношении с другим языком BASIC.

Итак, что характерно для языка Паскаль и что не подходит для Бейсика:

  1. Во-первых, наличие компилятора, позволяющего скачивать Паскаль на любые платформы.
  2. Во-вторых, все версии этой программы совместимы между собой.
  3. В-третьих, структурированные типы данных помогают программисту точно составить необходимый алгоритм решения практической задачи, при этом защищая его.
  4. В-четвертых, наглядность и логичность интерфейса программы: все команды просты и понятны.
  5. В-пятых, переход на другой, более высокий по уровню язык программирования, достаточно прост.

Примеры программ на PascalABC.NET

Сумма вводимых целых чисел

Произведение целых чисел

Сколько нечетных среди n введенных

Защита от неверного ввода

Вывод 10 первых степеней двойки

Найти сумму цифр целого положительного числа m

Разложение числа на простые множители

Паскаль для начинающих – основные понятия

Разберем базовые понятия, помогающие правильно написать программу на данном языке.

Рабочая область

Как выглядит рабочее пространство?

Теперь рассмотрим основу: алфавит и структуру.

Алфавит Паскаль

Что нужно знать? Алфавит — это набор символов, необходимый при составлении программы.

Что к ним относится:

  1. Латинские прописные, строчные буквы (А, В, С….а,b,с).
  2. Арифметические символы (0, 1, 2…).
  3. Специальные знаки (препинания, скобки, кавычки, арифметические знаки и т. д.).
  4. Неделимые символы (:=, ˃=…).
  5. Служебные слова:
  • and – и;
  • array – массив;
  • begin – начало;
  • do – выполнить;
  • else – иначе;
  • for – для;
  • if – если;
  • of – из;
  • or – или;
  • procedure – процедура;
  • program – программа;
  • repeat – повторять;
  • then – то;
  • to – до;
  • until – до (= пока);
  • var – переменная;
  • while – пока.

Cледует учесть: константы, операции не должны носить те же названия, что и служебные слова (длина – любая).

Итак, что же входит в «иерархию» данной программы?

По своей структуре этот язык делится на 3 раздела:

  • название;
  • данные;
  • действия.

Обратите внимание: переменные нужно перечислять через запятую, а после через «:» указать их тип. Завершить написанное «;».

Действия начинаются с «begin» и заканчиваются «end» с точкой.

Структуру можно представить так:

Кстати, операторы между собой разделяются точкой с запятой.

Операторы write, writeln, read, readln

Выясним, как происходит вывод и ввод информации.

Вывод

Как таковых операторов вывода в этом языке нет, но есть специальные слова, которые помогают запустить необходимые функции. Это write, writeln.

В чем их главное отличие? При вводе или выводе последующей информации после них: в первом случае последующая информация будет выводиться на ту же строку, где и написан оператор. А вот во втором – на следующую.

Ввод

Для ввода существуют тоже свои слова: read, readln (= readkey).

Они отличаются друг от друга точно так же, как и предыдущие операторы (при выводе).

Целый тип данных

Выделяют 3 основных вида:

С ними также проводят простые действия:

  • сложение – «+»;
  • вычитание – «-»;
  • умножение – «*»;
  • деление – «div».

Кроме того, разрешено проводить отношения и сравнения (больше или равно — ˃ =).

Вещественные типы данных

К таким переменным относятся дробные числа (например, число пи). Здесь они называются real.

Что нужно помнить? Чтобы ввести формулу дробного числа, надо вместо запятой использовать точку. Для записи степеней (х * 10у) 10 заменяется Е и число имеет запись:

х Е у.

С ними можно выполнять как самые простые арифметические действия, так и более сложные:

  • квадратный корень – sqrt;
  • абсолютная величина – abs;
  • квадратичная функция – sqr;
  • синус – sin;
  • косинус – cos;
  • арктангенс – arctan;
  • натуральный логарифм – ln;
  • экспонента – exp.

Обработка данных

Помимо перечисленных выше функций (в предыдущих 2 пунктах), есть и другие:

  • целая часть числа – int;
  • дробная часть числа – frac;
  • получение целой части числа – trunc;
  • округление до целого – round;
  • преобразование порядкового типа – ord;
  • преобразование кода в символьный тип – chr;
  • определение предыдущего значения величины – pred;
  • определение последующего значения величины – succ.

Математические операции

Математические функции и операции были рассмотрены при разборе целых и вещественных данных.

Остановимся на типах констант и переменных. Какие они бывают?

Простые включают в себя подтипы:

  • целые – integer;
  • логические – boolean;
  • символьные – char;
  • перечисляемые;
  • интервальные;
  • вещественные.

Строковые записываются командой string. Ссылочные представлены соответствующей формой.

Структурированные делят на:

  • массивы – array;
  • записи – record;
  • множества – set;
  • файл – file.

Для каждого типа характерны свои наборы операций.

Условия

Если есть альтернативные команды и функции, то с помощью операторов if, then, else можно записать необходимые команды для решения практической задачи.

Схема представлена на рисунке ниже.

Логические операции

Операции основаны на истине факта или его лжи.

Выделяют 3 вида таких функций:

  1. Odd – если нечетное число, то истина (наоборот – ложь).
  2. Eoln – истина на конце строки (в другом месте – ложь).
  3. Eof – истина в конце файла (в другом месте – ложь).

Функции управления программой

Какие еще существуют процедуры:

  • Inc – увеличение числа;
  • Clrscr – очистка предыдущих результатов работы программы;
  • Uses crt – запуск clscr;
  • Length – возвращение длины строки;
  • Val – преобразование строки в число;
  • Pos – отыскать в строке первое преобразование;
  • Assign – связывание переменной с файлом;
  • Upcase — перевод строчных букв в заглавные.

Заключение

Таким образом, чтобы стать хорошим программистом, для начала нужно изучить основу. Паскаль для этого станет наилучшим выбором.

1001student.ru

❶ Как программировать на Pascal

Вам понадобится

  • Среда программирования на языке Pascal

Инструкция

Любая программа на Pascal использует набор стандартных процедур и функций для обработки информации, а также операции ввода и вывода данных на внешние устройства или экран. Данные процедуры содержатся в специальных библиотеках, которые следует подключить перед использованием. В самом начале файла, содержащего ваш программный код, укажите подключаемые библиотеки командой uses. Так, при необходимости вывода данных на экран запишите строку вида: uses crt. Основной программный код в Pascal всегда заключается между двумя операторами: Begin и Еnd. Оператор Begin указывает на начало программы, а Еnd – на ее конец. Любая законченная группа выражений, например внутри цикла или после условия, также отделяется от другого кода операторами «begin-end». Синтаксис языка Pascal требует, чтобы любое выражение в коде программы заканчивалось символом «;» и только последний завершающий Еnd - точкой. Перед написанием основного тела программы определите переменные и типы, которые вам нужно будет использовать в алгоритме. Переменные определяются оператором var, типы - type. Задайте уникальное имя переменной и укажите необходимый тип данных. В Pascal существует несколько стандартных типов данных. Основные из них определяют строковые (string), символьные (сhar) и числовые значения (integer, real).

Начните основное тело программы оператором Begin. В теле пошагово распишите алгоритм своей задачи, используя составные и условные операторы (begin...end, if), а также операторы выбора или цикла (case, while).

При необходимости создайте собственные функции. Описание функций поставьте перед основным телом программы. Выражение вида: function My_Func(n:integer, c: integer):boolean означает объявление функции с именем My_Func, в которую передаются два аргумента типа integer. При этом сама функция имеет тип boolean и может принимать значение true (истина) или false (ложь). После заголовка данной функции опишите раздел ее переменных var и распишите код в операторах «begin-end». В основном теле программы вызовите функцию с помощью обращения к ее имени. При этом в скобках передайте в функцию необходимые аргументы: My_Func( 2, 3).

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

www.kakprosto.ru

Структура программы в Pascal

Итак, на предыдущей странице мы определились со следующими понятиями: program, integer, real, const, var, begin, end, write, writeln, read, readln. Давайте напишем простые программы на Паскале с их использованием. Но сначала выясним, из каких частей состоит программа на Паскале.

Любая программа на языке программирования Pascal имеет три составляющие: 1) заголовок; 2) раздел описаний; 3) тело программы.

✎ 1) Заголовок – это слово Program , после которого идет название программы латиницей и точка с запятой в конце. Название не может начинаться с цифры, не должно совпадать с зарезервированными словами (begin, end, integer и т.п.) или с названиями переменных из раздела описаний (см. ниже), а также недопустимо использование каких бы то ни было символов (‘@’, ‘%’, ‘&’ и т.п.), кроме подчеркивания. Название желательно давать со смыслом, которое отображало бы суть самой программы. Но заголовок писать не обязательно.

✎ 2) Раздел описаний – Поскольку сначала мы будем рассматривать простейшие задачи, то у нас во втором разделе будет находиться или описание констант, или переменных (см. пп. 4 и 5 статьи Введение в Pascal).

✎ 3) Тело программы – блок операторов, в котором записываются команды для выполнения. Начинается этот блок словом begin («начало»), а заканчивается словом end. («конец») с точкой в конце(пп. 6, 7 той же статьи).

Таким образом, в общем случае программа на Паскале выглядит следующим образом:

1   2   3   4   5   6   7   8   9   10  Program ; begin ; ; . . . . . . . ; end.

При решении простейших задач ограничимся сначала целыми числами. Перед тем как начать программировать, укажем простейшие 4 действия над числами в Паскале: «+» − сложение, «-» − вычитание, «*» − умножение, «/» − деление. Как видим, в программировании и математике элементарные действия над числами обозначаются одинаково. Решим следующую задачу:

Задача. Пусть даны целые числа A и B. Найти их сумму.

Назовем программу нахождения суммы как Summa. Тогда часть кода, отвечающая за название программы, будет иметь вид:

1  Program Summa; { программа называется Summa }

Обозначим сумму чисел A и B через S. Поскольку числа целые, то и сумма будет целым числом. Таким образом, в описании чисел A, B, S будем использовать переменную целого типа integer. Но как описать эти числа в разделе описаний – как константы (const) или как переменные (var)? Все зависит от условия задачи. Мы можем числа A и B записать и как константы, и как переменные. Но в любом случае сумма S будет переменного типа, поскольку нам неизвестно её значение.

Итак, пусть дано значение чисел A и B, равное, например, 23 и 76 соответственно. Поскольку мы знаем значения наперед, то A и B будут типа const, а S опишем как var. Учитывая, что описание констант идет перед описанием переменных, раздел описаний в этом случае будет следующим:

1   2   3   4   5   6  Const A = 23; B = 76; var S: integer;

Таким образом, тело программы будет состоять из вычисления суммы S и вывода её на экран. В паскале, чтобы вычислить сумму А и В, нельзя просто записать S = A + B; такая запись возможна, если надо проверить, не равно ли число S сумме A + B. А чтобы в переменную S записать значение суммы А + В, надо значение этой суммы «присвоить» переменной S, т.е. сумму А + В записать в то место памяти компьютера, которое выделено для переменной S. Это как бы «впихивание» значения одного числа в значение другого. Записывается присваивание так:

S := A + B;

Для вывода результата используется оператор вывода write с комментарием на экране:

write('Сумма чисел 23 и 76 равна: S = ', S);

Объединяя наши 1)заголовок программы, 2)раздел описаний и 3)тело программы, получим небольшой код, который можно скопировать в PascalABC.Net или в другую версию Pascal:

1   2   3   4   5   6   7   8   9   10   11   12   13   14   15  Program Summa; { программа называется Summa } Const A = 23; B = 76; var S: integer; begin S := A + B; { сумма чисел A и B } writeln('Сумма чисел 23 и 76 равна: S = ', S); readln {

progmatem.ru

Примеры программ на Pascal

Задание:

Ввести с клавиатуры n чисел. Определить количество четных.

Скачать файл .pas

Код программы:

var n,i,k,a:integer; begin writeln('введите количество чисел'); readln(n); a:=0; for i:=1 to n do begin writeln('введите ',i:1,'-е число'); readln(a); if a mod 2=0 then k:=k+1; end; writeln('кол-во четных чисел ',k); readln; end.

Задание:

Дано четырехзначное число. Верно ли, что сумма первой и последней цифр равна сумме средних цифр?

Пример теста:

1234 — да: 1+4=2+37459 — нет: 7+9 ≠ 4+5

Скачать файл .pas

Код программы:

var n,p1,p2,p3,p4:integer; begin writeln('введите четырехзначное число'); readln(n); p1:=n div 1000; p4:=n mod 10; p2:=(n div 100) mod 10; p3:=(n div 10) mod 10; if p1+p4=p2+p3 then writeln('right') else writeln('false'); readln; end.

Задание:

Решение квадратного уравнения ax2+bx+c=0

Пример теста:

a

b

c

x

0

0

0

любое

0

0

5

нет решений

0

2

5

-2,5

1

1

-6

x1=2; x2=-3

16

-24

9

0.75

2

1

3

нет решений

Скачать файл .pas

Код программы:

var a,b,c,D,x1,x2:real; begin writeln('введите a,b,c'); readln(a,b,c); if a=0 then if b=0 then if c=0 then writeln('x любое') else writeln('нет решений') else begin x1:=c/b; writeln('x=',x1:12:6); end else begin D:=b*b-4*a*c; if D>0 then begin x1:=(-b-sqrt(D))/(2*a); x2:=(-b+sqrt(D))/(2*a); writeln('x1=',x1:12:6); writeln('x2=',x2:12:6); end else if D=0 then begin x1:=-b/(2*a); writeln('x=',x1:12:6); end else writeln('нет решений'); end; readln; end.

Задание:

При попадании в маленький круг (радиус = 1), игроку начисляется 2 балла, при попадании в большой круг (радиус 2) — 1 балл, мимо мишеней — 0 баллов.

Пример теста:

0.5; 0.6 — 2 -1.2; -1.3 — 1

2.6; 3 — 0

Скачать файл .pas

Код программы:

var x,y:real; z:byte; begin writeln('введите координаты'); readln(x,y); if x*x+y*ythen z:=2 else if x*x+y*ythen z:=1 else z:=0; writeln('ваш результат ',z); readln; end.

Задание:

Вычислить значение функции

Пример теста:

при x = 2, y = -4.441979

Скачать файл .pas

Код программы:

var x,y:real; begin writeln('введите x'); readln(x); y:=(arctan(x)-exp(x))/sqrt(abs(x)); writeln('y=',y:12:6); readln; end.

Задание:

Найти сумму элементов столбца, содержащего максимальный элемент. Если максимальный элемент встречается несколько раз, то вычислить сумму столбца, в котором максимальный элемент встречается в последний раз. То есть в тесте взять такую матрицу, чтобы максимальный элемент встречался в несколькх столбцах.

Пример теста:

1 2 3 4 7 1 3 0 2 7 4 3

1 3 2 1

Ответ: 13 (второй столбец: 2+1+7+3=13)

Скачать файл .pas

Код программы:

type meow=array[1..10,1..10] of integer; var a:meow; i,j,m,n:byte; max,s,k:integer; begin writeln('введите число строк и столбцов '); readln(n,m); for i:=1 to n do begin writeln('введите строку ', i); for j:=1 to m do readln (a[i,j]); end; writeln ('матрица А'); for i:=1 to n do begin for j:=1 to m do write (a[i,j]:4, ' '); writeln; end; max:=a[1,1]; for i:=1 to n do for j:=1 to m do if a[i,j]>=max then begin max:=a[i,j]; k:=j; end; for i:=1 to n do begin for j:=k to k do s:=s+a[i,k]; end; writeln('s=',s); readln; end.

studentoriy.ru


Смотрите также