М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
lizaojgihina
lizaojgihina
17.01.2022 07:07 •  Информатика

Паскаль. данная программа работает, но только при некоторых значениях a[i]. я думаю, что дело в этом условии (a[j])> (a[i]). если a[j] примет отрицательное значение, то в ответе выйдет "не найдено", так же будет выведено не найдено если первое число в массиве не удовлетворяет условию(a[i] mod 2=0) and (a[i]> 0), но является самым маленьким. я понимаю почему, исправить. const n=8; var a: array[1..n] of integer; j,i: integer; begin for i: =1 to n do read(a[i]); j: =1; for i: =1 to n do begin if ((a[j])> (a[i])) and (a[i] mod 2=0) and (a[i]> 0) then j: =i end; if (a[j] mod 2=0) and (a[j]> 0) then write(a[j]) else write('не найдено'); end.

👇
Ответ:
Const
  n = 8;
  nmax = 32767;

var
  a: array[1..n] of integer;
  i, t, min: integer;

begin
  min := nmax;
  for i := 1 to n do
  begin
    Read(t); a[i] := t;
    if (t > 0) and (t mod 2 = 0) then
      if min > t then min := t
  end;
  if min <> nmax then
    Writeln('Минимальный положительный четный элемент равен ', min)
  else
    Writeln('В массиве нет четных положительных элементов')
end.

Тестовое решение:
353 638 -1000 -452 320 -18 19 0
Минимальный положительный четный элемент равен 320
4,7(34 оценок)
Открыть все ответы
Ответ:
kshig
kshig
17.01.2022
Sub ()Dim A(1 To 4, 1 To 4) As IntegerDim B(1 To 3, 1 To 3) As IntegerRandomizeFor i = 1 To 4    For j = 1 To 4        A(i, j) = Int((10 * Rnd) + 1)        Cells(i, j) = A(i, j)    Next jNext iFor i = 1 To 3    For j = 1 To 3        B(i, j) = Int((10 * Rnd) + 1)        Cells(i + 5, j) = B(i, j)    Next jNext iCall ObrabotkaA(A)Call ObrabotkaB(B)Call Result(A, B)End SubSub ObrabotkaA(A)CollumnMax = 0CollumnMin = 0SummMax = 0SummMin = 999For j = 1 To 4Summ = 0    For i = 1 To 4        Summ = Summ + A(i, j)    Next i    If Summ > SummMax Then        SummMax = Summ        CollumnMax = j    End If    If Summ < SummMin Then        SummMin = Summ        CollumnMin = j    End IfNext jFor i = 1 To 4    Temp = A(i, CollumnMax)    A(i, CollumnMax) = A(i, CollumnMin)    A(i, CollumnMin) = TempNext iEnd SubSub ObrabotkaB(B)CollumnMax = 0CollumnMin = 0SummMax = 0SummMin = 999For j = 1 To 3Summ = 0    For i = 1 To 3        Summ = Summ + B(i, j)    Next i    If Summ > SummMax Then        SummMax = Summ        CollumnMax = j    End If    If Summ < SummMin Then        SummMin = Summ        CollumnMin = j    End IfNext jFor i = 1 To 3    Temp = B(i, CollumnMax)    B(i, CollumnMax) = B(i, CollumnMin)    B(i, CollumnMin) = TempNext iEnd SubSub Result(A, B)For i = 1 To 4    For j = 1 To 4        Cells(i, j + 5) = A(i, j)    Next jNext iFor i = 1 To 3    For j = 1 To 3        Cells(i + 5, j + 5) = B(i, j)    Next jNext iEnd Sub
4,4(21 оценок)
Ответ:
crosser001
crosser001
17.01.2022
Uses crt; 
var a, b, S, M, New, New1:integer;
begin
write('a = '); read(a);
write('b = '); read(b);
S:=a+b; M:=a*b; New:=5*a; New1:=5*b;
if ((a mod 2)<>0) and ((b mod 2)<>0) then write('M = ',M) 
 else if ((a mod 2)=0) and ((b mod 2)=0) then  write('S = ',S); 
  if ((a mod 2)=0) and ((b mod 2)<>0) then write('New = ',New); 
   if ((a mod 2)<>0) and ((b mod 2)=0) then write('New1 = ',New1);
end.

Описание:
S=сумма чисел. M=произведение чисел. New=увеличение числа в 5 раз,если 1-ое число четное. New1=увеличение числа в 5 раз,если 2-ое число четное.
4,7(26 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ