Monday, December 23, 2019

ЛР2 Программирование (1.3.1 В21) - IV

LabWork2
📑 IT Online Mini Campus. Task 1.3.1

IV. Программа SageMath (Python)
var('N,i,A,R,T')
D(A,R,T,i)=sqrt(T^2+(.5*A*i^2-sqrt(R^2-T^2))^2)
def create_table(N,A,R,T):
    pretty_print(html(latex(D))); S=[1..N]
    if (R<T) or (A<=0): 
        pretty_print('Введите другие данные')
    else:
        d=[[i,A,R,T,D(A,R,T,i)] for i in S]
        show(table([['N','A','R','T','D']]+d))
create_table(7,3.2,23.1,9.4)


ЛР2 Программирование (1.3.1 В21) - III

LabWork2
📑 Compile Pascal Online
Для проверки текст программы копируется в main.pas, 
данные (каждое число на новой строке) - в STDIN.

III. Программа Pascal
Program Lab2;
var D: array [0..1000] of real;
    N,i: integer;
    A,R,T: real;
begin
    writeln('Лаб.2':38);
    writeln('Время перемещения в секундах N: '); 
    readln(N); writeln(N:3);
    writeln('Ускорение A в м/с^2: '); 
    readln(A); writeln(A:5:2);
    writeln('Расстояние в начальный момент времени R: '); 
    readln(R); writeln(R:5:2);
    writeln('Миимальное расстояние T: '); 
    readln(T); writeln(T:5:2);
    if ((A<=0) or (R<T)) then
        writeln('Введите другие данные')
    else
    begin
        i:=1; 
        writeln('Таблица значений расстояния D');
        while i<N+1 do
        begin
            D[i]:=sqrt(T*T+exp(2*ln(abs(0.5*A*i*i-sqrt(R*R-T*T)))));
            writeln(i:3,' ',D[i]:7:4);
            i:=i+1;
        end;
    end;
end.

STDIN
7
3.2
23.1
9.4


ЛР2 Программирование (1.3.1 В21) - II

LabWork2
II. Алгоритм