Vvod:writeln('Сколько будет чисел?');
readln(N);
if N<1 then
begin
writeln('Нельзя меньше одного');
goto vvod;
end;
P:=1;
for i:=1 to N do
begin
writeln('Введите число');
readln(A);
if A>abs(0.1) then
P:=P*A;
end;
writeln('Произведение = ',P); END.
11) Написать программу нахождения номера наибольшего четного положительного элемента в последовательности N произвольных чисел, вводимых с клавиатуры.
12) Написать программу нахождения максимального отрицательного нечетного значения в последовательности N вводимых произвольных (как положительных, так и отрицательных) чисел.
13) Написать программу нахождения номера минимального положительного значения в последовательности вводимых вещественных чисел с окончанием по вводу признака конца.
14) Написать программу вычисления факториала числа N (произведения всех целых чисел начиная от 1 до числа N). Учесть, что результат не может превысить 2000000000.
program factorial;
var n:integer;
f,i:integer; begin
write('Vvedite chislo: ');
readln(n);
f:=1;
for i:=2 to n do
f:=f*i;
writeln('factorial ',n,' raven ',f);
f<2000000000
readln;
end.
15) Написать программу нахождения номера максимального значения в последовательности вещественных вводимых чисел с окончанием по вводу признака конца.
Program mas;
uses crt;
Var a:array[1..1000] of integer;
max,n,i:integer;
Begin
Writeln('введите размерность массива');
Readln(n);
randomize;
For i:=1 to n do
Begin
a[i]:=random(50);
write(a[i]:4);
End;
max:=a[1];
writeln(a[1]);
readln
end.
16) Написать программу вычисления среднего значения только положительных элементов среди вводимых N вещественных чисел.
uses crt;
const mas:array[1..5] of integer=(30,20,-2,-4,-5);
var sum,n,s:integer;
sred:array[1..5] of integer;
begin
s:=0;
for n:=1 to 5 do if mas[n]>=0 then
begin
inc(s);
sred[n]:=mas[n];
end;
for n:=1 to s do sum:=sum+sred[n];
writeln('sredn arifm = ',sum/s:3:2);
readln
end.
17) Написать программу вычисления произведения только чисел меньших"0" из N последовательно вводимых произвольных вещественных чисел.
program;
var
numb: integer; {число, введенное с клавиатуры}
m: integer; {сумма введенных чисел}
begin
writeln('Вычисление суммы положительных целых чисел.');
m := -1;
repeat
write('-<');
readln(numb);
if numb < 0 then m := m*numb;
until numb >= 0;
writeln('Произведение введенных чисел: ', m);
end.
18) Написать программу вычисления произведения только чисел больших "0" из N последовательно вводимых произвольных целых чисел.
program;
var
numb: integer; {число, введенное с клавиатуры}
m: integer; {сумма введенных чисел}
begin
writeln('Вычисление суммы положительных целых чисел.');
m := 1;
repeat
write('->');
readln(numb);
if numb > 0 then m := m*numb;
until numb <= 0;
writeln('Произведение введенных чисел: ', m);
end.
19)
20)
21) Написать программу вычисления среднеарифметического значения только отрицательных элементов среди вводимых N произвольных целых чисел.
uses crt;
var k,n,i:integer;
s1,a,p: real;
begin
writeln('Введите кол-во чисел в последовательности');
readln(n);
k:=0;
s1:=0;
for i:=1 to n do begin
writeln ('введите 1-е число в посл-ти');
readln(a);
if a<0 then k:=k+1;
s1:=s1+a;
end;
p:=s1/k;
writeln(p);
readln; END.
22) Написать программу вычисления произведения последовательно вводимых вещественных чисел с окончанием, когда абсолютная величина произведения станет > 1000. Ноль пропускать.
program Project1;
procedure PrintBack(var aStr : String);
var
Num : Integer;
S : String;
begin
Readln(Num);
if Num = 0 then begin
Writeln('Результат:');
Writeln(aStr);
end else begin
Str(Num, S);
if aStr <> '' then S := S + ', ';
aStr := S + aStr;
PrintBack(aStr);
end;
end;
var
S : String;
begin
Writeln('Введите несколько целых чисел, завершая ввод каждого числа нажатием клавиши Enter.');
Writeln('Для завершения ввода введите 0 (ноль) и нажмите Enter.');
S := '';
PrintBack(S);
Readln;
end.
23) Написать программу вычисления номера последнего отрицательного числа из последовательно вводимых произвольных вещественных чисел заданного количества.
const
n=20;
var
mas :array[1..n] of integer;
i,k :integer;
begin
for i:=1 to n do
begin
mas[i]:=random(30)-5;
write(mas[i],' ');
if mas[i]<0 then
k:=i;
end;
writeln;
writeln('Последний отрицательный элемент ',mas[k],' под индексом ',k);
end.
24) Написать программу вычисления номера первого отрицательного числа из последовательно вводимых вещественных чисел. Если "0" не встретился, закончить по вводу признака конца.
uses crt;
const N=10;
type x=array [1..N] of integer;
var a:x;
i:integer;
k:integer;
begin
clrscr;
randomize;
for i:=1 to N do
begin
a[i]:= -10+random (91);
write (A[i]:4)
end;
writeln;
k:=0;
for i:=1 to N do
if a[i] <0 then
begin
k:=I
end;
if k>0 then
writeln (‘Индекс отрицательного элемента = ’,k)
else
writeln (‘В массиве нет отрицательных элементов');
readln
end.
25) Написать программу подсчета количества положительных и отрицательных вещественных чисел, с окончанием по вводу признака конца (которое не считать числом).