ПОЖАЛУЙСТА, ОБЪЯСНИТЕ, КАК??? КАК ЭТО РЕШАТЬ? На Паскале
Дан целочисленный массив из 30 элементов. Элементы массива могут принимать произвольные целые значения. С клавиатуры вводится целое число Х. Опишите на русском языке или на одном из языков программирования алгоритм, который находит и выводит наименьший номер элемента, равного Х, или сообщение, что такого элемента нет. Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже.
Приложения:
Ответы
Ответ дал:
2
Ответ:
const N = 30;
var a : array[1..N] of integer;
i, j, x : integer;
Begin
for i := 1 to N do readln(a[i]);
readln(x);
for i := 1 to N do begin //перебираем элементы массива
if a[i] = x then begin //если находим элемент равный Х то
writeln('наименьший номер элемента равного X - ', i); //выводим сообщение
exit; //и завершаем программу не завершив перебор, т.к. нам нужен только наименьший номер
end;
end;
writeln('такого элемента нет'); //если перебрав весь массив не находим совпадений то выводим сообщение
end.
Объяснение:
объяснения в комментариях программы
проверено на PascalABC
Oliviya16:
А какая гарантия что эт именно наименьший элемент? Если я вывожу например, массив из убывающих элементов
Ведь в программе выводится первый элемент, который равен Х
И как выглядела бы программа, если мы вводили наибольший элемент, равный Х? Помогите, пожалуйста
В задаче нужно вывести "наименьший номер элемента". Не путайте "номер элемента" и сам "элемент"
"Какая гарантия, что "
В программе идет ввод элементов в порядке возрастания, поэтому самый первый элемент, который будет равен X и будет элементом с "наименьшим номером"
А, понятно, спасибо
Вас заинтересует
1 год назад
1 год назад
2 года назад
2 года назад
3 года назад
3 года назад
8 лет назад