Перевод строки в число - 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.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.846 из 5
Похожие ответы