• Напишите пожалуйста программу,которая находит максимальный и минимальный из элементов массива с четными положительными значениями.Если в массиве нет элементов с четными положительными значениями,нужно вывести сообщение об этом.
    С объяснением!

Ответы 1

  • const n = 10; //В константе n указываем количество элементов в массиве

    var a:array[1..n]of integer;

    i,s,max,min:integer;

    begin

    write('Массив: '); //Вывод на экран слова "Массив: "

    for i:= 1 to n do //Цикл с параметром для последовательной обработки массива

    begin

    a[i]:= random(21)-10; //Заполнение массива случайными числами из промежутка [-10,10]

    if (a[i]>0){//Проверяем положительный элемент или нет} and (a[i] mod 2 = 0){//Проверяем чётный элемент или нет} then s:=s+1; //В переменной s будет считаться количество чётных положительных элементов при выполнении, указанных условий

    write(a[i],'  ') //Вывод на экран массива в строку

    end;

    writeln; //Переход на новыю строку

    if s=0 then write('Чётных положительных элементов в массиве нет') //Вывод на экран сообщения "Чётных положительных элементов в массиве нет" и завершение программы

    else //Продолжении программы при нахождении хотя бы 1-го чётного положительного элемента

    begin

    max:=2; //Т.к. 2 минимальное чётное положительное число, то присваиваем это значение переменной max

    for i:= 1 to n do //Поиск max элемента

    if (a[i]>0) and (a[i] mod 2 = 0) and (a[i]>max){//Проверяем больше текущий элемент max или нет} then max:=a[i]; //Присваиваем переменной max значение текущего элемента при выполнении, указанных условий

    min:=max; //Т.к. max значение элемента массива уже найдено, то переменной min присваиваем значение переменной max

    for i:= 1 to n do //Поиск min элемента

    if (a[i]>0) and (a[i] mod 2 = 0) and (a[i]<min){//Проверяем меньше текущий элемент min или нет} then min:=a[i]; //Присваиваем переменной min значение текущего элемента при выполнении, указанных условий

    if max=min then write ('Максимальным и минимальным чётным положительным элементом является один и тот же элемент: ',max) //Вывод на экран результатов

    else

    begin

    writeLn('Максимальный чётный положительный элемент: ',max);//Вывод на экран результатов

    write('Минимальный  чётный положительный элемент: ',min)//Вывод на экран результатов

    end

    end

    end.

    • Автор:

      nelson65
    • 6 лет назад
    • 0
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years