На этом уроке мы с вами вспомним основные характеристики величин, рассмотрим основные структуры программирования, запись программы в виде блок-схемы и много другое.
Величины делятся на константы и переменные.
Константа – это неизменная величина, которая представляется в алгоритме собственным значением. Её значение в течение всей программы не изменяется, то есть оно постоянно.
Переменная же может изменять своё значение. Например, в начале программы она была равна трём, а в конце – десяти.

Любая константа или переменная занимают ячейку памяти, а значение этих величин определяется двоичным кодом в этой ячейке.
Переменная имеет три основных свойства: имя, значение и тип.
Имя переменной – это любая отличная от служебных слов последовательность букв, цифр и символов подчёркивания. Следует запомнить, что при задании имени следует использовать латинский алфавит, а имя должно начинаться с буквы или символа подчёркивания. Прописные и строчные буквы в именах не различаются. Имя не должно совпадать ни с одним служебным словом языка программирования.
Значение переменной – это её числовое представление.
Типы данных делятся на целый, вещественный, логический и символьный.

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

Команда присваивания служит для задания или изменения значений переменной.
То есть присваивание – это действие, в результате которого переменная величина получает определённое значение. Существует несколько методов присваивания.
Так, например, в языке программирования Pascal, значение переменной можно присвоить при помощи оператора присваивания, оператора ввода данных и передачи значения через параметры подпрограмм.
Тем не менее, независимо от того, на каком языке программирования будет написана программа, алгоритм решения любой задачи на компьютере может быть составлен из следующих команд:
· присваивание;
· ввод;
· вывод;
· обращение к вспомогательному алгоритму (подпрограмме);
· цикл;
· ветвление.
Для описания алгоритмов лучше всего использовать блок-схемы.
Рассмотрим основные алгоритмические структуры и их запись на алгоритмическом языке.
Следование – это линейная последовательность действий.

В данном случае серия – это простой или составной оператор. Составной оператор – это серия, заключённая в операторные скобки. В языке Pascal: begin … end.
Далее рассмотрим ветвление. Ветвление – это алгоритмическая альтернатива. Рассмотрим блок-схему полного ветвления.

Если заданное условие выполняется, то управление передаётся серии 1, а если нет – серии 2. Также вам предоставлено полное ветвление, записанное на алгоритмическом языке.
Условие – это утверждение, которое может быть истинным или ложным. Такое утверждение ещё называют логическим выражением.
Также для записи можно использовать неполную форму ветвления.

В ней, если условие выполняется, управление передаётся серии, а если нет, то программа переходит к выполнению остальных команд, следующих за ветвлением.
Цикл – это повторение некоторой группы действий по условию. Существует 3 типа цикла: цикл с предусловием (цикл-пока), цикл с постусловием (цикл-до), цикл с заданным числом повторений.
При цикле с предусловием серия будет выполняться до тех пор, пока условие истинно.

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

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

При выполнении этого цикла переменная получает начальное значение. Затем выполняется серия, входящая в тело цикла. После этого значение переменной увеличивается на шаг и снова выполняется серия. Так происходит до тех пор, пока значение переменной меньше либо равно конечному значению переменной цикла. Как только значение переменной становится больше своего конечного значения, происходит выход из цикла.
Перейдём к примеру.
Нарисовать блок-схему и написать программу на языке программирования Pascal, которая подсчитывает сумму целых чисел, введённых с клавиатуры. Сумма подсчитывается до тех пор, пока вводятся числа в интервале от -10 до 10.
Начнём с блок-схемы. Она будет выглядеть следующим образом:
Начало.
Далее идёт блок-процесс, в котором присвоим переменной S значение, равное 0. После него будет идти блок ввода значения для переменной a.
Затем будет идти блок принятия решения, в котором запишем наш интервал для a от -10 до 10. Если условие ложно, то есть введённое число не входит в указанный диапазон, соответственно будет идти блок вывода суммы. Если же условие истинно, то будет идти блок процесса, в котором присвоим переменной S значение суммы, то есть S + a. После чего будет идти снова блок ввода значения для переменной a.
Затем, после получения нового значения переменной a, возвращаемся к проверке нашего условия.
После блока вывода на экран суммы у нас будет идти конец программы.

А сейчас напишем саму программу. Нам нужно объявить две переменные a и s целого типа. В переменную a будем запрашивать ввод чисел с клавиатуры, в переменной s будем считать сумму всех чисел. После begin присвоим переменной s значение, равное 0. Далее, при помощи операции вывода на экран, попросим пользователя ввести число. При помощи операции Read, присвоим переменной a это значение. Далее нам понадобится цикл «Пока», в котором укажем интервал для нашего a. То есть пока (a > -10) и (a < 10), будет выполняться наш цикл. В нём мы будем считать сумму, которой присвоим значение s + a. Далее в этом же цикле запишем снова оператор вывода на экран с просьбой ввести число, и оператор ввода, при помощи которого будем присваивать переменной a все наши значения. После операторных скобок цикла выведем на экран сообщение, в котором будет записана полученная сумма. Конец программы.

Рациональнее эту программу можно написать при помощи цикла Repeat. Она будет выглядеть следующим образом:

Соответственно, при использовании такого способа решения блок-схема также будет иной.

Рассмотрим ещё один пример. Нам дана блок-схема. Определить, какое значение переменной K получится в результате.


А сейчас рассмотрим программу на языке программирования Pascal. С клавиатуры вводятся два числа 7 и 5, которые присваиваются переменным А и B соответственно. Определить, какой результат будет выведен на экран.
program primer;
var
A, B, Min: integer;
begin
read (A, B);
if A <= B then
Min = A
else
Min: = B
write (Min);
end.

То есть результатом выполнения программы будет вывод на экран числа 5.
Рассмотрим ещё один пример. В массиве хранится рост 12 учеников. Значения представлены в таблице. Написать программу, которая подсчитывает, сколько учеников имеют рост больше 170 сантиметров.

Переходим к решению.
Массив данных о росте учеников зададим в виде целочисленных констант. Далее объявим переменные i и k целочисленного типа. Переменная i – это порядковый номер элементов массива, k – счётчик, с помощью которого будет подсчитываться количество учеников, рост которых больше 170 сантиметров.
Далее, после begin, присвоим переменной k значение 0. Затем организуем цикл от 1 до 12, с помощью которого мы сможем с вами перебрать все элементы массива. В цикле нужно задать условие, которое описано в задании, то есть мы должны записать следующее: if a [i] > 170 then k:=k+1. Это условие говорит о том, что если был найден элемент массива, который больше 170, то в переменную будет записан этот случай путём прибавления единицы. Это условие будет повторяться 12 раз, пока не будут рассмотрены все элементы массива. Нам осталось вывести на экран полученный результат с поясняющим сообщением при помощи операции Writeln. Конец программы.

Запустим её. В результате мы получили данные о трёх учениках, рост которых больше 170. Посмотрим на таблицу, которая была дана по условию задачи.

Действительно, таких учеников всего трое.
Рассмотрим ещё одну задачу.
В лабораторной работе
измеряют массу m
и ребро a пяти образцов кубической формы. Составить программу на языке
программирования Pascal
для расчёта плотности вещества. Плотность вычисляется по формуле
Данные
измерений вводятся с клавиатуры. Результаты измерений и вычислений выводятся в
таблицу.
В начале программы нам необходимо объявить два массива m и a, каждый из которых будет содержать по 5 элементов вещественного типа. Также нам понадобится переменная i целого типа, которая будет обозначать порядковый номер массива.
После слова begin попросим пользователя ввести попарно массу в граммах и ребро в сантиметрах.
Организуем цикл, который будет повторяться 5 раз и содержать одну команду – ввод элементов массивов m и a. То есть при запуске сначала будем вводить массу первого элемента, а затем его ребро, после – массу второго элемента и его ребро и т. д.
Для того, чтобы было более понятно, что будет выводиться на экран, выведем поясняющую фразу при помощи операции Writeln.
Снова организуем массив от 1 до 5, который будет содержать операцию вывода на экран. Сначала мы должны вывести порядковый номер элемента – i, далее поставить двоеточие и число 4 для отступов между элементами. После порядкового номера будет идти масса элемента с двумя цифрами после запятой. Третьим будем выводить ребро элемента также с двумя цифрами после запятой. Ну и последний элемент – плотность. Формулу вычисления плотности мы с вами знаем, поэтому запишем следующее: m [i] / (a[i]*a[i]*a[i]), так как объём вычисляется по формуле a3. И снова зададим формат вывода: 2 цифры после запятой. Конец программы.

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






