Количество элементов в массиве, отличающихся от минимального на 5

Задача

Определить количество элементов в заданном массиве, отличающихся от минимального на 5.

Решение

Описание переменных: 

  • a - массив
  • min - минимальный элемент массива
  • i - счетчик для циклов
  • count - количество элементов массива, больше минимального на 5.

Алгоритм решения задачи: 

Данную задачу можно свести к двум подзадачам:

  1. Поиск минимального элемента массива.
  2. Определение количества элементов массива, которые отличаются от минимального на 5 единиц.

Решение первой подзадачи было рассмотрено в других задачах.

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

В массиве может вообще не быть элементов, больших минимального на 5. Поэтому сначала присваиваем переменной count значение 0. Далее в цикле со счетчиком (for) перебираем все элементы массива. Если какой-либо из них равен сумме переменной min и 5, то увеличиваем значение count на 5.

Программа на языке Паскаль:

const
	N = 10;
var 
	a: array[1..N] of integer;
	min: integer;
	i, count: byte;
begin
	randomize;
	for i:=1 to N do begin
		a[i] := random(15);
		write(a[i],' ');
	end;
	writeln;
 
	min := a[i];
	for i:=2 to N do
		if a[i] < min then
			min := a[i];
	writeln('Минимальный: ', min, '. Искомый: ', min+5);
 
	count := 0;
	for i:=1 to N do
		if a[i]=min+5 then
			count := count + 1;
	writeln('Количество искомых: ', count);
end.

Тема

Одномерные массивы

Уровень

Комбинированные задачи

Теги

Добавить комментарий