Вопрос по информатике:
На вход программе подаётся последовательность символов, заканчивающаяся точкой (точка – признак конца и в последовательность не входит). Данная последовательность является правильной записью арифметического выражения, состоящего из целых десятичных чисел и знаков «плюс» и «минус» (могут стоять и перед первым числом). При этом два знака подряд в выражении не допускается. Программа должна вычислить значения данного выражения и вывести его на экран. Гарантируется, что ни на каком этапе вычислений тип longint не переполнится. Пример: введено «234-234+657.», программа должна вывести «657».
- 25.01.2018 16:46
- Информатика
- remove_red_eye 12428
- thumb_up 23
Ответы и объяснения 1
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
- 26.01.2018 20:07
- thumb_up 47
Знаете ответ? Поделитесь им!
Есть сомнения?
Не нашли подходящего ответа на вопрос или ответ отсутствует? Воспользуйтесь поиском по сайту, чтобы найти все ответы на похожие вопросы в разделе Информатика.
Трудности с домашними заданиями? Не стесняйтесь попросить о помощи - смело задавайте вопросы!
Информатика — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений.