Другие языки программирования и технологии
Теорема Пифагора PASCAL
ПОЖАЛУЙСТА НАПИШИТЕ ДОКАЗАТЕЛЬСТВО ТЕОРЕМЫ ПИФАГОРА ДЛЯ ЯЗЫКА ПАСКАЛЬ (PASCAL) СОЙДЁТ ЛЮБОЕ, НО ЖЕЛАТЕЛЬНО КАК МОЖНО ПРОШЕ
var A, B, C, p, S1, S2, E : Double; N, i : Byte;
begin
Write('Введите через пробел размеры сторон треугольника : ');
ReadLn(A, B, C);
Write('Введите степень точности вычислений от 1 до 10 : ');
ReadLn(N);
if Not(N in [1..10]) then WriteLn('Не правильно задана степень точности. ')
else
begin
E := 1; i := N;
repeat
E := E / 10;
Dec(i);
until i = 0;
if (A <= 0) or (B <= 0) or (C <= 0) then
WriteLn('Длина не может быть отрицательным числом. ')
else
begin
if A < B then begin A := A + B; B := A - B; A := A - B; end;
if A < C then begin A := A + C; C := A - C; A := A - C; end;
p := (A + B + C) / 2;
if (p < A) or (p < B) or (p < C) then
WriteLn('Такого треугольника не существует. ')
else
begin
S1 := sqrt(p * (p - A) * (p - B) * (p - C));
S2 := B * C / 2;
if Abs(S1 - S2) > E then WriteLn('Заданные размеры не соответствуют прямоугольному треугольнику. ')
else
if Abs(A*A - B*B - C*C) > E then
begin
WriteLn('Теорема Пифагора ошибочная! ');
WriteLn(A:0:N, '^2 <> ', B:0:N, '^2 + ', C:0:N, '^2');
WriteLn(A*A:0:N, ' <> ', B*B:0:N, ' + ', C*C:0:N);
end
else
begin
WriteLn('Теорема Пифагора верна! ');
WriteLn(A:0:N, '^2 = ', B:0:N, '^2 + ', C:0:N, '^2');
WriteLn(A*A:0:N, ' = ', B*B:0:N, ' + ', C*C:0:N);
end;
end;
end;
end;
end.
begin
Write('Введите через пробел размеры сторон треугольника : ');
ReadLn(A, B, C);
Write('Введите степень точности вычислений от 1 до 10 : ');
ReadLn(N);
if Not(N in [1..10]) then WriteLn('Не правильно задана степень точности. ')
else
begin
E := 1; i := N;
repeat
E := E / 10;
Dec(i);
until i = 0;
if (A <= 0) or (B <= 0) or (C <= 0) then
WriteLn('Длина не может быть отрицательным числом. ')
else
begin
if A < B then begin A := A + B; B := A - B; A := A - B; end;
if A < C then begin A := A + C; C := A - C; A := A - C; end;
p := (A + B + C) / 2;
if (p < A) or (p < B) or (p < C) then
WriteLn('Такого треугольника не существует. ')
else
begin
S1 := sqrt(p * (p - A) * (p - B) * (p - C));
S2 := B * C / 2;
if Abs(S1 - S2) > E then WriteLn('Заданные размеры не соответствуют прямоугольному треугольнику. ')
else
if Abs(A*A - B*B - C*C) > E then
begin
WriteLn('Теорема Пифагора ошибочная! ');
WriteLn(A:0:N, '^2 <> ', B:0:N, '^2 + ', C:0:N, '^2');
WriteLn(A*A:0:N, ' <> ', B*B:0:N, ' + ', C*C:0:N);
end
else
begin
WriteLn('Теорема Пифагора верна! ');
WriteLn(A:0:N, '^2 = ', B:0:N, '^2 + ', C:0:N, '^2');
WriteLn(A*A:0:N, ' = ', B*B:0:N, ' + ', C*C:0:N);
end;
end;
end;
end;
end.
боже, какая чушь написана в вопросе.
автар вообще не разбирается ни в математике, ни в программирование.
несёт тупость.
автар вообще не разбирается ни в математике, ни в программирование.
несёт тупость.
Похожие вопросы
- pascal or delphi
- Один вопрос по Pascal (или Object Pascal, или Delphi) (не надо ничего решать, просто один вопрос)
- Зачем изучают Pascal если есть Python?
- Программисты Python, Pascal или Scheme для обучения программированию?
- Язык программирования Pascal сложен в изучении?
- Стоит ли параллельно школьной программе изучать другой язык программирования? Или углубляться в школьный Pascal?
- Pascal
- добрый день подскажите пожалуйста программисты есть отличия между turbo и object Pascal я знаю что object pascal
- народ помогите пожалуйста) надо сделать прогу на pascal)
- Помогите разобраться, Pascal!