Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КНИГА_Учимся программировать TURBO PASCAL 7.doc
Скачиваний:
32
Добавлен:
19.08.2019
Размер:
1.62 Mб
Скачать

Var mas, num2, num5 : array[1..M] of integer;

M20, M50, I, N : INTEGER;

BEGIN

WRITE('BBEДИTE РАЗМЕР МАССИВА N = ');

READLN(N);

M20 := 0;M50 := 0;

WRITELN('ВВЕДИТЕ ', N,' ЭЛЕМЕНТОВ МАССИВА');

FOR I := 1 TO N DO

BEGIN

READ(MAS[I]);

CASE MAS[I] OF

20 : BEGIN M20 := M20+1;NUM2[M20] := I END;

50 : BEGIN M50 := M50+1;NUM5[M20] := I END; (должно быть [M50]:=1 ?)

END;

END;

WRITELN('MOHET ДОСТОИНСТВОМ 20 РУБЛЕЙ ', M20,' ШТУК');

WRITELN('ИX ПОРЯДКОВЫЕ НОМЕРА: ');

FOR I := 1 ТО M20 DO

WRITE(NUM2[I] : 3);

WRITELN;

WRITELN('MOHET ДОСТОИНСТВОМ 50 РУБЛЕЙ ', M50,' ШТУК');

WRITELN('ИX ПОРЯДКОВЫЕ НОМЕРА:');

FOR I := 1 ТО M20 DO

WRITE(NUM5[I]: 3);

WRITELN;

END.

Для решения задачи:

- формируем тело программы и описываем переменные;

- вводим длину массива N;

- вводим значение элементов массива, проверяя их достоин­ство;

- определяем количество монет по 20 и 50 рублей и запомина­ем их порядковые номера;

- выводим результат.

Переменные:

MAS - массив чисел;

NUM2 - массив, содержащий порядковые номера монет по 20 рублей;

NUM5 - массив, содержащий порядковые номера монет по 50 рублей;

N - размер массива;

I - переменная цикла;

М20 - количество монет по 20 рублей;

М50 - количество монет по 50 рублей.

Практические задания

1. Дан упорядоченный по убыванию массив чисел. Вводим число N. Вставить это число в упорядоченный массив так, чтобы массив-результат тоже был упорядочен по убыванию.

2. Даны два упорядоченных массива целых чисел Ml и М2. Слить их в один упорядоченный массив. Рассмотреть случаи, когда массивы Ml и М2 упорядочены одинаково и когда по-разному.

3. Дан массив чисел. Найти сумму трех минимальных элементов.

4. Дан массив целых чисел. Записать его задом наперед.

5. Дан массив целых чисел Ml. Вводим массив М2, размерность которого значительно меньше, чем у Ml. Определить, сколько раз массив М2 встречается в Ml.

Тема 2 Двумерные массивы

В PASCAL 7.0 тип двумерных массивов описывается так же, как и одномерных. Различие состоит в том, что вы должны ука­зать диапазон для двух индексов массива - положение каждого элемента массива A [I, J] определяется значением строки I и столбца J. Например, описание двумерного массива натуральных чисел размера N х М может быть задано следующей строкой: VAR MAS : ARRAY[1..N, 1..M] OF INTEGER;

Алгоритмы, предназначенные для обработки таких массивов, могут быть структурированы как:

- алгоритмы поиска;

- алгоритмы выборки;

- алгоритмы сортировки;

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

Задача 7.1 Дана матрица N x M, состоящая из натуральных чисел. Найти в ней наименьший элемент и опреде­лить его местоположение. Если таких элементов несколько, то вывести на экран положение каж­дого из них.

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

PROGRAM PG7_1;

CONST T = 100;S = 100;