Сборник практических работ по дисциплине «Информатика» «Язык программирования Pascal» Преподаватель: Счастливцева Ю.С. г. Санкт-Петербург Содержание Общие сведения 3 Практическая работа №1. Решение линейных задач 5 Практическая работа №2. Решение задач с ветвлением 6 Практическая работа №3. Оператор выбора 8 Практическая работа №4. Программирование циклов 10 Практическая работа №5. Логический тип данных 12 Практическая работа №6. Одномерные массивы 14 Практическая работа №7. Строковый тип данных 16 Практическая работа №8. Комбинированный тип данных (записи) 18 Практическая работа №9. Решение задач на языке программирования 21 Система основных понятий 24 Общие сведения Язык программирования Паскаль (Pascal) Возникновение и назначение Паскаля Среди современных языков программирования одним из популярных является язык Паскаль. Этот язык разработан в 1971 году и назван в честь Блеза Паскаля – французского ученого, изобретателя механической вычислительной машины. Автор языка Паскаль – швейцарский профессор Никлаус Вирт. Паскаль - структурированный язык программирования, позволяющий решать разнообразные задачи. Структура программы на Паскале 1. Заголовок программы PROGRAM 2. Program ИмяПрограммы; Uses crt; Var (список переменных); Begin (раздел операторов) End. Раздел описания внешних модулей USES CRT; 3. Раздел описания переменных VAR Переменные в программировании обозначаются именами, которые состоят из латинских букв и цифр; первым символом обязательно должна быть буква. 1. Раздел операторов BEGIN … END. (основная часть программы) Типы переменных: Название Диапазон значений Целые типы Byte 0…255 Integer -32768…+32767 Вещественные типы Real 2,9x10-39 - 1,7x1038 Single 1,5x10-45 - 3,4x1038 Логический тип BOOLEAN False, True Операторы ввода, вывода, присваивания Ввод исходных данных с клавиатуры происходит по оператору read или readln (read - читать): read (список переменных); или readln (список переменных); Разница в выполнении операторов read и readln состоит в том, что после выполнения ввода по оператору readln экранный курсор перемещается в начало новой строки, а по оператору read этого не происходит. Вывод результатов происходит по оператору write (писать) writeln (писать в строку): write (список вывода); или writeln (список вывода); Разница в выполнении операторов write и writeln состоит в том, что после выполнения вывода по оператору writeln экранный курсор перемещается в начало новой строки, а по оператору write этого не происходит. Z := A+B Оператор присваивания на Паскале имеет следующий формат: Переменная := выражение Выражение может содержать числовые константы и переменные, знаки арифметических операций, круглые скобки, функции. Знаки основных арифметических операций записываются так: + сложение - вычитание * умножение / деление Математические функции в Паскале: SQR SQRT ABS возведение в квадрат корень квадратный модуль COS (x) косинус x SIN (x) синус x Правила записи арифметических операций: 1. Умножение, деление; 2. Сложение, вычитание; !!! Скобки меняют порядок действий. Практическая работа №1. Решение линейных задач Цель: научиться решать задачи линейного программирования. Теоретический материал Следование (линейный алгоритм) алгоритм, в котором все операции выполняются последовательно одна за другой. Порядок выполнения: команды выполняются последовательно; каждая следующая команда выполняется только после выполнения предыдущей. Особенностью выполнения данной конструкции является тот факт, что следование команд в серии определяется составителем алгоритма и на этапе выполнения не меняется. Это означает, что сначала выполняется команда 1, затем 2 и так далее. П рограммы с линейной структурой составляются из операторов присваивания, ввода, вывода. Пример 1. Написать программу нахождения выражения y=x2-7x+6 на языке Паскаль. Решение: Практическая часть: 1. Составьте программу на языке Паскаль, которая вычисляет периметр и площадь прямоугольного треугольника по заданным длинам двух катетов a и b (формулы: , S=(a*b)/2). 2. Даны два числа x и y. Вычислить их сумму, разность, произведение и частное. 3. Вычислить длину окружности и площадь круга одного и того же заданного радиуса R (формулы: S=πR2, P=2πR) 4. Дана длина ребра куба. Найти площадь грани, площадь полной поверхности и объем этого куба (формулы: Sграни=a2, S=6a2, V=a3). 5. Разработать программу для ввода четырёх целых чисел и вычисления их среднего арифметического значения. 6. Дан объем информации в байтах (переменная b). Перевести в Кбайты, Мбайты. 7. Составить программу на языке Паскаль для решения следующей задачи: даны две переменные X и Y, поменяйте их значения местами, используя третью переменную Z. (Например, если первоначально было: X=1; Y=2, то после обмена должно стать: X=2; Y=1). 8* Вычислить корни квадратного уравнения ax2+bx+с=0 с заданными коэффициентами а, b и с (предполагается, что а≠0 и что дискриминант уравнения неотрицателен). 9* Дано значение а. Не используя никаких функций и никаких операций, кроме умножения, получить значение a8 за три операции. Контрольные вопросы: Запишите ответы на вопросы: 1. Что такое линейное программирование? 2. В чем заключается основная задача линейного программирования? Практическая работа №2. Решение задач с ветвлением Цель: научиться решать задачи с условным операторам. Теоретический материал Для программирования ветвящихся алгоритмов применяются условный оператор (ветвление) и оператор выбора. Ветвление (условный оператор) - это алгоритм в котором в зависимости от условия выполняется та или иная последовательность действий. Порядок выполнения: на первом шаге проверяется условие. Если оно истинно, то выполняется серия команд 1, и на этом выполнение команды ветвления заканчивается. Если условие ложно, то выполняется серия команд 2 и на этом выполнение команды ветвления заканчивается. Особенностью выполнения команды является то, что из двух предложенных серий команд обязательно будет выполнена только одна: либо первая, либо вторая. Ни при каких условиях не могут быть выполнены обе. Запись конструкции: Словесная форма На языке Паскаль Блок-схема Полная форма Если If условие then серия команд 1 То else серия команд 2 Иначе ; неполная форма If условие then серия команд 1 Пример 2. Составить программу нахождения наибольшего из двух чисел a и b. Решение: Практическая часть: 1. Ввести рост человека. Вывести на экран “ВЫСОКИЙ”, если его рост превышает 180 см, и “НЕ ОЧЕНЬ ВЫСОКИЙ” в противном случае. 2. Составьте программу, которая определяет является ли введенное число x двухзначным. 3. Определите, является ли введенное число y отрицательным или положительным. 4. Составить программу, которая спрашивает возраст человека и, если ему 18 лет и больше, сообщает “Замечательно. Вы уже можете водить автомобиль”, а в противном случае – “К сожалению, водить автомобиль Вам рановато”. 5. Найдите наибольшее из трех введенных чисел x, y, z. 6* Ввести 2 числа. Если их произведение отрицательно, умножить его на –2 и вывести на экран, в противном случае увеличить его в 1,5 раза и вывести на экран. 7* Дано целое число. Если оно является положительным то прибавить к нему 1, в противном случае вычесть из него два. Вывести полученное число. Контрольные вопросы: Запишите ответы на вопросы: 1. Опишите конструкцию ветвления на языке Паскаль. 2. Опишите две формы записи ветвления. 3. Дайте понятие условному оператору. Практическая работа №3. Оператор выбора Цель: научиться решать задачи с помощью оператора выбора. Теоретический материал Оператор выбора позволяет программировать ветвления по многим направлениям. Этот оператор организует переход на одну из нескольких ветвей в зависимости от значения заданного выражения (селектора выбора). Формат оператора выбора: Case селектор of 1-ое значение : операция 1; 2-ое значение : операция 2; … N-ое значение : операция N else операция N+1 end; где Case - зарезервированное слово (от англ. "выбор", "вариант"); селектор - выражение, исходя из значения, которого будет выбран оператор из списка для дальнейшего выполнения; of - зарезервированное слово (от англ. "из"); значение - константа выбора; операция - любые операторы языка Pascal, в том числе может быть составной или пустой операторы; else - зарезервированное слово (от англ. "иначе"). Если ни одна из констант не подошла к селектору, то будут выполнены операторы, следующие за else. Блок else не обязателен, поэтому если его нет, оператор case завершит свою работу, так и не выполнив ни одного оператора из списка; end - зарезервированное слово (от англ. "конец"), завершение оператора варианта. П ример 3. Составьте программу, которая в зависимости от порядкового номера кабинета выводит название предмета, который в нем ведется. Решение: Практическая часть 1. Составить программу, которая по данному числу (1-12) выводит название соответствующего ему месяца. 2. Дано целое число K. Вывести строку - описание оценки, соответствующей числу К (1 "плохо", 2 - "неудовлетворительно", 3 - "удовлетворительно", 4 - "хорошо", 5 - "отлично"). Если К не лежит в диапазоне 1 - 5, то вывести строку "ошибка". 3. Для каждой введенной цифры (0-9) вывести соответствующее ей название на английском языке (0 – zero, 1 – one, 2 – two и.т.д). 4. Написать программу, которая по вводимому числу от 1 до 11 (номеру класса) выдает соответствующее сообщение «Привет, k-классник». Например, если k=1, «Привет, первоклассник»; при k=4 – «Привет, четвероклассник». 1. *Составим программу "КАЛЬКУЛЯТОР", которая после ввода двух чисел и одного из знаков +, -, *, / произведёт вычисления, а результат выдаст на экран. Контрольные вопросы: Запишите ответы на вопросы: 1. Каков формат оператора Case? 2. В каких случаях надо использовать CASE вместо IF? 3. Является ли обязательной часть оператора Case Else? Как ее отсутствие повлияет на выполнение программы? Практическая работа №4. Программирование циклов Цель: научиться составлять программы циклических алгоритмов. Теоретический материал Цикл (повторение) - это алгоритм, в котором одна и та же последовательность действий совершается многократно (или ни разу) до тех пор, пока выполняется условие. Порядок выполнения: на первом шаге проверяется условие. Если оно истинно, то выполняется серия команд, составляющая тело цикла и далее опять – проверка условия и.т.д. Повторение выполнения тела цикла происходит до тех пор, пока условие истинно. Если условие ложно, то происходит выход из цикла. Особенности выполнения: серия команд, составляющая тело цикла выполняется как единое целое, от первой команды до последней, и только на следующем шаге проверяется условие входа в цикл. Условие определяет количество повторений. Если оно ложно с самого начала исполнения команды цикла, то количество повторений равно 0. Условие и серия команд должно формироваться таким образом, чтобы избежать зацикливания. Циклы бывают: 1. Цикл с условием цикл с предусловием (цикл-пока); цикл с постусловием (цикл-до); 1. Цикл с параметром. Запись конструкции: Цикл с предусловием Цикл с постусловием Цикл с параметром While Repeat For := То Do Until Do Цикл с параметром Применяется тогда, когда количество повторений заранее известно. При этом параметр меняется от начального значения к конечному значению с определенным шагом и для каждого значения параметра выполняется тело цикла. Пример 4. Составить программу, которая вычисляет сумму натурального ряда чисел от 1 до N. Запишем решения данной задачи с использованием операторов цикла While, Repeat и For. Цикл с предусловием (While) Цикл с постусловием (Repeat) Цикл с параметром (For): Практическая часть 1. Составьте программу, подсчитывающую n факториал. 2. Вывести на экран натуральные числа от 1 до 9 в обратном порядке. 3. Составить программу возведение числа a в степень n. Контрольные вопросы: Запишите ответы на вопросы: 1. Опишите виды циклов. Опишите конструкцию цикла с параметром. 2. Дайте определение понятию цикл. Практическая работа №5. Логический тип данных Цель: закрепить навыки работы с логическими типами данных. Теоретический материал В Паскаль логический тип данных носит название BOOLEAN. Значением логического типа может быть одна из двух констант FALSE (ложь) или TRUE (истина). Логические выражения Логические выражения (условия) – это выражения, которые могут принимать лишь одно из двух значений: true (истина) или false (ложь). Для построения логических выражений используются операции отношения, которые обозначаются знаками: = (отношение на равенство), (отношение на неравенство), (отношение меньше), (отношение больше), (отношение меньше или равно), = (отношение больше или равно). В Паскале предусмотрены следующие операторы отношений: меньше: x не равно: x y больше: x y меньше или равно: x равно: x = y больше или равно: x = y Сложные условия составляются из простых с помощью логических операций: and (логическое «И»), or (логическое «ИЛИ») и not (логическое «НЕ»). При составлении сложных условий операнды логического выражения берутся в скобки (это важно!). Примечание. Во всех заданиях данной группы требуется вывести логическое значение True, если приведенное высказывание для предложенных исходных данных является истинным, и значение False в противном случае. Все числа, для которых указано количество цифр (двузначное число, трехзначное число и т.д.), считаются целыми положительными. Пример 5. В примере шести переменным присваиваются значения простых логических выражений между двумя переменными (x и y). Значения, хранимые в таких переменных, затем выводятся на экран. Пример 6. Дано целое число A. Проверить истинность высказывания: "Число A является положительным". Практическая часть 1. Даны числа x, y. Проверить истинность высказывания: "Точка с координатами (x, y) лежит во второй координатной четверти". 2. Дано целое число B. Проверить истинность высказывания: "Число B является отрицательным". 3. Составьте программу, которая вводит четыре числа (a, b, c, d) и определите истинность следующих утверждений: первое число меньше второго и четвертого; первое число меньше второго или четвертого; одно из чисел равно нулю. 1. Составьте программу, печатающую значение TRUE, если указанное высказывание является истинным, и FALSE в противном случае: число C является средним арифметическим чисел A и B. Контрольные вопросы: Запишите ответы на вопросы: 1. Опишите тип данных BOOLEAN. 2. Назовите основные операции отношения. 3. Назовите основные логические операции которые используются для составления сложных условий. Практическая работа №6. Одномерные массивы Цель: изучить структуру одномерного массива, научиться формировать одномерный массив. Теоретический материал Одномерный массив — это конечный набор однотипных упорядоченных элементов, объединенных одним общим именем. В Паскале массив рассматривается как переменная структурированного типа. Массиву присваивается имя, посредством которого можно ссылаться на него, как на единое целое, так и на любую из его компонентов. В массиве каждый элемент имеет свой порядковый номер. Пример. Массив характеризуют: 1. имя; 2. количество элементов; 3. тип. Элемент массива характеризуют: 1. имя 2. номер 3. значение 4. тип Описание массива (общий вид): Var имя массива: array [] of тип элементов; Формирование массива: 1. С помощью ввода с клавиатуры For i:=1 to 10 do begin write (‘имя массива[‘,i,’]=’); readln (имя массива[i]); end; 1. С помощью случайных чисел Для того чтобы постоянно не запрашивать значения элементов массива используется генератор случайных чисел в Паскаль, который реализуется функцией Random. Для генерации чисел от 0 до n (не включая само значение n, целые числа в интервале [0, N]) используется запись random (n). Перед использованием функции необходимо инициализировать датчик случайных чисел с помощью процедуры randomize. Пример 7. Сформировать массив из 11 целых чисел, вводимых с клавиатуры. Практическая часть 1. Сформировать одномерный массив из 10 элементов случайным образом. 2. Сформировать массив из 20 целых чисел, вводимых с клавиатуры, и вывести элементы массива в обратном порядке. Контрольные вопросы: Запишите ответы на вопросы: 1. Объясните понятие массива, его элемента, индекса, размерности? 2. Как обозначаются и описываются массивы и их элементы? Приведите примеры. Практическая работа №7. Строковый тип данных Цель: изучить строковый тип string; научиться выполнять стандартные операции со строками. Теоретический материал Строка — это упорядоченная последовательность символов. Строковый тип данных – структурированный тип в Паскале. Каждый символ строковой величины занимает 1 байт памяти. Количество символов в строке называется ее длиной. Длина строки может лежать в диапазоне от 0 до 255. Строковая константа – последовательность символов, заключенных в апострофы. Например: ‘информатика‘, ‘ ’ – это пустая строка. Строковая переменная описывается в разделе описания переменных: Var имя переменной: string; Элементы строки идентифицируются именем строки с индексом, заключенным в квадратные скобки. Например: S[1]. Первый символ строки имеет номер 1. Операции над строками 1. Конкатенация (+) применяется для соединения нескольких строк в одну строку. П ример 8.1. ‘Мама’ + ‘мыла’ + ‘раму’ = ‘Мама мыла раму’ 1. Copy (S, Poz, N) выделяет из строки S подстроку длинной N символов, начиная с позиции Poz. Пример 8.2. Значение S выражение результат ‘Мама мыла раму’ Copy (S,6,4) ‘мыла’ ‘Маша ела кашу’ Copy (S,1,8) ‘мама ела’ 1. Lenght (S) определяет текущую длину строки S. Результат – значение целого типа. Пример 8.3. Значение S выражение результат ‘информатика’ Length (S) 11 ‘алгоритм’ Length (S) 8 1. Delete (S, Poz, N) – удаление N символов из строки S, начиная с позиции Poz. Пример 8.4. Исходное значение S оператор Конечное значение S ‘окно’ Delete (S,1,2) ‘но’ ‘алгоритм’ Delete (S,1,4) ‘ритм’ 1. Insert (S1, S2, Poz) – вставка строки S1 в строку S2 начиная с позиции Poz. Пример 8.5. Исходное значение S2 Оператор S1 ‘ЭВМ PC’ Insert (‘IBM-’,S2,5) ‘Си+’ Insert (+,S2,4) Конечное значение S2 ‘ЭВМ IBM-PC’ ‘Си++’ П ример 8.6. Написать программу, которая из слова «самолет» получит «лето». Пример 8.7. Подсчитать количество слов во введенной пользователем строке. Считаем, что слова разделяются исключительно одним пробелом, а первый и последний символы строки не являются пробелами. Практическая часть 1. Даны две строки, введенные с клавиатуры. Соедините эти две строки в одну. 2. Подсчитайте количество символов в строке, введенной с клавиатуры. 3. Дана фраза. Определить сколько в ней предложений (конец предложения обозначается точкой). 4. Подсчитать сколько раз в данной строке S встречается буква ‘а’. Строка введена с клавиатуры. Контрольные вопросы: Запишите ответы на вопросы: 1. Для чего служит тип STRING? 2. Какими способами можно сцепить строковые переменные? 3. Чему равно значение функции Length ('program')? 4. Как удалить несколько символов из строковой переменной? Практическая работа №8. Комбинированный тип данных Цель: получить навыки программирования задач с использованием записей. Теоретический материал Записи — это структурированный тип, состоящий из фиксированного числа компонент (полей) разного типа. Запись содержит совокупность разнотипных атрибутов, относящихся к одному объекту. Описание записей Описание комбинированного типа представляет собой список описаний его элементов (полей). Описание записи выглядит следующим образом: Type Здесь Record и End - служебные слова. = Record :; :; End; После этого в разделе переменных следует описание: Var : ; Пример 9.1. Type Uchenik = record fam: string [15]; {поле для хранения фамилии ученика}; b1, b2, b3, b4, b5: 2..5; {поле для хранения баллов по дисциплинам}; sb: real; {поле для хранения среднего балла} End; Var klass: array [1..25] of uchenik; Пояснение: переменная типа uchenik будет хранить структуру, содержащую информацию об одном ученике. Чтобы хранить информацию обо всех 25 учениках класса, необходимо ввести массив klass, представляющий массив записей. Элементы записи идентифицируются составными именами следующей структуры: . Доступ к полям записи можно осуществить 2-мя способами: 1) С указанием имени переменной и имени поля (составное имя). Составное имя можно использовать везде, где допустимо применение типа поля. Для присваивания полям значений используется оператор присваивания. Пример обращения к полям записи: klass [2].fam, klass [3].sb, klass [4].b4. Ввод фамилий и оценок учащихся, то есть элементов массива klass, можно записать так: For i:=1 to 25 do; Begin Readln (klass[i].fam); Readln (klass[i].b1); Readln (klass[i].b2); Readln (klass[i].b3); Readln (klass[i].b4); Readln (klass[i].b5); End; … 2) С использованием оператора присоединения. Обращение к полям записи имеет несколько громоздкий вид. Для решения этой задачи предназначен оператор with…do…, который имеет следующий формат: With do ; Один раз указав переменную типа запись в операторе with…do…, можно работать внутри данного оператора с именами полей как с обычными переменными, т.е. без указания перед идентификатором поля имени переменной, определяющей запись. For i:=1 to 25 do With klass [i] do Begin Readln (fam); Readln (b1,b2,b3,b4,b5); End; … Пример 9.2. Необходимо заполнить сведения об одном студенте (Ф.И.О., дата рождения, адрес, курс и группа), а затем вывести эти сведения на экран. Решение: Результат выполнения: Практическая часть 1. Необходимо заполнить сведения об одном студенте (Ф.И.О., возраст, телефон, увлечения и любимая книга), а затем вывести эти сведения на экран. 2. Имеются сведения о 5 студентах одного факультета (Ф.И.О., дата рождения, адрес, курс и группа). А затем из общего списка вывести фамилии студентов 2-го курса. Использовать оператор присоединения. Контрольные вопросы: Запишите ответы на вопросы: 1. Понятие записи в Паскале. 2. Что называют комбинированным типом данных? 3. Как описывается комбинированный тип данных? Практическая работа №9. Решение задач на языке программирования Цель: закрепить навыки программирования задач с использованием различных видов алгоритма. Теоретический материал Базовые конструкции алгоритмов – это ограниченный набор стандартных способов соединения этапов алгоритма для выполнения типичных последовательностей действий. Ветвление – это алгоритмическая конструкция, в которой предусмотрено разветвление указанной последовательности действий на два направления в зависимости от выполнения заданного условия (т.е. от истинности или ложности соответствующего логического выражения). Затем исполнение алгоритма выходит на общее продолжение. Ветвление бывает полным и неполным. В случае неполного ветвления при невыполнении условия никакие действия не выполняются. Синтаксис полной конструкции: IF THEN ELSE ; Результатом условия являются значения булевского типа. Если условие истинно (true), то выполняется действие 1, следующее за ключевым словом THEN. Если условие ложно (false), то выполняется действие 2, следующее за ключевым словом ELSE. Синтаксис неполной конструкции: IF THEN ; Под условием понимается логическое выражение, которое принимает два значения: true и false. Если условие истинно (true), то выполняется действие 1. Если условие ложно (false), то никакие действия не выполняются. Оператор выбора Синтаксис полной конструкции: CASE OF ELSE END; Ключ выбора – выражение порядкового типа. Список выбора – одна или более конструкций вида: : где под выражением условие понимается константа выбора, а действие – один оператор. В итоге получаем конструкции вида: : Константа выбора – константа того же типа, что и ключ выбора. Оператор работает следующим образом: в начале вычисляется значение выражения ключ выбора, а затем в последовательности операторов список выбора, отыскивается такой, которому предшествует константа, равная вычисленному значению. Найденный оператор выполняется, после чего оператор выбора завершает свою работу. Если в списке выбора не будет найдена константа, соответствующая вычисленному значению ключа выбора управление передаётся оператору (действие N+1), стоящему за словом ELSE. Цикл (повтор) – это алгоритмическая конструкция, в которой одна и та же совокупность действий, т.е. тело цикла, выполняется многократно. Цикл с предусловием «Пока» Синтаксис: WHILE DO ; Если тело цикла состоит из нескольких простых операторов, то оно будет заключаться в операторные скобки. Тело цикла будет выполняться до тех пор, пока логическое выражение истинно, если оно ложно, тогда происходит выход из цикла. Если логическое выражение ложно, когда WHILE выполняется в первый раз, то тело цикла вообще не будет выполняться. Цикл с постусловием «До» Синтаксис: REPEAT UNTIL ; Здесь тело цикла подразумевает несколько операторов, поэтому операторные скобки не нужны. Тело цикла будет выполняться до тех пор, пока логическое выражение ложно, если оно истинно, тогда происходит выход из цикла. Эта конструкция работает аналогично циклу WHILE, но REPEAT проверяет условие после выполнения действий, это гарантирует хотя бы одно выполнение действий до завершения цикла. Замечание: обе конструкции будут использоваться, когда неизвестно количество шагов (сколько раз будет выполняться тело цикла) Цикл со счётчиком Эта конструкция используется, когда известно количество шагов. Параметр цикла – это величина, с изменением которой связано многократное выполнение цикла. Синтаксис: FOR := TO DO FOR := DOWNTO DO При переходе к обработке оператора FOR управляющей переменной присваивается заданное начальное значение. Затем в цикле выполняется тело цикла (подразумевается один оператор). Каждый раз при выполнении исполнительного оператора управляющая переменная увеличивается на 1 (FOR … TO … DO) или уменьшается на 1 (FOR … DOWNTO … DO). Цикл завершается при достижении управляющей переменной своего конечного значения. Практическая часть 1. Составьте из слов "грамотность" и "личность" слово "отлично", используя операции удаления, копирования элементов строки и операцию склеивания строк. 2. Даны целые числа K и N (N0). Вывести N раз число K. 3. Дан массив из шести целых чисел. Найти сумму этих элементов массива: 4. Напишите программу, которая по введенному числу из промежутка 0..24, определяет время суток и выводит следующее: «Доброе утро» - 4-11 ч. «Добрый день» - 11-16 ч. «Добрый вечер» - 16-23 ч. «Доброй ночи» - 23-4 ч. 1. Ввести число. Если оно больше 8, разделить его на 4, если меньше или равно 8, то умножить на 5. Контрольные вопросы: Запишите ответы на вопросы: 1. Какие существуют основные типы переменных в программировании? 2. Как записывается команда присваивания? 3. Что такое ввод? Как записывается команда ввода? 4. Что такое вывод? Как записывается команда вывода? 5. Перечислите основные алгоритмические конструкции. 6. Система основных понятий Язык программирования Паскаль Целые: 345 -15 Вещественные: 87,11 1,2 Строковые: ‘текст’ константы данные Var (список переменных): тип Var n, b: integer; переменные Var (имя): array [….] of тип Var massiv: array [1..5] of real массивы Операции: + - * / - арифметические; == - отношения; and, or - логические; Функции: sqr() sqrt() abs() … Действия над данными Ввод: read (список переменных); Readln (); операторы Присваивание: переменная := выражение Вывод: write (список вывода); Writeln (r); Ветвление: If лог.выражение then оператор1 else оператор2 If AB then C:=A else C:=B; Цикл с параметром: For переменная := нач.знач to кон.знач do тело цикла For i:=1 to 10 do S:=S+d;