Я пытаюсь прочитать цифры иррациональных чисел, таких как 2^0.5
и pi
по одному в Matlab.
Я пытался использовать это:
x=pi;
y=num2str(x)
out=str2num(y(1))
но он читает только несколько цифр. Затем я попытался использовать функцию vpa.
x=vpa(pi,100);
y=num2str(x)
out=str2num(y(1))
но vpa делает x переменной sym, которую num2str не может прочитать.
Затем я попробовал метод, описанный в здесь , но, похоже, он работает только для рациональных чисел, начиная с
sym(99)^95
возвращает число, которое можно прочитать цифрой за цифрой, используя
char(sym(99)^95)-'0'
но
sym(2)^0.5
просто говорит
ans= 2^(1/2)
Как я могу сделать то же самое с иррациональными числами, чтобы сказать 10000 цифр точности и сохранить эти цифры в массиве (1000,1)?