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

Определить среди 3 введенных чисел сумму отрицательных и положительных чисел. если больше сумма положительных, то найти разность первого и второго числа, а иначе найти произведение трех чисел. блок схема программа и расчет

👇
Ответ:
sveta465
sveta465
31.01.2023
Напишу только программу.

Var a,b,c,x,i,s1,s2:integer;
Begin
 s1:=0; s2:=0;
 c:=0; b:=0;
 for i:=1 to 3 do
   begin
    write('x',i,'=');
    readln(x);
    if x>0 then s1:=s1+x;
    if x<0 then s2:=s2+x;
    c:=b; b:=a; a:=x;
   end;
 if s1>s2 then s1:=c-b
  else s1:=c*b*a;
 writeln('ответ: ',s1);
End.
4,8(48 оценок)
Открыть все ответы
Ответ:
polinaasya
polinaasya
31.01.2023
Type
    LinMass = array [1..1000] of Integer;

var
    A: LinMass;
    N, i, j: Integer;

begin
    Write('Количество элементов массива: ');
    ReadLn(N);
    for I := 1 To N Do
    begin
        Write('Введите A[', I, '] ');ReadLn(A[i]);
    end;
    
    i := 1;
    while (i <= n) do
        if (A[i] >= 100) and (A[i] <= 999) and (A[i] mod 2 = 0) and (A[i] mod i = 0) then begin
            for j := i + 1 to n do
                A[j - 1] := A[j];
            n := n - 1
        end
        else i := i + 1;
    
    for I := 1 To N Do
        write(a[i]:6);
end.
4,7(54 оценок)
Ответ:
kirillsmex13p07s3r
kirillsmex13p07s3r
31.01.2023
Var
    A: array [1..100] of Integer;
    N, i, j, k: Integer;

begin
    Write('Количество элементов массива: ');
    ReadLn(N);
    k := 0;
    
    for i := 1 To N Do
    begin
        Write('A[', I, '] = ');
        ReadLn(A[i]);
        {A[i] := Random(100) - 50;
        write(A[i], ' ');}
        if A[i] < 0 then k := i;
    end;
    writeln;
    
    {фильтр, если нет отрицательных}
    if k = 0 then begin
        write('Отрицательных элементов нет');
        halt;
    end;
    
    writeln('Удаление отрицательных элементов');
    k := 1;
    while (n > 0) and (k <= n) do
    begin
        if A[k] < 0 then begin
            for i := k to n - 1 do
                A[i] := A[i + 1];
            n := n - 1;
        end
        else k := k + 1;
    end;
    
    for i := 1 To N Do
        write(A[i], ' ');
end.

а вообще правильнее создать еще один массив и переписать туда нужные элементы - куда меньше операций, циклов и затрат памяти. Массив не предназначен для "удаления" элементов в нем
4,6(84 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ