Перевод строки в число - PascalABC.NET
Формулировка задачи:
Нужно написать перевод записи a1^b1*a2^b2*...*ak^bk в число
причём записи az^0 быть не должно, и вместо записи az^1 будет az
я сделал перевод числа в строку, а наоборот потребуется присваивание строк числу(например a := s[1], где s строка)
Решение задачи: «Перевод строки в число»
textual
Листинг программы
begin var S := '2.1^3*3^4*4^5'; WriteLn('1) Исходное выражение:', NewLine, S); WriteLn(NewLine, '2) Разделим на операции возведения в степень:'); var A := S.Split('*'); foreach var Sub in A do WriteLn(Sub); WriteLn(NewLine, '3) Разделим на числа:'); foreach var Sub in A do begin var TwoNumbers := Sub.Split('^'); WriteLn(Sub, ' -> ', TwoNumbers[0], ' ^ ', TwoNumbers[1]); end; WriteLn(NewLine, '4) Преобразуем в числа и выполним операции:'); var Result := 1.0; foreach var Sub in A do begin var TwoNumbers := Sub.Split('^'); var Pow := Power(TwoNumbers[0].ToReal, TwoNumbers[1].ToReal); Result *= Pow; WriteLn(Sub, ' -> ', TwoNumbers[0], ' ^ ', TwoNumbers[1], ' = ', Pow); end; WriteLn(NewLine, 'Результат: ', Result); end.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д