Предмет: Информатика,
автор: FirePes
Как возвести выражение sin*x в степень n (Pascal)?
Ответы
Автор ответа:
0
// PascalABC.NET 3.3, сборка 1625 от 17.01.2018
// Внимание! Если программа не работает, обновите версию!
begin
var x:=ReadReal('x=');
var n:=ReadInteger('n=');
// для сборок, начиная с 30.12.2017
Writeln('(Sin(',x,'))^',n,' = ',Sin(x)**n);
// для более ранних версий PascalABC.NET 3.3
Writeln('(Sin(',x,'))^',n,' = ',Power(Sin(x),n));
Для всех прочих паскалей
var
x,t:real;
n,z:integer;
begin
Write('x= '); Readln(x);
Write('n= '); Readln(n);
t:=Sin(x);
if t=0 then Writeln('(Sin(',x,'))^',n,' = 0')
else begin
if n mod 2=0 then z:=1
else z:=Sign(t);
t:=Abs(t);
Writeln('(Sin(',x,'))^',n,' = ',z*Exp(n*Ln(t)))
end;
Readln
end.
// Внимание! Если программа не работает, обновите версию!
begin
var x:=ReadReal('x=');
var n:=ReadInteger('n=');
// для сборок, начиная с 30.12.2017
Writeln('(Sin(',x,'))^',n,' = ',Sin(x)**n);
// для более ранних версий PascalABC.NET 3.3
Writeln('(Sin(',x,'))^',n,' = ',Power(Sin(x),n));
Для всех прочих паскалей
var
x,t:real;
n,z:integer;
begin
Write('x= '); Readln(x);
Write('n= '); Readln(n);
t:=Sin(x);
if t=0 then Writeln('(Sin(',x,'))^',n,' = 0')
else begin
if n mod 2=0 then z:=1
else z:=Sign(t);
t:=Abs(t);
Writeln('(Sin(',x,'))^',n,' = ',z*Exp(n*Ln(t)))
end;
Readln
end.
Похожие вопросы
Предмет: Физика,
автор: JaneRTS
Предмет: Литература,
автор: ruslan1558
Предмет: Английский язык,
автор: nigrejdenis
Предмет: Математика,
автор: тёмая
Предмет: Математика,
автор: chernika1983