program ITERAT;
uses crt;
const max_iter=100; {maksimal'noe chislo iteraciy}
var
t:text;
i: integer;
x,x0,eps,M: real;
function F(x:real):real; {funkciya}
begin
F:= cos (4*x)/5;
end;
begin {osnovnaya programma}
clrscr;
write('Vvedite priblijennoe znachenie x='); readln(x);
write('Vvedite tochnost vichisleniy eps='); readln(eps);
i:=0;
repeat
x0:=x;
x:=x0+F(x0);
inc(i);
writeln('---Iteraciya ' , i:3,' x=',x);
writeln('F(x)=' , F(x),' tochnost=' , abs(x-x0));
until (abs(x-x0)<=eps) or (i>max_iter);
if (abs(x-x0)<=eps) then writeln ('Otvet: X=' , x)
else writeln('OTVET NE NAYDEN!!! za ',max_iter:0,' shagov iteraciya ne soshlas');
assign(t,'C:\result.txt');
rewrite(t);
writeln(t);
close(t);
readln;
end.
Записать результат программы в файл
Просто создается пустой текстовый файл, где я допустила ошибку?
Код:
assign(t,'C:\result.txt');
rewrite(t);
writeln(t);
close(t);
rewrite(t);
writeln(t);
close(t);
собссно я не вижу чтобы туда что-то писалось
Цитата:
собссно я не вижу чтобы туда что-то писалось
действительно не внимательно написала :o
Код:
assign(t,'C:\result.txt');
rewrite(t);
writeln(t,'---Iteraciya ' , i:3,' x=',x,'F(x)=' , F(x),' tochnost=' , abs(x-x0),'Otvet: X=' , x);
close(t);
rewrite(t);
writeln(t,'---Iteraciya ' , i:3,' x=',x,'F(x)=' , F(x),' tochnost=' , abs(x-x0),'Otvet: X=' , x);
close(t);
Соответственно запишется 9-я итерация и ответ, а как записать в ответе все 9 результатов итераций?
Код:
writeln(t,'---Iteraciya ' , i:3,' x=',x,'F(x)=' , F(x),' tochnost=' , abs(x-x0),'Otvet: X=' , x);
был внутри цикла repeat/until ?
ответ один? тогда оставить его отдельно после цикла ессно.