Найти тему
Робототехника

Программирование для начинающих. Уроки Паскаля.#2

Продолжим наш курс по знакомству с программированием. Сегодня продолжим знакомство с базовыми функциями в программировании и в частности с функциями Паскаля.

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

Теперь вопрос, как образом могут поступать данные:

1. От любого устройства (мышь, клавиатура, джойстик)

2. Сетевой протокол с данными от датчика или другого устройства.

3. Данные из оперативной памяти, от другой программы или другого процесса

4. Данные с жесткого диска, или флеш накопителя в виде файла.

5. Данные с других периферийных устройств.

Основные способы перечислены, если считаете, что можно добавить, то смело пишите в комментариях, дополню.

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

Теперь ставим себе правильно задачу, затем учимся её решать.

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

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

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

получили простенький алгоритм.
получили простенький алгоритм.

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

Пишем программу и получаем результат.

{ Здесь пишем любой комментарий программы
Программа расчета площади по радиусу круга.
}
program Urok2_1;
Var {Начало блока, описываем в нем используемые переменны}
radius,area:real; {описываем две переменные вещественного типа}
begin {начало программы}
readln(radius); {вводим значение радиуса }
area:=3.1452*radius*radius; {описываем две переменные вещественного типа}
writeln(area); {выводим результат}
end. {конец программы}

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

код программы и результат
код программы и результат

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

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

2. Предложить участнику ввести радиус круга в заданных величинах.

3. Защитить программу от неправильного ввода. данных

4. Вывести результат в конкретных величинах.

Теперь приступаем к доработке.

1. Добавляем строку после слова begin

writeln('-= Добро пожаловать на Вивитронику =-'); {общее приветствие}

writeln('Это программа расчёта площади круга вер. 2.1'); {пояснение к программе}

write('Введите пожалуйста радиус круга в сантиметрах:');

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

Как видим уже интереснее.
Как видим уже интереснее.

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

Как видим в нижнем окне в появилась ошибка
Как видим в нижнем окне в появилась ошибка

Как избежать ошибки

1. предупредить, чтобы не нарушали,

2. Исключить ошибку.

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

-5

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

begin - начало программы

end - конец программы

write,writeln Вывод на экран, причем write - без переноса каретки (без перехода на новую строку)

read ,readln ввод на экран. read - без переноса каретки

':=' знак присвоить , то есть в нашем случае переменной area присвоили значение площадь.

'*' знак умножить, с помощью него проводим операцию умножить.

Задание на дом:

1. Подсчитать объем шара.

2. Сделать приветствие, показатель что программа Ваша.

3. Задавать вопросы и делиться впечатлением.

Статьи на корректировке, так что если есть замечание то пишите.

Ставьте лайки и делитесь в соц сетях, особенно если Вам все понятно.