1. Составить программу возведения вещественного числа А в степень с натуральным показателем N.
2. Проверить, встречается ли число К в массиве A[10].

Модератор: Модераторы
program power1;
var
A, Res: Double;
N: Word;
i: Integer;
begin
writeln ('Программа возведения вещественного числа в степень с натуральным показателем');
write ('Введите основание (вещественное число): '); readln (A);
write ('Введите показатель (натуральное число): '); readln (N);
Res:= 1;
for i:= 1 to N do
Res:= Res * A;
writeln ('Результат: ', Res);
end.
program power1;
uses Sysutils;
...
begin
...
writeln ('Результат: ', FloatToStr (Res));
end.
program power2;
{$MODE Objfpc}{$H+}{$R+}
uses Sysutils;
var
A, Res: Double;
N: Word;
i: Integer;
IsTrueNumber: Boolean;
begin
writeln ('Программа возведения вещественного числа в степень с натуральным показателем');
IsTrueNumber:= False;
while not IsTrueNumber do
begin
IsTrueNumber:= True;
try
write ('Введите основание (вещественное число): '); readln (A);
except
writeln ('Вы ввели ошибочное число, повторите ввод');
IsTrueNumber:= False;
end;
end;
IsTrueNumber:= False;
while not IsTrueNumber do
begin
IsTrueNumber:= True;
try
write ('Введите показатель (натуральное число): '); readln (N);
except
writeln ('Вы ввели ошибочное число, повторите ввод');
IsTrueNumber:= False;
end;
end;
Res:= 1;
for i:= 1 to N do
try
Res:= Res * A;
except
writeln ('Результат - слишком большое или слишком маленькое число');
halt (0);
end;
writeln ('Результат: ', FloatToStr (Res));
end.
program numinarr;
const
A: array [1..10] of Integer = (2, 34, -76, 12, 45, 97, -102, 50, 14, 200);
var
K, i: Integer;
begin
writeln ('Программа поиска числа в массиве');
write ('Введите число: '); readln (K);
for i:= 1 to 10 do
if A[i] = K then
begin
writeln ('Число есть в массиве');
halt (0);
end;
writeln ('Числа нет в массиве');
end.
vada писал(а):Массивы удобнее, списки быстрее.
Fabian Fierce писал(а):... помогите ... девушке! ...
vada писал(а):Массивы удобнее, списки быстрее.
СерП писал(а):есть две чистые стратегии: подавать всегда, исходя из того, что лучше ошибиться и подать обманщику, чем не подать нуждающемуся, и не подавать никогда. Второе фактически означает "лучше не подать нуждающемуся, чем подать обманщику"
Fabian Fierce писал(а):Уже вторую ночь подряд решаю все задачки по паскалю за семестр...
program power1;
var
A, Res: real;
N: Word;
i: Integer;
begin
writeln ('Programma vodvedenia veshestvennogo chisla v stepen');
write ('Veshestvennoe chislo A '); readln (A);
write ('Stepen N: '); readln (N);
Res:= 1;
for i:= 1 to N do
Res:= Res * A;
writeln ('Resultat: ', Res);
end.
writeln ('Resultat: ', Res:1:3);
program numinarr;
var
A: array [1..10] of Integer;
K, i: Integer;
n : Integer;
begin
writeln('zadayte massiv is 10 chisel');
for i:=1 to 10 do begin
readln(k);
a[i]:=k;
end;
write ('vvedite chislo k: '); readln (K);
n:=0;
for i:= 1 to 10 do
if A[i] = K then
n:=1;
if i>0 then writeln ('Chislo est v massive')
else writeln ('Chisla net v massive');
end.
program numinarr;
var
A: array [1..10] of Integer;
K, i: Integer;
begin
writeln('zadayte massiv is 10 chisel');
for i:=1 to 10 do begin
readln(k);
a[i]:=k;
end;
write ('vvedite chislo k: '); readln (K);
i:=1;
while (i<=10) and (a[i]<>k) do
inc(i);
if i<=10 then writeln ('Chislo est v massive')
else writeln ('Chisla net v massive');
end.
var
o:real;
s:integer;
r:real;
begin
WriteLn('Укажите число');
ReadLn(o);
WriteLn('Укажите степень');
ReadLn(s);
if (o=0) and (s=0) then WriteLn('0^0 - Неопределенность')
else begin
if o=0 then r:=0 else begin
r:=exp(s*ln(abs(o)));
if (o<0) and ((s mod 2)=1) then r:=-r;
end;
WriteLn(o,'^',s,'=',r)
end
end.
И, заметьте, ни единого цикла. Мы спасены!
Вернуться в Обучение Free Pascal
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2