В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
Anastasia888888
Anastasia888888
19.05.2022 08:22 •  Информатика

Решить в pascal 1. поменять местами максимальный и минимальный элемент массива. 2. вывести четные числа среди положительных элементов 3. напечатать сумму и номера положительных элементов после первого нулевого элемента

Показать ответ
Ответ:
AnyaNaglova
AnyaNaglova
15.09.2020 18:49
1)
// здесь нужно объявить количество элементов или ввести с
var 
a: array [1..N] of integer;
i: integer;
min: integer;
max: integer;
minnum: integer;
maxnum: integer;

begin
// здесь должен быть ввод значений массива в цикле
// for i:=1 to N do
a[i]=Random(100); или через readln;

min := a[1];
minnum := 1;
max := a[1];
maxnum := 1;
for var i:=2 to N do
begin
  if a[i]<min then
    begin
      min := a[i];
      minnum := i;
    end;
  if a[i]>max then
    begin
      max := a[i];
      maxnum := i;
    end;
end;
a[maxnum]=min;
a[minnum]=max;
//здесь вывод нового массива
end.

2)
for i:=1 to N do
if a[i]>0 then
  if a[i] mod 2 = 0 then
     write(a[i], ' ');
3)
var
sum: integer;
start: integer;
for i:=1 to N do
if a[i]=0 then
   start=i+1;  нашли первый нулевой, начинаем дальше со следующего
for i:=start to N do
begin
if a[i]>0 then
   begin
    sum=sum+a[i];
    write(i, ' '); ///номер положительного элемента
   end;
writeln;
write('Сумма =',sum);
end;
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота