PascalABC.NET Напишите программу, которая вычисляет арифметическое выражение, введённое в...

0 голосов
241 просмотров

PascalABC.NET

Напишите программу, которая вычисляет арифметическое выражение, введённое в виде символьной строки. Выражение содержит только целые числа и знаки сложения.

Входные данные
Входная строка содержит запись арифметического выражения.

Выходные данные
Программа должна вывести результат вычисления переданного ей выражения.

Примеры
входные данные
12+32+43+5
выходные данные
92


Информатика (20 баллов) | 241 просмотров
Дан 1 ответ
0 голосов
Правильный ответ
// PascalABC.NET 3.2, сборка 1417 от 28.03.2017
// Внимание! Если программа не работает, обновите версию!

begin
  // без проверок на правильность
  var st:=ReadlnString;
  var p:=st.MatchValues('(\d+)').Select(x->x.ToBigInteger);
  var s:=BigInteger(0);
  foreach var n in p do s+=n;
  Writeln(s)
end.

Примеры
12+32+43+5
92

123424634243542+36745656856678567578654+434253+3222+322523230
36745656980103524782901
(150k баллов)