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

На вход программе подаётся последовательность символов, заканчивающаяся точкой (точка – признак конца и в последовательность не входит). данная последовательность является правильной записью арифметического выражения, состоящего из целых десятичных чисел и знаков «плюс» и «минус» (могут стоять и перед первым числом). при этом два знака подряд в выражении не допускается. программа должна вычислить значения данного выражения и вывести его на экран. гарантируется, что ни на каком этапе вычислений тип longint не переполнится. пример: введено «234-234+657.», программа должна вывести «657».

Показать ответ
Ответ:
Таиса432156789
Таиса432156789
05.10.2020 12:26
Var s,s1:string; sum,a,code,i:integer;
begin
writeln('Введите выражение:');
readln(s);
sum:=0;
s1:='';
for i:=1 to length(s) do
 case s[i] of
 '0'..'9'    : s1:=s1+s[i];
 '-','+','.' : begin val(s1,a,code); sum:=sum+a; s1:=s[i]; end;
 end;
writeln('sum = ',sum);
end.

Пример:
Введите выражение:
234-234+657.
sum = 657
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота