// 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.
Var S, tmp, buf, firstW: string; i, j, k, p, ii: integer; ch: char;
begin S := 'privit kak dela putin znanija test proverka privit teste.'; firstW := copy(S, 1, pos(' ', S) - 1); writeln('Исходная строка: ', S); writeln('Первое слово = ', firstW); i := 0; while (S[i] <> '.') do begin i := i + 1; if (S[i] <> ' ') then begin while ((S[i] <> ' ') and (i < Length(S))) do begin tmp := tmp + S[i]; i := i + 1; end; buf := tmp; p := 0; ii := 1; while ii <= Length(buf) do begin k := 0; ch := buf[ii]; for j := Length(buf) downto ii do if buf[j] = ch then begin k := k + 1; delete(buf, j, 1); end; if k > 1 then p := 1; end; if ((p <> 0) and (tmp <> firstW)) then writeln(tmp); tmp := ''; end; 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.