Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Разборка задач №1-10.doc
Скачиваний:
5
Добавлен:
26.09.2019
Размер:
208.38 Кб
Скачать

1. Начало

2. Ввод количества элементов

3,4. Цикл, обеспечивающий ввод значений в массив

5. Переменной min присваивается значение первого элемента массива

6. Цикл поиска минимального элемента массива Y

7. Проверка условия, Y[i]< min. Если условие выполняется, то переход к блоку 8, иначе к блоку 6.

8. Переменной min присваивается значение элемента массива с порядковым номером I, а переменной М1 – индекс (номер) этого элемента

9. Переменной mах присваивается значение первого элемента массива

10. Цикл поиска максимального элемента массива Y.

11. Проверка условия, Y[i]>mах. Если условие выполняется, то переход к блоку 12, иначе к блоку 10.

12. Переменной mах присваивается значение элемента массива с порядковым номером I, а переменной М2 - индекс (номер) этого элемента.

13. Процесс, при котором минимальный элемент ставится на место максимального, а максимальный - на место минимального

14,15. Цикл, обеспечивающий вывод результата на экран

16. Конец

Текст программы

Program exp5;

Uses crt ;

Var y: array[1..10] of real;

i, n, m1, m2: integer;

min, max, С: real;

begin

clrscr;

write(‘Введите количество элементов: ’);

readln (n);

writeln(‘Введите элементы:’);

for i:= to n do begin

write( ‘Y(‘, i ,’) = ’ );

readln ( Y[ i ] );

end;

writeln;

min:= y[1];

for i:= to n do if y[ i ] < min then

begin

min: = y [ i ];

m1: = i;

end;

max: y[1];

for i:= to n do if y[ i ] > max then

begin

max: = y [ i ];

m2: = i;

end;

writeln(‘Исходный массив:’);

for i:= to n do

write(y [ i ]:7:2;

writeln;

writeln ( ‘ Минимальный элемент = ‘,y[m1]:7:2, ‘, его номер: ’, m1:2 ) ;

writeln ( ‘ Максимальный элемент = ‘,y[m2]:7:2,‘, его номер: ’, m2:2) ;

writeln;

(* Обмен местами максимального и минимального элементов *)

C : = y [m1 ] ;

y [ m1 ] : = y [ m2 ];

y [ m2 ] : = C ;

writeln;

writeln(‘Массив, полученный в результате обмена:’);

for i:= to n do

write(y [ i ]:7:2;

writeln;

ReadKey;

end.

Результат

Введите количество элементов: 4

Введите элементы:

Y ( 1 ) = 3

Y ( 2 ) = 6

Y ( 3 ) = 1

Y ( 4 ) = 2

Исходный массив:

3.00 6.00 1.00 2.00

Минимальный элемент = 1.00, его номер: 3

Максимальный элемент = 6.00, его номер: 2

Массив, полученный в результате обмена:

3.00 1.00 6.00 2.00

Задача 4

Найти сумму, количество и произведение положительных элементов массива А (12,9).

Назначение переменных

А - имя двумерного массива (матрицы)

n,m - количество строк и столбцов обрабатываемого массива

I,j - переменные для хранения текущего значения строки и столбца в организованном для обработки матрицы циклическом процессе

К - количество положительных элементов массива

Sum – сумма положительных элементов массива А

Р - произведение положительных элементов массива А

Описание алгоритма

  1. Начало

  2. Ввод с клавиатуры значение переменных m и n.

3,4,5. Цикл, обеспечивающий ввод элементов двумерного массива.

6. Подготовка переменных K, Sum, P (задание им начальных значений).

7. Цикл, обеспечивающий обращение к элементам двумерного массива по строкам.

8. Цикл, обеспечивающий обращение к элементам двумерного массива по столбцам.

9. Определение положительного элемента. Если условие выполняется, то переход к блоку 10, иначе на начало цикла (к следующему элементу).

10. Учет положительного элемента в переменных K, Sum, P в соответствии с их назначением.

11. Вывод результатов.