Новичок в Matlab, и я не могу понять часть кода, который мне дали:
x = 1; % initial guess = 1
Tol = 5e-9; % correct to 8 decimal places
count = 0;
f=0.54030231; % f(1)= 0.54030231
fprintf('step x f(x)\n')
fprintf('---- ----------- ----------\n')
fprintf('%1i %12.8f %12.8f\n',count,x,f)
while abs(f)>Tol %loop until the absolute value of f is smaller than tolerance
count = count + 1
deriv = -sin(x); ; % first derivative of f(x)
x2 = x - (f/deriv); % new value of x
x = x2;
f = cos (x); % new value of f(x)
fprintf('%3i %12.8f %12.8f\n',count,x,f)
end
Программа представляет собой метод Ньютона для нахождения корней уравнений, которые я понимаю.
Что я не понимаю, так это часть:
fprintf('---- ----------- ----------\n')
fprintf('%1i %12.8f %12.8f\n',count,x,f)
Вопросы:
- Почему последний бит второй строки делится на n?
- Какие числа во второй строке, т. е. %1i, %12.8f и т. д.?
- Как это работает с «count, x, f», которое написано после него?
Спасибо
fprintf
? Если нет, то почему? Если да, то что вы не понимаете? - person Eitan T   schedule 06.10.2013