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

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

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

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

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

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

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

Введите элементы массива (10 целых чисел) в одной строке
и нажмите .
-> 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 Для завершения работы нажмите .

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

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

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

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

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

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

Факультатив

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) занимает верную позицию.
Ниже представлен рекомендуемый вид экрана во время работы программы. Данные, введенные пользователем, выделены полужирным шрифтом.

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

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

А

.-

Б

-...

в

.---

г

--.

д

-..

Е

 

ж

...-

3

--..

и

..

И

.---

к

-.-

л

.-..

м

--

Н

-.

О

---

п

.--.

р

.-.

С

...

т

-

У

..-

ф

..-.

X

....

ц

-.- .

ч

---.

ш

---

Щ

--.-

ъ

-..-

ы

-.—

ь

-..-

э

..-.

ю

..--

я

.-.-