Turbo Pascal для начинающих

         

Case


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

инструкция case используется для выбора одного из нескольких направлений дальнейшего хода программы (последовательности инструкций, которые должны быть выполнены); выбор последовательности инструкций осуществляется во время выполнения программы в зависимости от равенства значения переменной-селектора константе, указанной перед группой инструкций; в качестве переменной-селектора можно использовать переменную целого (integer) или символьного (char) типа.

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

Введите номер месяца (число от 1 до 12) и нажмите <Enter>
-> 11
Зима.

94. Написать программу, которая запрашивает у пользователя номер дня недели и выводит одно из сообщений: "Рабочий день", "Суббота" или "Воскресенье".
95. Написать программу, вычисляющую стоимость междугороднего телефонного разговора (цена одной минуты определяется расстоянием до города, в котором находится абонент). Исходными данными для программы являются код города и продолжительность разговора. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, и коды некоторых городов выделены полужирным шрифтом).

Вычисление стоимости разговора по телефону. Введите исходные данные: Код города -> 812
Город Код Цена минуты, руб.
Владивосток 423 2,2
Москва 095 1,0
Мурманск 815 1,2


Самара 846 1,4
Длительность (целое количество минут)—> 3 Город: Владивосток Цена минуты: 2.20 руб. Стоимость разговора: 6.60 руб.

96. Написать программу, которая после введенного с клавиатуры числа (в диапазоне от 1 до 999), обозначающего денежную единицу, дописывает слово "рубль" в правильной форме. Например, 12 рублей, 21 рубль и т. д.
97. Написать программу, которая после введенного с клавиатуры числа (в диапазоне от 1 до 99), обозначающего денежную единицу, дописывает слово "копейка" в правильной форме. Например, 5 копеек, 41 копейка и т. д.
98. Написать программу, которая вычисляет дату следующего дня. Ниже представлен рекомендуемый вид экрана во время работы программы, (данные, введенные пользователем, выделены полужирным шрифтом).

Введите цифрами сегодняшнюю дату (число месяц год) —> 31 12 1999.
Последний день месяца!
С наступающим новым годом!
Завтра 1.1.2000.



Файлы


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

в программе, которая выводит результаты в файл или читает исходные данные из файла, должна быть объявлена файловая переменная типа text;
для доступа к конкретному файлу файловую переменную нужно связать с этим файлом (делается это при помощи инструкции assign); для того, чтобы файл был доступен, его надо открыть (для ЧТеНИЯ С ПОМОЩЬЮ ИНСТРУКЦИИ reset, ДЛЯ заПИСИ — rewrite, для добавления — append); при работе с файлами возможны ошибки, например, из-за того, что программа пытается открыть файл, которого нет, поэтому после каждой инструкции, которая может привести к возникновению ошибки, желательно, используя функцию iOResuit, проверять код завершения операции с файлом: чтобы программа могла контролировать результат выполнения операции с файлом, в ее текст надо поместить директиву запись в файл выполняют инструкции write и writein, чтение — read и readin, причем в качестве первого параметра этих инструкций следует указывать файловую переменную; по завершении работы с файлом его нужно обязательно закрыть инструкцией close; файл, созданный программой, в которой тип файловой переменной объявлен как text, можно просмотреть при помощи редактора текста.

225. Написать программу, которая на сменном диске компьютера (А:) создает файл numbers.txt и записывает в него 5 введенных пользователем целых чисел. Просмотрите при помощи редактора текста, например, встроенного в Norton Commander, созданный файл. Убедитесь, что каждое число находится в отдельной строке.
226. Напишите программу, которая дописывает в файл a:\numbers.txt 5 введенных пользователем целых чисел. Убедитесь при помощи редактора текста, что в файле находятся 10 чисел.
227. Написать программу, которая выводит на экран содержимое файла a:\numbers.txt.
228. Написать программу, которая вычисляет среднее арифметическое чисел, находящихся в файле a:\numbers.txt.
229. Написать программу, которая позволяет просматривать текстовые файлы (выводит на экран содержимое файла), например, файлы исходных программ Turbo Pascal. Имя просматриваемого файла должно вводиться во время работы программы. Рекомендуемый вид экрана приведен ниже.

Просмотр текстового файла.
Введите полное имя файла и нажмите <Enter>
—> c:\tp\pas\numb.pas

230. Написать программу, которая дописывает в файл phone.txt, находящийся на диске А:, фамилию и номер телефона, например, вашего товарища. Если файла на диске нет, то программа должна создать его. В файле каждый элемент данных (имя, фамилия, телефон) должен находиться в отдельной строке. Рекомендуемый вид экрана во время работы программы приведен ниже.

Добавление в телефонный справочник.
Фамилия —> Сидоров
Имя —> Вася
Телефон -> 234-84-37
Информация добавлена.
Для завершения работы нажмите <Enter>.

231. Написать программу, используя которую можно за один сеанс работы добавить информацию о нескольких людях в файл a:\phone.txt.
232. Написать программу, которая позволяет найти нужные сведения в телефонном справочнике (a:\phone.txt). Программа должна запрашивать фамилию человека и выводить его телефон. Если в справочнике есть одинаковые фамилии, то программа должна вывести список всех людей, имеющих эти фамилии. Рекомендуемый вид экрана во время работы программы приведен ниже.

Поиск в телефонном справочнике.
Введите фамилию и нажмите <Enter>. Для завершения работы
с программой сразу после приглашения нажмите <Enter>
—> Петров
В справочнике данных о Петров нет.
—> Иванов
Иванов Вася 578-12-45
Иванов Сергей 244-34-02

233. Напишите программу, которая объединяет возможности
программ Добавление в телефонный справочник И Поиск в телефонном справочнике. При запуске программы на экран должно выводиться меню:

*** Телефонный справочник ***
1. Добавление
2. Поиск
3. Завершение работы
Введите номер пункта меню и нажмите <Enter>



Факультатив


173. Написать программу подведения итогов Олимпийских игр. В программу пользователь должен ввести количество медалей разного достоинства, завоеванное каждой командой-участницей, а программа — подсчитать общее число медалей и соответствующее число очков, после чего упорядочить список в соответствии с набранным количеством очков, которое определяется по следующему правилу: за золотую медаль команда получает 7 очков, за серебряную — 6, за бронзовую — 5.
Рекомендуемый вид экрана во время работы программы приведен ниже (данные, введенные пользователем, выделены полужирным шрифтом).

Итоги Олимпийских игр

Введите в одной строке количество золотых,

серебряных и бронзовых медалей.

Австрия -> 3 5 9

Германия -> 12 9 8

Канада -> 6 5 4

Китай -> 0 6 2

Корея -> 3 1 2

Норвегия -> 10 10 5

Россия -> 9 6 3

США -> 6 3 4

Финляндия -> 2 4 6

Япония -> 5 1 4 .

Итоги зимней Олимпиады в Нагано, 1998 г.   Cтрана Золото Серебро Бронза Всего Очков   1 Германия 12 9 8 29 178   2 Новергия 10 10 5 25 155   3 Россия 9 6 3 18 114   4 Австрия 3 5 9 17 96   5 Канада 6 5 4 15 92   6 США 6 3 4 13 80   7 Финлядия 2 4 6 12 68   8 Япония 5 1 4 10 61   9 Китай 0 6 2 8 46   10 Корея 3 1 2 6 37  

174, Написать программу игры "Угадай число". Правила игры следующие. Играют двое. Один задумывает число, второй — угадывает. На каждом шаге угадывающий делает предположение, а задумавший число — говорит, сколько цифр числа угаданы и сколько из этих цифр занимают правильные позиции в числе. Например, если задумано число 725 и выдвинуто предположение, что задумано число 523, то считаются угаданными две цифры (5 и 2) и одна из них (2) занимает верную позицию.
Ниже представлен рекомендуемый вид экрана во время работы программы. Данные, введенные пользователем, выделены полужирным шрифтом.

Компьютер задумал трехзначное число. Вы должны его отгадать.
После очередного числа вам будет сообщено, сколько цифр
угадано и сколько из них находится на своих местах.
После ввода числа нажимайте <Enter>.
Для завершения игры нажмите <Esc>.
Ваш вариант -> 123 Угадано: 0.На своих местах:0
Ваш вариант -> 456 Угадано: 1.На своих местах:0
Ваш вариант -> 654 Угадано: 2.На своих местах:2
Ваш вариант -> 657 Угадано: 2.На своих местах:2
Ваш вариант -> 658 Угадано: 3.На своих местах:3
*** ВЫ УГАДАЛИ ! ***
Нажмите <Enter> для завершения.

175. Напишите программу-телеграф, которая принимает от пользователя сообщение и выводит его на экран в виде последовательности точек и тире. Вывод точек и тире можно сопроводить звуковым сигналом соответствующей длительности. Азбука Морзе для букв русского алфавита приведена ниже.

А

.-

Б

-...

в

.---

г

--.

д

-..

Е

 

ж

...-

3

--..

и

..

И

.---

к

-.-

л

.-..

м

--

Н

-.

О

---

п

.--.

р

.-.

С

...

т

-

У

..-

ф

..-.

X

....

ц

-.- .

ч

---.

ш

---

Щ

--.-

ъ

-..-

ы

-.—

ь

-..-

э

..-.

ю

..--

я

.-.-



Факультатив


188. Написать функцию для решения квадратного уравнения. Параметрами функции должны быть коэффициенты и корни уравнения. Значение функции должно использоваться для передачи в вызывающую ее программу информации о наличии корней уравнения: 2 — два разных корня, 1 — корни одинаковые, 0 — уравнение не имеет решения. Кроме того, функция должна проверять корректность исходных данных. Если исходные данные неверные, то функция должна возвращать -1.
189. Написать функцию, обеспечивающую ввод с клавиатуры целого положительного двухзначного числа. При нажатии пользователем какой-либо клавиши соответствующий ей символ должен появляться на экране только в том случае, если этот символ является цифрой. Функция должна позволять пользователю редактировать введенное число при помощи клавиши <BackSpace>. Если пользователь ввел хотя бы одну цифру, то при нажатии клавиши <Enter> функция должна завершать работу и возвращать введенное пользователем число вызвавшей ее процедуре.



Факультатив


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



Факультатив


222. Написать программу, которая выводит на экран изображение идущих часов, имеющих секундную и минутную стрелки.
223. Написать программу, которая выводит на экран график функции у — 2 Sin(x) е*/5.
224. Написать функцию, которая в графическом режиме вводит с клавиатуры дробное число. Набираемые пользователем символы (знак "минус", цифры и точка должны появляться на экране в зависимости от текущего положения точки вывода. Во время ожидания очередного символа на экране должен мигать курсор. Требуется, чтобы функция обеспечивала пользователю возможность простейшего редактирования — удаление последнего введенного символа (при помощи клавиши <BackSpace>).



Факультатив


234. Написать универсальную программу тестирования. Тест, последовательность вопросов и варианты ответов должны находиться в текстовом файле. Имя этого файла программа должна получать из командной строки ее запуска. Количество вопросов теста не ограничено. Однако предлагается ввести следующее ограничение: текст вопроса и альтернативных ответов не должен занимать более одной строки экрана.
Программа должна выставлять оценку по следующему правилу: ОТЛИЧНО — за правильные ответы на все вопросы, ХОРОШО — если испытуемый правильно ответил не менее, чем на 80% вопросов, УДОВЛЕТВОРИТЕЛЬНО — если правильных ответов более 60%, и ПЛОХО — если правильных ответов меньше 60%.
Ниже приведены рекомендуемая структура файла вопросов теста (Nj — количество альтернативных ответов к i-му вопросу, Kj — номер правильного ответа), пример файла теста и вид экрана во время работы программы (номера ответов, введенные пользователем, выделены полужирным шрифтом).

Вопрос1
N1 .M1 ;
Ответ
...

Ответ

Ответ
Вопрос2
N2.M2;
Ответ
...
Ответ
Вопросk
Nk.Mk;
Ответ
...
Ответ
Архитектор Исаакиевского собора
3 2
Доменико Трезини
Огюст Монферран
Карл Рос си
Архитектор Зимнего дворца
2 2
Франческо Бартоломео
Огюст Монферран
Невский проспект получил свое название
3 2
По имени реки, на которой стоит Санкт-Петербург.
По имени близко расположенного монастыря, Александро-Невской
лавры.
в память о знаменитом полководце — Александре Невском.
Сейчас Вам будет предложен тест.
К каждому вопросу дается несколько вариантов ответов.
Вы должны ввести номер правильного ответа
и нажать клавишу <Enter>
Архитектор Исаакиевского собора:
1. Доменико Трезини
2. Огюст Монферран
3. Карл Росси -> 2
Архитектор Зимнего дворца:
1. Франческо Бартоломео
2. Карл Росси -> 2
Часть I. Задачи
67
Невский проспект получил свое название:
1. По имени реки, на которой стоит Санкт-Петербург.
2. По имени близко расположенного монастыря, Александро-Невской лавры.
З.в память о знаменитом полководце — Александре Невском.
Ваша оценка ОТЛИЧНО!
Для завершения работы программы нажмите <Enter>

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

*** Таблица пересчета из дюймов в миллиметры *** Результат выводить:
1 — на экран;
2 — на принтер;
3 — в файл.
Введите число от 1 до 3 и нажмите <Enter> Ваш выбор -> 1

Дюймы Миллиметры
0.5     12.7
1.0    25.4
1.5    38.1
2.0    50.8
2.5    63.5
3.0    76.2
3.5    88.9
4.0    101.6
4.5    114.3
5.0    127.0



Факультатив


240. Написать программу, которая вычерчивает на экране кривую Гильберта, показанную на рисунке. Обратите внимание, что кривая второго порядка получается путем соединения четырех кривых первого порядка, две из которых повернуты на 90 градусов: одна по, другая — против часовой стрелки. Аналогичным образом получается кривая третьего порядка, но при этом в качестве "кирпичиков" используются кривые второго порядка. Порядок вычерчиваемой кривой должен вводиться во время работы программы.

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



Факультатив


Стандартная библиотека Crt содержит процедуры, используя которые, можно задать цвет фона и цвет символов, выводимых ИНСТРУКЦИЯМИ write И writeln.Приступая к решению задач этого раздела, следует вспомнить, что:

для того, чтобы программе были доступны процедуры и функции библиотеки Crt, первой инструкцией программы должна быть инструкция uses ctr; цвет символов устанавливает процедура TextBackGround; цвет фона устанавливает процедура Textcoior; при использовании процедур TextBackGround И TextColor Цвет можно задать с помощью именованной или целой константы; процедура cirScr очищает экран; в текст программы нужно включить директиву uses crt, чтобы МОЖНО было ИСПОЛЬЗОВаТЬ Процедуры CirScr, TextBackGround И TextColor.

44. Написать программу, которая выводит на синем фоне серыми буквами четверостишие:

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

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



For


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

инструкция for используется для организации циклов с фиксированным, определяемым во время разработки программы, числом повторений; количество повторений цикла определяется начальным и конечным значениями переменной-счетчика; переменная-счетчик должна быть целого типа (integer).

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

Таблица квадратов

Число Квадрат 1 1 2 4 3 9 4 16 5 25 6 36 7 49 8 64 9 81 10 100

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

Таблица квадратов нечетных чисел.

Число Квадрат 1 1 3 9 5 25 7 49 9 81


102. Написать программу, которая вычисляет сумму первых п целых положительных целых чисел. Количество суммируемых чисел должно вводиться во время работы программы. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены полужирным шрифтом).
Вычисление суммы положительных чисел. Введите количество суммируемых чисел —> 20 Сумма первых 20 положительных чисел равна 210.
103. Написать программу, которая вычисляет сумму первых п целых положительных четных чисел. Количество суммируемых чисел должно вводиться во время работы программы. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены полужирным шрифтом).

Вычисление суммы четных положительных чисел.
Введите количество суммируемых чисел и нажмите <Enter>
-> 12
Сумма первых 12 положительных четных чисел равна 156.

104. Написать программу, которая вычисляет сумму первых п членов ряда 1, 3, 5, 7, .... Количество суммируемых членов ряда задается во время работы программы. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены полужирным шрифтом).

Вычисление частичной суммы ряда: 1,3,5,7, ...
Введите количество суммируемых членов ряда —> 15
Сумма первых 15 членов ряда равна 330.

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

1 1 1 1 + ---- + ---- + ---- .... 2 3 4

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

Вычисление частичной суммы ряда: 1+1/2+1/3+ ...
Введите кол-во суммируемых членов ряда —> 15
Сумма первых 15 членов ряда равна 3.3182

106. Написать программу, которая выводит таблицу степеней двойки (от нулевой до десятой). Ниже представлен рекомендуемый вид экрана во время работы программы.

Таблица степеней двойки

0    1

1    2

2    4

3    8

4    16

5    32

6    64

7    128

8    256

9    512

10    1024

107. Написать программу, которая вычисляет факториал введенного с клавиатуры числа. (Факториалом числа п называется произведение целых чисел от 1 до п. Например, факториал 1 равен 1, 8 — 40320).

Вычисление факториала.

Введите число, факториал которого надо вычислить

-> 7

Факториал 7 равен 504 0

108. Написать программу, которая выводит таблицу значений функции у = -2,4х2+5х-3 в диапазоне от -2 до 2 с шагом 0,5. Ниже представлен рекомендуемый вид экрана во время работы программы.

X Y - 2 -22.60 -1.5 -15.90 -1 -10.40 -0.5 -6.10 0 -3.00 0.5 -1.10 1 -0.40 1.5 -0.90 2 -2.60

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

Вычисление среднего арифметического последовательности дробных чисел. После ввода каждого числа нажимайте <Enter>

-> 5.4

-> 7.8

-> 3.0

-> 1.5

-> 2.3

Среднее арифметическое введенной последовательности: 4.00

Для завершения нажмите <Enter>


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

Вычисление среднего арифметического последовательности
дробных чисел.

Введите количество чисел последовательности —> 5
Вводите последовательность. После ввода каждого числа
нажимайте <Enter>
-> 5.4
-> 7.8
-> 3.0
-> 1.5
-> 2.3
Среднее арифметическое введенной последовательности: 4, Для завершения работы программы нажмите <Enter>.

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

Обработка последовательности дробных чисел. После ввода каждого числа нажимайте <Enter> -> 12.3
Введено чисел: 1 Сумма: 12.30 Сред.арифметическое: 12.30
-> 15
Введено чисел: 2 Сумма: 27.30 Сред.арифметическое: 13.65
-> 10
Введено чисел: 3 Сумма: 37.30 Сред.арифметическое: 12.43
-> 5.6
Введено чисел: 4 Сумма: 42.90 Сред.арифметическое: 10.73
-> 11.5
Введено чисел: 5 Сумма: 54.40 Сред.арифметическое: 10.88
Для завершения работы программы нажмите <Enter>.

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

Обработка последовательности дробных чисел. Введите количество чисел последовательности -> 5

Вводите последовательность. После ввода каждого числа нажимайте <Enter> -> 5.4 -> 7.8 -> 3.0 -> 1.5 -> 2.3

Количество чисел: 5

Среднее арифметическое: 4.00

Минимальное число:

Максимальное число:

Для завершения нажмите <Enter>

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

*** Случайные числа ***
1342749621 сред.арифм. 3.9

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

*** Случайные числа ***

6 10 4 2 5 8 1 7 7 3 сред, арифм. 5.30
10 3 б 1 10 1 3 8 7 6 сред, арифм. 5.50
5 2 2 5 4 2 2 1 6 10 сред, арифм. 3.90
Для завершения работы нажмите <Enter>

115. Написать программу, которая выводит на экран таблицу стоимости, например, яблок в диапазоне от 100 г до 1 кг с шагом 100. Ниже представлен рекомендуемый вид экрана программы во время ее работы (данные, введенные пользователем, выделены полужирным шрифтом).

Введите цену одного килограмма и нажмите <Enter> (копейки от рублей отделяйте точкой) -> 16.50 Вес (гр) Cтоимость (руб.) 100 1.65 200 3.30 300 4.95 400 6.60 500 8.25 600 9.90 700 11.55 800 13.20 900 14.85 1000 16.50

116. Написать программу, которая выводит таблицу значений функции у = |х|. Диапазон изменения аргумента — от -4 до 4, шаг приращения аргумента — 0,5.
117. Написать программу, которая выводит таблицу значений функции у =Iх + 2|. Диапазон изменения аргумента — от -4 до 4, шаг приращения аргумента — 0,5.
118. Написать программу, которая выводит таблицу значений функции у = |х — 2I+ Iх + 1|. Диапазон изменения аргумента — от -4 до 4, шаг приращения аргумента — 0,5.
119. Написать программу, которая выводит на экран таблицу умножения, например, на 7. Рекомендуемый вид экрана во время работы программы приведен ниже.

7 X2= 14
7 X 3 = 21
7 X 4 = 23
7 X 5 = 35
7 X 6 = 42
7 X 7 = 49
7 X 8 = 56
7 X 9 = 63


120. Написать программу, которая выводит двоичное представление введенного с клавиатуры десятичного целого числа в диапазоне от 0 до 255. Рекомендуемый вид экрана во время работы программы приведен ниже (данные, введенные пользователем, выделены полужирным шрифтом).

Преобразование десятичного числа в двоичное. Введите целое число от 0 до 255 и нажмите <Enter> -> 164
Десятичному числу 64 соответствует двоичное 10100100 Для завершения работы программы нажмите <Enter>.

121. Написать программу, которая выводит на экран квадрат Пифагора — таблицу умножения. Рекомендуемый вид экрана во время работы программы приведен ниже.

   1 2 3 4 5 6 7 8 9 10
1 1 2 3 4 5 6 7 8 9 10

2 2 4 6 8 10 12 14 16 18 20

3 3 6 9 12 15 18 21 24 27 30

4 4 8 12 16 20 24 28 32 36 40

5 5 10 15 20 25 30 35 40 45 50

6 6 12 18 24 30 36 42 48 54 60

7 7 14 21 28 35 42 49 56 63 70

8 8 16 24 32 40 48 56 64 72 80


122. Напишите программу, которая вычисляет частичную сумму ряда 1-1/3+1/5-1/7+1/9-... и сравнивает полученное значение с и/4 (при суммировании достаточно большого количества членов этого ряда, величина частичной суммы приближается к л/4).
123. Напишите программу приближенного вычисления интеграла функции f(x) = 5х2 — х + 2 методом прямоугольников.
124. Напишите программу приближенного вычисления интеграла методом трапеций.
125. Напишите программу, которая выводит на экран изображение шахматной доски. Черные клетки отображать "звездочкой", белые — пробелом. Рекомендуемый вид экрана во время работы программы приведен ниже.

* * * *
   * * * *
* * * *
   * * * *
* * * *
   * * * *
* * * *
   * * * *

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

Преобразование десятичного числа в двоичное. Введите целое число от 0 до 255 и нажмите <Enter> -> 49
Десятичному числу 4 9 соответствует двоичное 00110001 Для завершения работы программы нажмите <Enter>.

Факультатив

127. Написать программу проверки знания таблицы умножения. Программа должна вывести 10 примеров и выставить оценку: за 10 правильных ответов — "отлично", за 9 и 8 —"хорошо", за 7 и 6 — "удовлетворительно", за 6 и менее — "плохо". Ниже представлен рекомендуемый вид экрана во время работы программы. Ответы пользователя выделены полужирным шрифтом.

*** Проверка знания таблицы умножения ***

После примера введите ответ и нажмите <Enter>.

5x3=15

7x7=49

1x4=4

4x3=12

9x4=36

8x8=64

7x8=52

Вы ошиблись! 7x8=56

4x7=28

3x5=15

2x5=10

Правильных ответов: 9

Оценка: Хорошо.


128. Написать программу проверки умения складывать и вычитать числа в пределах 100. Программа должна вывести 10 примеров, причем в каждом примере уменьшаемое должно быть больше или равно вычитаемому, т. е. не допускается предлагать испытуемому примеры с отрицательным результатом. Оценка выставляется по следующему правилу: за 10 правильных ответов — "отлично", за 9 и 8 —"хорошо", за 7 и 6 — "удовлетворительно", за 6 и менее — "плохо". Ниже представлен рекомендуемый вид экрана во время работы программы. Ответы пользователя выделены полужирным шрифтом.

Проверка умения складывать и вычитать числа.
После примера введите ответ и нажмите <Enter>
75-4=71
35-9=29
Вы ошиблись! 35-9=26
14-1=13
6-5=1
37-19=28
Вы ошиблись! 37-19=18
53-14=39
94-87=7
90-16=74
4-2=2
89-41=48
Правильных ответов: 8
Оценка: Хорошо

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



Функции


Функции

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

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

176. Написать функцию, которая вычисляет объем цилиндра. Параметрами функции должны быть радиус и высота цилиндра.
177. Написать функцию, которая возвращает максимальное из двух целых чисел, полученных в качестве аргумента.
178. Написать функцию, которая сравнивает два целых числа и возвращает результат сравнения в виде одного из знаков: >, < или =.
179. Написать функцию, которая вычисляет сопротивление цепи, состоящей из двух резисторов. Параметрами функции являются величины сопротивлений и тип соединения (последовательное или параллельное). Функция должна проверять корректность параметров: если неверно указан тип соединения, то функция должна возвращать -1.
180. Написать функцию, которая вычисляет значение аь. Числа а и ь могут быть любыми дробными положительными числами.
181. Написать функцию Procent, которая возвращает процент от числа, полученного в качестве аргумента.
182. Написать функцию Dohod, которая вычисляет доход по вкладу. Исходными данными для функции являются: величина вклада, процентная ставка (годовых) и срок вклада (количество дней).
183. Написать функцию Giasn, которая возвращает значение True, если символ, полученный функцией в качестве аргумента, является гласной буквой русского алфавита.
184. Написать функцию LTrim, которая удаляет начальные пробелы из строки, полученной в качестве аргумента.
185. Написать функцию Sogi, которая возвращает True, если символ, полученный функцией в качестве аргумента, является согласной буквой русского алфавита.
186. Написать функцию, которая возвращает преобразованную к верхнему регистру строку, полученную в качестве аргумента. Обратите внимание, если эту функцию назвать upCase (т. е. так, как называется функция языка Turbo Pascal, решающая подобную задачу для символов латинского алфавита), то функция программиста подменит функцию Turbo Pascal.
187. Написать функцию вычисления факториала (факториалом целого числа п называется число, равное произведению целых чисел от 1 до п).



Графика


Приступая к решению задач этого раздела, следует вспомнить, что: в графическом режиме экран представляет собой совокупность точек, каждая из которых может быть окрашена в один из 16 цветов; координаты точек возрастают слева направо и сверху вниз; левая верхняя точка имеет координаты (0,0), а правая нижняя - (639,479); для того, чтобы программа могла выводить на экран графические примитивы (линии, окружности, прямоугольники), необходимо инициализировать графический режим. Шаблон графической программы выглядит следующим образом:

uses Graph; var
grDriver: Integer; grMode: Integer;
ErrCode: Integer;
res: integer; begin
grDriver := detect;
InitGraph(grDriver, grMode,'с;\tp\bgi');
ErrCode := GraphResult;
if ErrCode = grOk then
begin ( сюда следует поместить основные инструкции }
end;
CloseGraph; end.

194. Написать программу, которая вычерчивает на экране домик.

195. Написать программу, которая выводит на экран флаг Олимпийских игр. Изображение флага приведено ниже (одной клетке соответствует пять пикселов).


196. Написать программу, которая вычерчивает на экране кораблик.

197. Написать программу, которая вычерчивает на экране ракету.

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

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

202. Написать программу, которая выводит на экран пятиконечную звезду.
203. Написать программу, которая вычерчивает на экране шестиугольник.
204. Написать программу, которая рисует на экране Государственный флаг России.
205. Написать программу, которая рисует на экране веселую рожицу желтого цвета.

206. Написать программу, которая рисует на экране грустную рожицу.

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

208. Написать программу, которая выводит на экран изображенный ниже узор. Окружности должны быть разного цвета (см. таблицу кодировки цветов).

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

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

211. Написать программу, которая выводит на экран изображение шахматной доски.
212. Написать программу, которая рисует на экране флажок красного цвета.

213. Написать программу, которая рисует на экране паровоз (используйте метод базовой точки).

214. Написать программу, которая рисует на экране автомобиль. Инструкции, обеспечивающие вычерчивание колеса автомобиля, оформите как процедуру.

215. Написать программу, которая выводит на экран оцифрованную координатную сетку.

216. Написать программу, которая выводит на экран точечный график функции у = 0,5х2 + 4х — 3. Диапазон изменения аргумента — от —15 до 5, шаг аргумента — 0,1. График вывести на фоне координатных осей, точка пересечения которых должна находиться в центре экрана.
217. Написать процедуру, которая рисует на экране кораблик. В качестве параметров процедура должна получать координаты базовой точки и цвет, которым следует рисовать. Используя эту процедуру, напишите программу, которая выводит на экран движущийся кораблик.

218. Написать программу, которая рисует окружность, движущуюся по экрану.
219. Написать программу, которая выводит на экран гистограмму успеваемости учеников класса, например, по итогам контрольной работы. Исходные данные следует ввести в алфавитно-цифровом режиме работы. Рекомендуемый вид экрана во время работы программы приведен ниже. На первом рисунке экран
показан во время ввода исходных данных, на втором приведен вид диафаммы на экране.
Обработка результатов контрольной работы.

Введите исходные данные:
пятерок —> 10
четверок —> 15
троек -> 7
двоек -> 1
Результаты контрольной работы

220. Написать программу, которая выводит круговую диафамму, отражающую товарооборот (в процентах) книжного магазина. Исходные данные (объем продаж в рублях по категориям: книги, журналы, открытки и канцтовары) вводятся во время работы профаммы. Пример диафаммы приведен ниже.

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



If


Приступая к решению задач этого раздела, следует вспомнить, что: инструкция if используется для выбора одного из двух направлений дальнейшего хода программы (последовательности инструкций, которые должны быть выполнены); выбор последовательности инструкций осуществляется во время выполнения программы в зависимости от выполнения условия', условие — это выражение логического типа, которое может принимать одно из двух значений: true (истина — условие выполняется) или false (ложь — условие не выполняется); при помощи логических операций And (логическое "И") и or (логическое "Или") из простых условий можно строить сложные.

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

Вычисление частного.
Введите в одной строке делимое и делитель,
затем нажмите <Enter>
-> 12 О
Вы ошиблись. Делитель не должен быть равен нулю.

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

Вычисление площади кольца. Введите исходные данные: Радиус кольца (см) —> 3.5 Радиус отверстия (см) —> 7
Ошибка! Радиус отверстия не может быть больше радиуса кольца.

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

Вычисление сопротивления электрической цепи.
Введите исходные данные:
Величина первого сопротивления (Ом) —> 15
Величина второго сопротивления (Ом)—> 27.3
Тип соединения (1 - последовательное, 2 - параллельное) —> 2
Сопротивление цепи: 9.68 Ом.

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

* Решение квадратного уравнения *
Введите в одной строке значения коэффициентов и нажмите <Enter>
-> 12 27 -10
Корни уравнения:
xl= -25.551
х2= -28.449

80. Написать программу вычисления стоимости покупки с учетом скидки. Скидка в 10% предоставляется, если сумма покупки больше 1000 руб. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены полужирным шрифтом).

Вычисление стоимости покупки с учетом скидки.
Введите сумму покупки и нажмите <Enter>
-> 1200
Вам предоставляется скидка 10%
Сумма покупки с учетом скидки: 1080.00 руб.

81. Написать программу вычисления стоимости покупки с учетом скидки. Скидка в 3% предоставляется в том случае, если сумма покупки больше 500 руб., в 5% — если сумма больше 1000 руб. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены полужирным шрифтом).

Вычисление стоимости покупки с учетом скидки.
Введите сумму покупки и нажмите <Enter>
-> 640
Вам предоставляется скидка 3%
Сумма покупки с учетом скидки: 620.80 руб.

82. Написать программу проверки знания даты основания Санкт-Петербурга. В случае неверного ответа пользователя программа должна выводить правильный ответ. Ниже представлен реко-
мендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены полужирным шрифтом).

В каком году был основан Санкт-Петербург?
Введите число и нажмите <Enter>
-> 1705
Вы ошиблись, Санкт-Петербург был основан в 1703 году.

83. Написать программу проверки знания даты начала второй мировой войны. В случае неверного ответа пользователя программа должна выводить правильный ответ. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены полужирным шрифтом).

В каком году началась вторая мировая война? Введите число и нажмите <Enter> -> 1939
Правильно.

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

Архитектор Исаакиевского собора:
1. Доменико Трезини
2. Огюст Монферран
3. Карл Росси
Введите номер правильного ответа и нажмите <Enter>
-> 2
Вы ошиблись.
Архитектор Исаакиевского собора — Огюст Монферран.

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

Невский проспект получил свое название:
1. По имени реки, на берегах которой расположен Санкт-Петербург
2. По имени близко расположенного монастыря Александро-Невской лавры
3. В память о знаменитом полководце Александре Невском
Введите номер правильного ответа и нажмите <Enter>
-> 2
Вы ошиблись.
Правильный ответ: 2.

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

Введите в одной строке два целых числа
-> 34 67
34 меньше 67.
и нажмите <Enter>.

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

Сколько будет 6x7?
Введите ответ и нажмите -> 56
Вы ошиблись. 6x7=42.
<Enter>

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

Сколько будет 83-17?
Введите ответ и нажмите <Enter>
-> 67
Вы ошиблись. 83-17=66.

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

Введите целое число и нажмите <Enter> -> 23
Число 23 — нечетное.

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

Введите целое число и нажмите <Enter> -> 451
Число 4 51 нацело на три не делится.

91. Написать профамму определения стоимости разговора по телефону с учетом скидки 20%, предоставляемой по субботам и воскресеньям. Ниже представлен рекомендуемый вид экрана программы во время ее работы (данные, введенные пользователем, выделены полужирным шрифтом).

Вычисление стоимости разговора по телефону.
Введите исходные данные:
Длительность разговора (целое количество минут) —> 3
День недели (1 - понедельник, ... 7 — воскресенье) —> 6
Предоставляется скидка 20%.
Стоимость разговора: 5.52 руб.

92. Написать программу, которая вычисляет оптимальный вес пользователя, сравнивает его с реальным и выдает рекомендацию о необходимости поправиться или похудеть. Оптимальный вес вычисляется по формуле: рост (в сантиметрах)—100. Рекомендуемый вид экрана во время работы программы приведен ниже (данные, введенные пользователем, выделены полужирным шрифтом).

Введите в одной строке через пробел
рост (см) и вес (кг) затем нажмите <Enter>
-> 170 68
Вам надо поправиться на 2.00 кг.



Инструкция присваивания


Инструкция присваивания

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

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

9. Запишите инструкцию, которая присваивает переменной х значение —1,5.
10. Запишите инструкцию, которая присваивает переменной summa нулевое значение.
11. Запишите инструкцию, которая увеличивает на единицу значение переменной п.
12. Запишите инструкцию, которая уменьшает на два значение переменной counter.
13. Запишите инструкцию вычисления среднего арифметического переменных xi и х2.
14. Запишите в виде инструкции присваивания формулу вычисления значения функции


15. Запишите в виде инструкции присваивания формулу вычисления значения функции
16. Запишите в виде инструкции присваивания формулу пересчета веса из фунтов в килограммы (один фунт равен 409,5 г).
17. Запишите в виде инструкции присваивания формулу пересчета расстояния из километров в версты (одна верста равна 1066,8 м).
18. Запишите в виде инструкции присваивания формулу вычисления площади прямоугольника.
19. Запишите в виде инструкции присваивания формулу вычисления площади треугольника:
20. Запишите в виде инструкции присваивания формулу вычисления площади трапеции:

, где а и Ъ — длины оснований, h — высота трапеции.
21. Запишите в виде инструкции присваивания формулу вычисления площади круга:


22. Запишите в виде инструкции присваивания формулы вычисления площади поверхности и объема цилиндра.

23. Запишите в виде инструкции присваивания формулу вычисления объема параллелепипеда.

24. Запишите в виде инструкции присваивания формулы вычисления объема и площади поверхности шара.

25. Запишите в виде инструкции присваивания формулу вычисления объема цилиндра.
26. Запишите в виде инструкции присваивания формулу вычисления объема полого цилиндра.

27. Запишите в виде инструкции присваивания формулу вычисления объема конуса.

28. Запишите в виде инструкции присваивания формулу вычисления объема цилиндра.
29. Запишите в виде инструкции присваивания формулу вычисления тока по известным значениям напряжения и сопротивления электрической цепи.
30. Запишите в виде инструкции присваивания формулу вычисления сопротивления электрической цепи по известным значениям напряжения и силы тока.
31. Запишите в виде инструкции присваивания формулу вычисления сопротивления электрической цепи, состоящей из трех последовательно соединенных резисторов.
32. Запишите в виде инструкции присваивания формулу вычисления сопротивления электрической цепи, состоящей из двух параллельно соединенных резисторов:

33. Запишите в виде инструкции присваивания формулу пересчета сопротивления электрической цепи из омов в килоомы.
34. Запишите в виде инструкции присваивания формулу вычисления стоимости покупки нескольких тетрадей, карандашей и линейки.
35. Запишите в виде инструкции присваивания формулу вычисления стоимости покупки некоторого количества (по весу) помидоров, огурцов и яблок.



Массивы


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

массив — это структура данных, представляющая собой совокупность элементов одного типа; массив должен быть объявлен в разделе объявления переменных; при объявлении массива удобно использовать именованные константы; доступ к элементу массива осуществляется путем указания индекса (номера) элемента, в качестве которого можно использовать выражение целого типа, например, целую константу или переменную типа integer; для ввода, вывода и обработки массивов удобно применять ИНСТРУКЦИИ ЦИКЛОВ (for, while, repeat).

153. Написать программу, которая вводит с клавиатуры одномерный массив из 5 целых чисел и выводит количество ненулевых элементов. Перед вводом каждого элемента на экране должна появляться подсказка с его номером.

После ввода каждого числа нажмите <Enter>
а[1] -> 12
а[2] -> О
а[3] -> 3
а[4] -> -1
а[5] -> О
В массиве 3 ненулевых элемента.

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

Поиск минимального элемента массива.
Введите в одной строке элементы массива (5 целых чисел)
и нажмите <Enter>
-> 23 0 45 -5 12
Минимальный элемент массива: -5.
48
Turbo Pascal в задачах и примерах

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

Введите элементы массива (10 целых чисел) в одной строке
и нажмите <Enter>.
-> 23 0 45 -5 12 0 -2 30 0 64
Сумма элементов массива: 184
Количество ненулевых элементов: 7
Среднее арифметическое ненулевых элементов: 23.86.

156. Написать программу, которая вычисляет среднюю (за неделю) температуру воздуха. Исходные данные должны вводиться во время работы программы. Рекомендуемый вид экрана во время работы программы приведен ниже (данные, введенные пользователем, выделены полужирным шрифтом).

Введите температуру воздуха за неделю.
Понедельник -> 12
Вторник -> 10 '
Среда -> 16
Четверг -> 18
Пятница -> 17
Суббота -> 16
Воскресенье -> 14
Средняя температура за неделю: 14.71 град.

157. Написать программу, которая проверяет, находится ли в массиве введенное с клавиатуры число. Массив должен вводится во время работы программы.
158. Написать программу, которая проверяет, представляют ли элементы введенного с клавиатуры массива возрастающую последовательность.
159. Написать программу, которая проверяет, образуют ли элементы введенного с клавиатуры массива неубывающую последовательность.
160. Написать программу, которая вычисляет, сколько раз введенное с клавиатуры число встречается в массиве.
161. Написать программу, которая проверяет, есть ли во введенном с клавиатуры массиве элементы с одинаковым значением.
162. Написать программу, которая методом прямого выбора сортирует по убыванию введенный с клавиатуры одномерный массив.
163. Написать программу, которая методом обмена ("пузырька") сортирует по убыванию введенный с клавиатуры одномерный массив.
164. Написать программу, которая объединяет два упорядоченных по возрастанию массива в один, также упорядоченный по возрастанию массив. Рекомендуемый вид экрана во время работы программы приведен ниже (данные, введенные пользователем, выделены полужирным шрифтом).

Объединение двух упорядоченных по возрастанию массивов. Введите в одной строке элементы первого массива,
(5 целых чисел) —> 1 3 5 7 9 Введите в одной строке элементы второго массива,
(5 целых чисел) -> 2 4 6 8 10 Массив — результат 123456789 10 Для завершения работы нажмите <Enter>.

165. Написать программу, которая, используя метод бинарного поиска, выполняет поиск в упорядоченном по возрастанию массиве.
166. Написать программу, которая определяет количество учеников в классе, чей рост превышает средний. Рекомендуемый вид экрана во время работы программы приведен ниже (введенные пользователем данные выделены полужирным шрифтом).

*** Анализ роста учеников ***
Введите рост (см) и нажмите <Enter>.
Для завершения введите 0 и нажмите <Enter>
-> 175
-> 170
-> 180
-> 168
-> 170
-> 0
Средний рост: 172.6 см
У 2-х человек рост превышает средний.

167. Написать программу, которая вводит по строкам с клавиатуры двумерный массив и вычисляет сумму его элементов по столбцам.
158. Написать программу, которая вводит по строкам с клавиатуры двумерный массив и вычисляет сумму его элементов по строкам.
168. Написать программу, которая вычисляет сумму диагональных элементов квадратной матрицы.
169. Написать программу, которая вводит с клавиатуры двумерный массив по строкам и вычисляет среднее арифметическое его элементов.
170. Написать программу, которая вычисляет определитель квадратной матрицы второго порядка. Рекомендуемый вид экрана во время работы программы приведен ниже (введенные пользователем данные выделены поЛужирным шрифтом).

Введите матрицу второго порядка.
После ввода элементов строки нажимайте <Enter>
-> 5 -7
-> 1 3
Определитель матрицы
5.00 -7.00
1.00 3.00 Равен 22.00

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

172. Написать программу, которая вычисляет определитель квадратной матрицы третьего порядка.



Объявление переменных


Объявление переменных

Приступая к решению задач этого раздела, следует помнить, что:

каждая переменная программы должна быть объявлена; объявления переменных помещают в раздел, который начинается словом var; инструкция объявления переменной выглядит так:

ИмяПеременной:Тип;
в имени переменной можно использовать буквы латинского алфавита и цифры (первым символом должна быть буква); основными числовыми типами языка Turbo Pascal являются:

integer (целый), real (дробный); после инструкции объявления переменной рекомендуется указывать назначение переменной.
    1. Объявите переменные, необходимые для вычисления значения функции у = х2. 2. Объявите переменные, необходимые для пересчета веса из фунтов в килограммы. 3. Объявите переменные, необходимые для вычисления объема параллелепипеда. 4. Объявите переменные, необходимые для вычисления площади круга. 5. Объявите переменные, необходимые для вычисления площади кольца. 6. Объявите переменные, необходимые для вычисления объема и площади поверхности цилиндра. 7. Объявите переменные, необходимые для вычисления стоимости покупки, состоящей из нескольких тетрадей, карандашей и линейки. 8. Объявите переменные, необходимые для вычисления стоимости покупки, состоящей из нескольких тетрадей и такого же количества обложек.



    Процедуры


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

    190. Написать процедуру, которая выводит на экран строку, состоящую из звездочек. Длина строки (количество звездочек) является параметром функции.
    191. Написать процедуру, которая выводит строку, состоящую из одинаковых символов. Длина строки и символ являются параметрами процедуры.
    192. Написать процедуру, которая вычисляет объем и площадь поверхности параллелепипеда.



    Программы с линейной структурой


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

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

    51. Написать программу вычисления площади параллелограмма. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены полужирным шрифтом).
    Вычисление площади параллелограмма. Введите исходные данные: Длина (см) —> 9 Ширина (см) —> 7.5
    Площадь параллелограмма: 67.50 кв.см.
    52. Написать программу вычисления объема параллелепипеда. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены полужирным шрифтом).

    Вычисление объема параллелепипеда.
    Введите исходные данные:
    Длина (см) —> 9
    Ширина (см) -> 7.5
    Высота (см) —> 5

    Объем: 337.50 куб.см.

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

    Вычисление площади поверхности параллелепипеда.
    Введите исходные данные:
    Длина (см) -> 9
    Ширина (см) —> 7.5
    Высота (см) -> 5
    Площадь поверхности: 90.00 кв.см.

    54. Написать программу вычисления объема куба. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены полужирным шрифтом).

    Вычисление объема куба.
    Введите длину ребра (см) и нажмите <Enter>
    -> 9.5
    *
    Объем куба: 857.38 куб.см.

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

    Вычисление объема цилиндра
    Введите исходные данные:
    Радиус основания (см) —> 5
    Высота цилиндра (см) —> 10
    Объем цилиндра 1570.80 куб. см.

    Для завершения работы программы нажмите <Enter>.

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

    Вычисление стоимости покупки.
    Введите исходные данные:
    Цена тетради (руб.) —> 2.75
    Количество тетрадей —> 5
    Цена карандаша (руб.) —> 0.85
    Количество карандашей —> 2
    Стоимость покупки: 15.45 руб.

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

    Вычисление стоимости покупки.
    Введите исходные данные:
    Цена тетради (руб.) —> 2.75
    Цена обложки (руб.) —> 0.5
    Количество комплектов (шт.) —> 7
    Стоимость покупки: 22.75 руб.

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

    Вычисление стоимости покупки.
    Введите исходные данные:
    Цена одного килограмма яблок (руб.) —> 8.5
    Вес яблок (кг) —> 2.3
    Стоимость покупки: 19.55 руб.

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

    Вычисление площади треугольника.
    Введите исходные данные:
    Основание (см) —> 8.5
    Высота (см) —> 10

    Площадь треугольника 42.50 кв.см.

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

    Вычисление площади треугольника.
    Введите (через пробел) длины двух сторон (см) треугольника
    -> 25 17
    Введите величину угла между сторонами треугольника
    -> 30
    Площадь треугольника: 106.25 кв.см.

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

    Вычисление сопротивления электрической цепи при параллельном соединении элементов.
    Введите исходные данные:
    Величина первого сопротивления (Ом) —> 15
    Величина второго сопротивления (Ом)—> 20
    Сопротивление цепи: 8.57 Ом.

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

    Вычисление сопротивления электрической цепи.
    Введите исходные данные:
    Величина первого сопротивления (Ом) —> 15
    Величина второго сопротивления (Ом)—> 27.3
    Сопротивление цепи (последовательное соединение): 42.30 Ом.

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

    Вычисление силы тока в электрической цепи.
    Введите исходные данные:
    Напряжение (вольт) —> 36
    Сопротивление (Ом) -> 1500
    Сила тока: 0.024 Ампер.

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

    Вычисление расстояния между населенными пунктами.
    Введите исходные данные:
    Масштаб карты (количество километров в одном сантиметре) —> 120
    Расстояние между точками, изображающими населенные пункты
    (см) -> 3.5
    Расстояние между населенными пунктами 420 км.

    65. Написать программу вычисления стоимости поездки на автомобиле на дачу (туда и обратно). Исходными данными являются: расстояние до дачи (в километрах); количество бензина, которое потребляет автомобиль на 100 км пробега; цена одного литра бензина. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены полужирным шрифтом).

    Вычисление стоимости поездки на дачу и обратно. Расстояние до дачи (км) —> 67
    Расход бензина (литров на 100 км пробега) —> 8.5 Цена литра бензина (руб.) —> 6.5
    Поездка на дачу и обратно обойдется в 74.04 руб.

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

    Радиус основания (см) —> 5.5 Высота цилиндра (см) —> 7
    Объем цилиндра: 665.23 куб. см.

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

    Вычисление площади поверхности цилиндра.
    Введите исходные данные:
    Радиус основания (см) —> 5.5
    Высота цилиндра (см) —> 7
    Площадь поверхности цилиндра: 431.97 кв.см.

    68. Написать программу вычисления объема параллелепипеда. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены полужирным шрифтом).

    Вычисление объема параллелепипеда.
    Введите в одной строке длину, ширину и высоту параллелепипеда (в сантиметрах).
    Числа разделяйте пробелами.
    После ввода последнего числа нажмите <Enter>. -> 7.5 2.5 3
    Объем параллелепипеда 56.25 куб. см.

    69. Написать программу пересчета расстояния из верст в километры (1 верста равняется 1066,8 м). Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены полужирным шрифтом).

    Пересчет расстояния из верст в километры.
    Введите расстояние в верстах и нажмите <Enter>. -> 100
    100 верст(а/ы) - это 106.68 км.

    70. Написать программу пересчета веса из фунтов в килограммы (1 российский фунт равен 409,5 г). Ниже представлен рекомен дуемый вид экрана во время работы программы (данные, введенные пользователем, выделены полужирным шрифтом).

    Пересчет веса из фунтов в килограммы.
    Введите вес в фунтах и нажмите <Enter> -> 5
    5 фунт(а/ов) — это 2.05 кг.

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

    Вычисление дохода по вкладу.
    Введите исходные данные:
    Величина вклада (руб.) —> 2500
    Срок вклада (дней) —> 30 Процентная ставка (годовых) —> 20
    Доход: 41.10 руб.
    Сумма по окончании срока вклада: 2541.10 руб.

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

    Введите величину временного интервала (в минутах)
    и нажмите <Enter>
    -> 150
    150 минут — это 2ч. 30 мин.

    73. Написать программу, которая преобразует введенное с клавиатуры дробное число в денежный формат. Например, число 125 должно быть преобразовано к виду 12 руб. 50 коп.

    Преобразование числа в денежный формат. Введите дробное число —> 23.6
    23.6 руб. — это 23 руб. 60 коп.
    74. Написать программу пересчета веса из фунтов в килограммы (1 фунт равняется 409,5 г). Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены полужирным шрифтом).
    Пересчет веса из фунтов в килограммы. Введите вес в фунтах и нажмите <Enter>. -> 3.5
    3.5 фунт(а/ов) - это 1 кг 420 г.

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

    Вычисление площади треугольника. Введите координаты углов (числа разделяйте пробелом) : xl,yl -> -2 5 х2,у2 -> 1 7 хЗ,уЗ -> 5 -3
    Площадь треугольника: 23.56 кв.см.



    Рекурсия


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

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



    Repeat


    Repeat

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

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

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

    Вычисление среднего арифметического последовательности положительных чисел.
    Вводите после стрелки числа. Для завершения ввода введите ноль.
    -> 45 -> 23 -> 15
    Введено чисел: 3
    Сумма чисел: 83
    Среднее арифметическое: 27.67.

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

    Определение максимального числа последовательности
    положительных чисел.
    Вводите после стрелки числа. Для завершения ввода введите ноль.
    -> 56
    -> 75
    -> 43
    -> О
    Максимальное число: 75.

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

    Введите целое число и нажмите <Enter>
    -> 45
    45 — не простое число.

    133. Написать программу приближенного вычисления интеграла методом трапеций. После каждого цикла программа должна выводить вычисленное значение, количество и величину интервалов.
    134. Написать программу, которая "задумывает" число в диапазоне от 1 до 10 и предлагает пользователю угадать число за 5 попыток. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены полужирным шрифтом).

    Игра "Угадай число".
    Компьютер "задумал" число от 1 до 10.
    Угадайте его за 5 попыток.
    Введите число и нажмите <Enter>
    -> 5
    Нет.
    -> 3
    Вы выиграли! Поздравляю!


    Факультатив

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



    Символы и строки


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

    каждому символу соответствует число — код символа; получить доступ к отдельному символу строки можно, указав его номер в квадратных скобках после имени переменной (строки).

    138. Написать программу, которая запрашивает имя пользователя и здоровается с ним. Рекомендуемый вид экрана во время работы программы приведен ниже (данные, введенные пользователем, выделены полужирным шрифтом).

    Как Вас зовут?
    Введите свое имя и нажмите <Enter>
    -> Вася
    Здравствуйте, Вася!

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

    Введите символ и нажмите <Enter>.
    Для завершения работы программы введите точку.
    -> 1
    Символ: 1 Код: 49.
    -> 2
    Символ: 2 Код: 50 —> ы
    Символ: ы Код:235

    141. Написать программу, которая выводит на экран первую часть таблицы кодировки символов (символы, имеющие коды от О до 127). Таблица должна состоять из восьми колонок и шестнадцати строк. В первой колонке должны быть символы, имеющие код от 0 до 15, во второй — от 16 до 31 и т. д.
    142. Написать программу, которая в веденной с клавиатуры строке преобразует строчные буквы русского алфавита в прописные (учтите, что функция upcase с символами русского алфавита не работает). Рекомендуемый вид экрана во время работы программы приведен ниже (данные, введенные пользователем, выделены полужирным шрифтом).

    Введите строку текста и нажмите <Enter>
    —> изучив Паскаль, можно приступить к изучению С
    Строка, преобразованная к верхнему регистру:
    ИЗУЧИВ ПАСКАЛЬ, МОЖНО ПРИСТУПИТЬ К ИЗУЧЕНИЮ С.

    143. Написать программу, которая удаляет начальные пробелы из введенной с клавиатуры строки.
    144. Написать программу, которая проверяет, является ли введенная с клавиатуры строка целым числом. Рекомендуемый вид экрана во время работы программы приведен ниже (данные, введенные пользователем, выделены полужирным шрифтом).

    Введите число и нажмите <Enter> -> 23.5
    Введенная строка не является целым числом.

    145. Написать программу, которая проверяет, является ли введенная с клавиатуры строка двоичным числом.
    146. Написать программу, которая проверяет, является ли введенная с клавиатуры строка шестнадцатеричным числом.
    147. Написать программу, которая проверяет, является ли введенная с клавиатуры строка дробным числом.
    148. Написать программу, которая преобразует введенное с клавиатуры восьмиразрядное двоичное число в десятичное. Рекомендуемый вид экрана во время работы программы представлен ниже (введенные пользователем данные выделены полужирным шрифтом).

    Введите восьмиразрядное двоичное число
    и нажмите <Enter>
    -> 11101010
    Двоичному числу 11101010 соответствует десятичное 234
    Для завершения работы программы нажмите <Enter>.

    149. Написать программу, которая преобразует введенное с клавиатуры двухразрядное шестнадцатеричное число в десятичное.
    150. Написать программу, которая преобразует введенное пользователем десятичное число в число в указанной системе счисления (от 2-х до 10-ти). Рекомендуемый вид экрана во время работы профаммы приведен ниже.

    Введите целое число —> 67
    Введите основание системы счисления —> 2
    100011

    151. Написать программу, которая преобразует введенное пользователем десятичное число в шестнадцатеричное.
    152. Написать программу, которая вычисляет значение выражения NoO1N1O2...OkNk, где Ni — целое одноразрядное число, Oi — один из двух знаков простейших арифметических действий: сложения или вычитания. Ниже представлен рекомендуемый вид экрана во время работы профаммы (данные, введенные пользователем, выделены полужирным шрифтом).

    Введите арифметическое выражение,
    например, 4+5-3-5+2 и нажмите <Enter>
    -> 9-5+4+2-6
    Значение введенного выражения: 4
    Для завершения программы нажмите <Enter>.



    Ввод


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

    для ввода с клавиатуры во время работы программы исходных данных (значений переменных) предназначена инструкция
    readln; используя одну инструкцию readln, можно ввести значения нескольких переменных; в случае несоответствия типа введенных данных типу переменной, значение которой вводится с клавиатуры, программа завершает работу и на экран выводится сообщение Error юб: invalid numeric format (если программа запущена из среды разработки, т. е. из Turbo Pascal) или Run time error юб (если программа запущена из операционной системы).

    46. Написать инструкцию, обеспечивающую во время работы программы ввод значения переменной radius.
    47. Написать инструкции, которые обеспечивают ввод значений переменных и и г. Предполагается, что во время работы программы пользователь будет после набора каждого числа нажимать клавишу <Enter>.
    48. Написать инструкцию, которая обеспечивает ввод значений переменных и и г. Предполагается, что во время работы программы пользователь будет набирать числа в одной строке.
    49. Объявите необходимые переменные и напишите фрагмент программы вычисления объема цилиндра, обеспечивающий ввод исходных данных.
    50. Объявите необходимые переменные и напишите инструкции ввода исходных данных для программы вычисления стоимости покупки нескольких тетрадей и карандашей. Предполагается, что во время работы программы пользователь будет вводить данные о каждой составляющей покупки в отдельной строке: сначала цену, затем количество.



    к решению задач этого раздела,


    Приступая к решению задач этого раздела, следует вспомнить, что:
    инструкции write и writein предназначены для вывода на экран монитора сообщений и значений переменных; одна инструкция write (writein) может вывести на экран значения нескольких переменных и (или) несколько сообщений; инструкция writein без параметров переводит курсор в начало следующей строки экрана. 36. Написать программу, которая выводит на экр данных, вводимых во время работы программы, должен соответствовать типу переменной, указанной в инструкции readln;
    37. Написать программу, которая выводит на экран сообщение

    Turbo Pascal 7.0.
    38. Написать программу, которая выводит на экран четверостишие:

    Унылая пора! Очей очарованье!
    Приятна мне твоя прощальная краса —
    Люблю я пышное природы увяданье,
    В багрец и золото одетые леса.
    А. С. Пушкин
    39. Написать инструкцию вывода значения переменной а (тип real) с тремя цифрами в дробной части.
    40. Определите, что делают инструкции:

    write(a);
    write('а');
    41. Написать инструкцию, которая выводит значения дробных переменных а, ь и с в одной строке. Каждое число должно быть выведено с двумя знаками после десятичной точки:

    writeln(a:6:2,' \b:6:2,' ',с:6:2);
    42. Написать инструкции вывода значений переменных а, ь и с. Значение каждой переменной должно быть выведено на отдельной строке.
    43. Написать инструкции вывода значений дробных переменных xi и х2. На экране перед значением переменной должен быть выведен поясняющий текст, представляющий собой имя переменной, за которым следует знак "равно".

    While


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

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

    136. Напишите программу, которая вычисляет п с заданной пользователем точностью. Для этого воспользуйтесь тем, что значение частичной суммы ряда 1—1/3+1/5—1/7+1/9—... при суммировании достаточно большого количества членов приближается к п/4. Рекомендуемый вид экрана во время работы программы приведен ниже (данные, введенные пользователем, выделены полужирным шрифтом).

    Задайте точность вычисления ПИ -> 0.001
    Значение числа ПИ с точностью 0.001000 равно 3.143589
    Просуммировано 502 члена ряда.

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



    Написать рекурсивную функцию вычисления факториала


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

    238. Написать программу, которая вычисляет сопротивление электрической цепи, схема которой приведена на рисунке. Величины сопротивлений и порядок цепи (количество сопротивлений R2) должны вводиться во время работы программы.

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