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

Склавиатуры вводится строка, содержащая целые числа, отделённые друг от друга знаками арифметических операций + - * /. подсчитать и вывести значение этого выражения. операции выполняются последовательно (как на калькуляторе) без учёта приоритета операций. pascal abc

👇
Ответ:
azizplay07
azizplay07
25.04.2021
Var
   A,R:real;
   i,L,z:integer;
   S:string;
Begin
Read(S);
L:=Length(S);
i:=1;
R:=0;
While (S[i]in['0'..'9'])and(i<L) do
   Begin
   R:=R*10+StrToInt(S[i]);
   i:=i+1
   End;
While i<L do
   Begin
   Case S[i] of
      '+':z:=0;
      '-':z:=1;
      '*':z:=2;
      '/':z:=3;
   End;
   i:=i+1;
   A:=0;
   While (S[i]in['0'..'9'])and(i<L) do
      Begin
      A:=A*10+StrToInt(S[i]);
      i:=i+1
      End;
   if i=L then A:=A*10+StrToInt(S[L]);
   Case z of
      0:R:=R+A;
      1:R:=R-A;
      2:R:=R*A;
      3:R:=R/A;
   End;
   End;
WriteLn('R = ',R);
End.
4,6(94 оценок)
Открыть все ответы
Ответ:
ochvv15owqbd0
ochvv15owqbd0
25.04.2021
Const
  n=15;
var
  i,np,nn,amax:integer;
  a:array[1..n] of integer;
begin
  Randomize;
  Write('Исходный массив: ');
  np:=0; nn:=0;
  for i:=1 to n do begin
    a[i]:=Random(51)-15;
    Write(a[i],' ');
    if a[i]>0 then Inc(np)
    else if a[i]<0 then Inc(nn);
    end;
  Writeln;
  if np/nn>2 then begin
    amax:=a[i];
    for i:=2 to n do
      if a[i]>amax then amax:=a[i];
    Write('Выходной массив: ');
    for i:=1 to n do begin
      if a[i]<0 then a[i]:=1
      else
        if a[i]>0 then a[i]:=a[i]*amax;
      Write(a[i],' ')
      end;
    Writeln
    end
  else Writeln('В массив изменения не вносятся')
end.

Пример работы программы
Исходный массив: 28 8 21 32 0 26 30 11 35 21 14 6 0 -4 -8
Выходной массив: 980 280 735 1120 0 910 1050 385 1225 735 490 210 0 1 1
4,4(26 оценок)
Ответ:
gr3ygo0se
gr3ygo0se
25.04.2021
{1}

var
  a,k,s: integer;
begin
  read(a);
  k := 0; s := 0;
  while a mod 2 <> 0 do
    begin
    if abs(a) mod 10 > 5 then
      s := s + a;
    a := abs(a);
    if (a > 9) and (a < 100) then
      k := k + 1;
    read(a);
    end;
  writeln('k=',k,', s=',s)
end.

{2}

var
  n,i,p,a: integer;
begin
  read(n);
  p := 1;
  for i := 1 to n do
    begin
    read(a);
    if (a > 0) and (a mod 3 = 0) then
      p := p * a;
    end;
  writeln('p=',p)
end.

{3}

var
  n,a,i,k,s: integer;
begin
  read(n);
  k := 0; s := 0;
  for i := 1 to n do
    begin
    read(a);
    if a > 0 then
      begin
      s := s + a;
      k := k + 1;
      end;
    end;
  if k = 0 then k := 1;
  writeln('s=',s/k)
end.
4,6(48 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ