Сообщение от
Fire3d
Просто тем способом каторый netman написал.... Я не проходил ))) Т.е. не учили )))
в чистом паскале я не особо но насколько я заню проще было бы сделать так:
Код:
var s:string;
a,b,c,posit:integer;
begin
read(s);
posit:=pos('+',s);
a:=val(copy(s,1,posit-1));
b:=val(copy(s,posit+1,Length(s)));
c:=a+b;
write('=',c);
readln;
end.
val - преобразует строку вчисло
copy - копирует заданную часть строки, формат записи такой copy(строка из которой копируем, символ с которого начинаем копировать, символ по который копируем)
но у NetMen ошибка в коде, в этой строке:
b:=Str2Int(copy(s,posit+1,length(s)-posit+1));
а именно тут length(s)-posit+1 он от общей длинны строки отнимает высчитанную позицию знака +, это не верно а вдруг будет такая запись 15+4
тогда получится 4-3 т.е. такая запись b:=Str2Int(copy(s,posit+1,1);
где 4 - длинна строки, а 3 - позиция знака +.
провильно буит так: b:=Str2Int(copy(s,posit+1,Length(s)));