NEED HELP! in load a text file containing the first one million digits of Pi.
4 views (last 30 days)
Show older comments
Hi friends, I have a problem loading a text file containg the frist one million digits of number Pi.
Any one who can help i really need help it is urgent!!!.
5 Comments
Adam Danz
on 14 Mar 2019
Edited: Adam Danz
on 14 Mar 2019
Rather than loading the digits from the text file, couldn't you get them directly from within Matlab?
p = sym(pi);
piVpa = vpa(p,1000001);
piChar = char(piVpa);
% put all decimal places into a vector (might take several seconds)
pidp = str2double(cellstr(piChar(3:end)'));
UPDATE: when compared with Stephen Cobeldick's solution using isequal(vec, pidp), the results are the same. However, Stephen's solution is much faster. My solution would be a good plan-b if you don't have a text file available.
Accepted Answer
Stephen23
on 14 Mar 2019
Edited: Stephen23
on 14 Mar 2019
This code imports all of the digits in around one second:
>> fid = fopen('data.txt','rt');
>> vec = fscanf(fid,'%1d');
>> fclose(fid);
>> numel(vec)
ans = 1000000
>> vec(1:10) % first ten digits
ans =
3
1
4
1
5
9
2
6
5
3
>> vec(end-9:end) % last ten digits
ans =
0
5
7
7
9
4
5
8
1
5
3 Comments
More Answers (0)
See Also
Categories
Find more on String Parsing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!