Text43. Даны вещественные числа $$A$$, $$B$$ и целое число $$N$$. Создать текстовый файл, содержащий таблицу значений функций $$\sin(x)$$ и $$\cos(x)$$ на промежутке $$[A, B]$$ с шагом $$(B-A)/N$$. Таблица состоит из трех столбцов: с аргументами $$x$$ ($$8$$ позиций, из них $$4$$ под дробную часть) и со значениями $$\sin(x)$$ и $$\cos(x)$$ (по $$12$$ позиций, из них $$8$$ под дробную часть). Столбцы выравниваются по правому краю.
Решение:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
program Text43; var F_out: Text; line,S,Name:string; A,B,N,i:integer; y,x:Real; begin Write('A: '); Readln(A); Write('B: '); Readln(B); Write('N: '); Readln(N); Write('File name out: '); Readln(Name); Assign(F_out,Name); Rewrite(F_out); y:=A; x:=0; While x<=B do begin Write(F_out,'|'); str(trunc(x),S); for i:=1 to 3-length(S) do Write(F_out,' '); Write(F_out,x:3:4); y:=sin(x); if y>=0 then Write(F_out,' '); str(trunc(y),S); for i:=1 to 2-length(S) do Write(F_out,' '); Write(F_out,y:3:8); y:=cos(x); if y>=0 then Write(F_out,' '); str(trunc(y),S); for i:=1 to 2-length(S) do Write(F_out,' '); Write(F_out,y:3:8); Writeln(F_out,'|'); x:=x+(B-A)/N; end; Close(F_out); end. |
Другие задачи из раздела Text можно посмотреть здесь.
Комментарии: