Семинар 3
Задание 1. Разработать программу для нахождения элемента массива с максимальным значение.
-
Постановка задачи
Дано. Одномерный массив чисел.
Требуется. В массиве чисел найти элемент с максимальным значением.
При:
1. Число элементов N<=20.
2. Значения элементов – целые числа.
-
Связь
Присвоить начальные значения переменным:
-
I - (текущий номер элемента массива) - 2.
-
Max – (максимальное значение элемента) – A[1].
Для каждого элемента массива проверить условие. Если A[I] >Max , то присвоить переменной Max значение A[I] .
Если I<N , то перейти к следующему элементу массива - I:=I+1, в противном случае вывести значение Max.
-
Внешняя спецификация.
Назначение:
В массиве чисел найти элемент с максимальным значением.
Входн. данные:
N – число элементов в массиве.
A1, A2… AN – значения элементов массива.
Вых. данные:
В массиве чисел найти элемент с максимальным значением
Число элементов массива <=20 <N>
Значения элементов массива – целые числа
<A1>
.
.
<AN>
Исходный массив
<A1> <A2> … <AN>
Максимальное значение равно - <Max>
-
Запись алгоритма на РАЯ
Алгоритм " В массиве чисел найти элемент с максимальным значением". Внутренние переменные : N: цел. {количество элементов массива} A[1 .. 20] : цел. {одномерный массив, в котором можно разместить от 1 до 20 элементов - целых чисел} Max : цел. {элемент массива с максимальным значением} I : цел. {текущий номер элемента массива} Начало
Вывод (‘В массиве чисел найти элемент с максимальным значением.’) Вывод ('Число элементов массива <=20') Ввод (N) Вывод ('Значения элементов массива – целые числа') Цикл - для I от 1 до N Ввод (A[i]) Кцикл Max := A[1] Цикл - для I от 2 до N Если A[i] > Max то Max := a[I]
Кесли Кцикл Вывод ('Максимальное значение равно - ', Max) Конец
-
Тест для проверки алгоритма
Тест 1
Число элементов массива - N=5
Значения элементов массива 3 -3 2 14 7
Максимальное значение равно - 14
Задание 2. Среди положительных элементов массива найти элемент с минимальным значением и его номер.
-
Постановка задачи
Дано. Одномерный массив чисел.
Требуется. Среди положительных элементов массива найти элемент с минимальным значением и его номер.
При:
1. Число элементов N<=20.
2. Значения элементов – целые числа.
-
Связь
Для поиска первого положительного элемента массива присвоим переменной I - (текущий номер элемента массива) начальное значение - 1.
Если A[I] <= 0, то проверить условие, если I<N, то перейти к следующему элементу массива - I:=I+1, в противном случае вывести сообщение ‘В массиве нет элементов с положительными значениями’.
Если найден элемент массива A[I] > 0, то присвоить переменной Min значение A[I] и переменной Imin (номер минимального элемента) значение I.
Для поиска минимального значения и его номера среди положительных элементов массива присвоить переменной J - (текущий номер элемента массива) значение - Imin+1.
Для каждого элемента массива проверить условие. Если A[J] <Min , то присвоить переменной Min значение A[J] , а переменной Imin – значение J .
Если J<N , то перейти к следующему элементу массива - J:=J+1, в противном случае вывести значения Min и Imin.
-
Внешняя спецификация.
Назначение:
Среди положительных элементов массива найти элемент с минимальным значением и его номер.
Входн. данные:
N – число элементов в массиве.
A1, A2… AN – значения элементов массива.
Вых. данные:
1. В массиве есть элементы с положительными значениями.
Среди положительных элементов массива найти элемент с минимальным значением и его номер
Число элементов массива <=20 <N>
Значения элементов массива – целые числа
<A1>
.
.
<AN>
Исходный массив
<A1> <A2> … <AN>
Минимальное значение равно - <Min>
Номер элемента с минимальным значением - <Imin>
2. В массиве нет элементов с положительными значениями.
Среди положительных элементов массива найти элемент с минимальным значением и его номер
Число элементов массива <=20 <N>
Значения элементов массива – целые числа
<A1>
.
.
<AN>
Исходный массив
<A1> <A2> … <AN>
В массиве нет элементов с положительными значениями
-
Запись алгоритма на РАЯ
Алгоритм " Среди положительных элементов массива найти элемент с минимальным значением и его номер". Внутренние переменные : N: цел. {количество элементов массива} A[1 .. 20] : цел. {одномерный массив, в котором можно разместить от 1 до 20 элементов - целых чисел} Min : цел. {элемент массива с минимальным значением}
Imin: цел. {номер элемента с минимальным значением} I, J : цел. {текущие номера элементов массива} Начало
Вывод (‘Среди положительных элементов массива найти элемент с минимальным значением и его номер.’) Вывод ('Число элементов массива <=20') Ввод (N) Вывод ('Значения элементов массива – целые числа') Цикл - для I от 1 до N Ввод (A[i]) Кцикл
{Поиск первого положительного элемента в массиве}
I:=1
Цикл_пока (A[I]<=0) и (I<=N)
I:=I+1
Кцикл
Если I<=N то
{Найден первый положительный элемент массива. }
Min:= A[I]
Imin:=I
{Поиск элемента с минимальным значением и его номера.}
Цикл - для J от Imin+1 до N Если A[J] < Min то
Min := a[J]
Imin:=J
Кесли
Кцикл Вывод ('Минимальное значение равно - ', Min )
Вывод (' Номер минимального значения равен - ', Imin )
Иначе {Положительный элемент не найден}
Вывод (' В массиве нет элементов с положительными значениями ' )
Кесли
Конец
-
Тесты для проверки алгоритма
Тест 1
Число элементов массива - N=5
Значения элементов массива -3 3 2 -14 7
Минимальное значение равно 2
Номер минимального значения 3
Тест 2
Число элементов массива - N=4
Значения элементов массива -3 -2 -14 -7
В массиве нет элементов с положительными значениями
Задачи для самостоятельной работы
Разработать программы для нахождения:
-
значения и порядкового номера минимального элемента в массиве чисел.
-
среди элементов с отрицательными значениями найти максимальный элемент и его порядковый номер.
