Информатика

Урок 7: Начало программирования

Общие сведения о языке программирования Паскаль

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

оПлан урока:

Что такое язык программирования?

Алфавит и словарь Паскаля

Типы данных в Паскале

Структура программы на Паскале

Задачи на линейные алгоритмы и их решение

 

Что такое язык программирования?

Язык программирования – это формальный язык описания компьютерных программ.

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

«Мозг» любого компьютера - процессор, он умеет выполнять лишь небольшой набор команд, называемых машинными, но делает это очень быстро (миллиарды команд в секунду). Для человека машинный язык очень неудобен – программы на нем получаются чрезвычайно сложными и длинными, поэтому было придумано множество более понятных языков программирования, к каждому из которых прилагаются специальные программы – трансляторы, преобразующие команды этого языка в машинные.

Одним из таких языков является язык программирования Паскаль, созданный в 1970 году швейцарским ученым Никлаусом Виртом. Язык назван в честь французского математика Блеза Паскаля – создателя одной из первых механических вычислительных машин.

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

От других языков Паскаль отличается строгостью правил, которая дисциплинирует начинающих программистов и формирует у них структурное мышление – очень полезное качество, позволяющее избегать грубых ошибок.

Алфавит и словарь Паскаля

Основой любого языка программирования является алфавит.

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

Алфавит Паскаля включает:

  • Прописные буквы латиницы (A, B, C, …, X, Y, Z);
  • Строчные буквы латиницы (a, b, c, …, x, y, z);
  • Арабские цифры (0, 1, 2, …, 7, 8, 9);
  • Знаки арифметических и логических операций («плюс», «минус», «умножить», «разделить», «больше», «меньше», «равно» и др.)
  • Ограничители и разделители (апостроф, двоеточие, точка с запятой, круглые, квадратные и фигурные скобки, точка, запятая);
  • Специальные символы («амперсанд», «процент», «решетка», знак подчеркивания и др.).

Некоторые символы, записанные вместе, образуют составные символы, например:

  • := (операция присваивания);
  • >= и <= (≥ и ≤ соответственно);
  • // (начало комментария, который заканчивается после перехода на новую строку).

Из символов алфавита формируются идентификаторы – аналоги слов естественного языка, но построенные по определенным правилам:

  • Идентификатор может состоять из цифр, буквы латинского алфавита и символа подчеркивания.
  • Идентификатор не может начинаться с цифры.
  • Отсутствует различие между прописными и строчными буквами («PROGRAM», «Program» и «program» — один и тот же идентификатор).
  • Максимальное допустимое число символов в идентификаторах зависит от транслятора.

Идентификаторы нужны, чтобы давать имена переменным, константам, функциям и процедурам.

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

Наиболее часто используемые служебные слова Паскаля, представлены в таблице.

1 sluzhebnoe slovo vpaskale

 

Типы данных в Паскале

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

К простым типам относятся: целочисленный, вещественный, символьный, строковый и логический типы.

2 znachenie operatorov v paskale

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

Структура программы на Паскале

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

  • Заголовок;
  • Блок описания данных;
  • Программный блок.

Заголовок программы начинается с ключевого слова program, за которым следует идентификатор имени программы. Завершается строка заголовка символом «точка с запятой».

Блок описания данных включает в себя характеристику констант (const), характеристику переменных (var) и другие задействованные разделы. При описании переменных необходимо указать их имена и типы данных.

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

var i, j: integer; x: real; a: char;

где integer – целый тип данных; real – вещественный; char – символьный.

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

 

Пример того, как должен выглядеть примерный код программы:

program <название программы>;

const <последовательность неизменяемых значений>;

var <тип переменных, которые будут использованы>;

begin <программный блок>

<оператор1>;

<оператор2>;

<оператор n>

end.

 

Операторы – конструкции в языке, благодаря которым можно записать определённые действия, которые нужно провести над данными во время выполнения задачи.

Символ точкой с запятой является разделителем между операторами.

В строке, после которой идёт слово end, точка с запятой не ставится.

 

Оператор присваивания

Самая распространенная операция с данными, которую осуществляет любая компьютерная программа, — это присваивание переменной какого-либо значения, что значит замена одного значения в области памяти на другое. Эта операция происходит благодаря оператору присваивания, который работает по тому же принципу, что и в алгоритмическом языке. Общий вид можно записать так:

<имя переменной> := <выражение>

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

Процесс выполнения операции присваивания можно рассмотреть на примере следующего фрагмента программы:

a := 15;

b := 6;

s :=a+b

При выполнении операции присваивания a :=15  в отдел оперативной памяти компьютера под названием a помещается значение 15. При выполнении операции присваивания b :=6 в отдел оперативной памяти компьютера под названием b помещается значение 6. Операция s :=a+b равносильна сумме значений, заключённых в переменных a и b. После сложения результат помещается в отдел оперативной памяти компьютера, имеющий название s.

 

Представление и получение информации в Паскале

Любая программа компьютера оказывает влияние на данные, меняет их. На вход программе подаются одни данные, далее она проводит над ними определённые операции, а затем выводит результат операций или изменённые данные.

У каждого языка программирования есть свои средства ввода и вывода данных. В Паскале получение информации от пользователя можно осуществить с помощью процедур read() и readln(), а вывод – с помощью процедур write() и writeln().

Окончание ln в этих командах – это сокращение от line («линия», «строка», англ.), оно означает ввод или вывод целой строки, с переводом курсора на новую строчку.

Откуда в программу вводится информация? Наиболее распространённые способы – получение данных из файла или ввод с клавиатуры.

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

Классическим устройством ввода считается клавиатура, а вывода – монитор компьютера. Когда в алгоритме не указано место, откуда нужно считать информацию и куда её вывести, то программа будет пользоваться классическими устройствами. Объединение клавиатуры и экрана носит название консоль. Следовательно, именно консоль является классическим способом получения и представления информации.

Вывод данных на экран

Вывод данных в файл или на экран с помощью процедур write() и writeln().

Допустим, необходимо вывести на экран несколько фраз. Для того чтобы новая фраза появлялась с новой строки, необходимо использовать writeln(), если это не нужно – то write().

В пример можно привести следующие программы:

3 kak napisat programmu paskal

Write() используется тогда, когда необходимо вывести текст на монитор, а после этого получить новые данные без перемещения курсора консоли на следующую строку. К примеру, появляется сообщение «Введите число: », курсор не переходит на следующую строку, поскольку ожидается ввод.

В пример можно привести ещё один алгоритм. В памяти компьютера содержится информация. В программе идёт обращение к ней через переменные number, fl и text. Вывод значений этих переменных можно выполнить различными способами:

4 tablica kod programmy

Во втором примере показано, что процедуры вывода могут принимать несколько аргументов разного типа и корректно выводить их.

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

Получение информации

Получение данных в Паскале осуществляется с помощью процедур read() и readln(). Значения можно ввести, используя клавиатуру, либо извлечь из файла. Стоит рассмотреть именно ввод с клавиатуры.

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

Как пример можно взять следующие программы:

5 programma mozhet prinyat neskolko znachenii 

Входящие данные необходимо отделять друг от друга пробелом или нажатием клавиши Enter.

Есть определённые нюансы ввода с помощью процедур read() и readln(). Если друг за другом идут несколько вызовов процедуры read(), то входную информацию можно разделять любой клавишей. Если подряд идут несколько вызовов процедуры readln(), то входные данные можно разделить только нажав клавишу Enter. В пример можно привести несколько алгоритмов:

9 procedura read paskal

Условный оператор if

Этот оператор используется для создания условных переходов. С его помощью можно слегка изменить последовательность выполнения программы. Оператор ветвления if в языке Паскаль записывается следующим образом:

if <условие> then <первый оператор> else <второй оператор>;

Условие - это высказывание с определённой логикой, от которого зависит то, как программа выполняет определённые действия. Если условие истинно (принимает значение True), то программа выполняет оператор 1, который помещён после связующего слова then («тогда»). Если условие оказывается ложно (принимает значение False), то программа переходит к выполнению оператора 2, который помещён после связующего слова else («иначе»), пропуская оператор 1.

Когда операторы, находящиеся после условия, выполнены, то программа начинает выполнять команды, стоящие после оператора if. Нужно помнить, что «;» перед связующим словом else не ставится.

Слово else может отсутствовать. В этом случае, если условие является ложным, то программа полностью пропускает оператора if и все его команды, переходя к выполнению действий, описанных после него.

Стоит учитывать, что в Паскале за словами else и then можно вписать только один оператор. Исходя из этого необходимо объединить группу инструкций в общий оператор (вписать между связующими слова begin и end). Если этого не сделать, то произойдёт сбой в логике программы. Несмотря на то, что программа не выдаст ошибки, выполнять алгоритм она будет неправильно. Можно привести следующий пример:

6 primer koda programmy paskal

Задачи на линейные алгоритмы и их решение

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

Задача 1. Написать программу, которая выводит на экран произведение и сумму трёх чисел.

Решение:

7 zadacha na lineinye algaritmy

 

Задача 2. На вход подаётся сторона квадрата a. Нужно найти периметр квадрата по формуле 4а и площадь квадрата по формуле а2.

Решение:

8 kak reshat lineinye algaritmy

 

ВОПРОСЫ И ЗАДАНИЯ

Вопрос: 1
Какой из перечисленных типов данных не является встроенным в языке Паскаль?
1real
2integer
3stroka
4boolean
Ответить
3
Вопрос: 2
Какой оператор отвечает за присваивание
1=
2==
3:=
4!=
Ответить
3
Вопрос: 3
Какая процедура отвечает за вывод данных
1If …. then …
2Readln()
3Read()
4Writeln()
Ответить
4
Вопрос: 4
На что можно вывести данные
1Монитор
2Лоб
3Окно
4Стена
Ответить
1
Вопрос: 5
Какое соединяющее слово используется при операторе if
1esli
2else
3togda
4inache
Ответить
2
Допущено ошибок:
Оценка:
Подробнее
Ваши ответы:
1 вопрос:

Какой из перечисленных типов данных не является встроенным в языке Паскаль?
1) real 2) integer 3) stroka 4) boolean
2 вопрос:

Какой оператор отвечает за присваивание
1) = 2) == 3) := 4) !=
3 вопрос:

Какая процедура отвечает за вывод данных
1) If …. then … 2) Readln() 3) Read() 4) Writeln()
4 вопрос:

На что можно вывести данные
1) Монитор 2) Лоб 3) Окно 4) Стена
5 вопрос:

Какое соединяющее слово используется при операторе if
1) esli 2) else 3) togda 4) inache
Посмотреть ответы
Правильные ответы:
1 вопрос: stroka
2 вопрос: :=
3 вопрос: Writeln()
4 вопрос: Монитор
5 вопрос: else