Сделать следущие задачи на языке pascal abc
#2. Ввести В. Если В<10, выдать на печать 2*В. Если В>=10, вычислить и напечатать значения функции y=x²-x+tg(1/B+x) для значений x, изменяющихся от –3 до 1, с шагом 0,1.
#3. Ввести массив целых чисел Х(n). Найти среднее арифметическое значений элементов массива, не принадлежащих интервалу [-2;2]. Если среднее арифметическое значение>2, заменить значения первого и последнего элементов на 1, в ином случае – на 0. Массив распечатать.
#4. Ввести массив А(n). Найти сумму положительных элементов массива, исключая при этом те элементы, которые кратны трём. Полученной суммой заменить элементы 2-ой половины массива. Массив отпечатать.
Answers & Comments
var b:Integer;
x,y:Real;
Begin
Writeln('Введите число B');
Read(b);
x:=-3;
if (b<10) then Writeln(2*b)
else if (b>=10) then
begin
while(x<=1) do
begin
x:=x+0.1;
y:=sqr(x)-x+(sin(1/b+x)/cos(1/b+x));
Writeln('При x = ',x:0:1,' y = ',y:0:2);
end;
end;
end.
2.
var
n,i,sum:Integer;
avarage:Real;
X:Array[1..1000] of Integer;
Begin
Read(n);
for i:=1 to n do
Read(X[i]);
for i:=1 to n do
if (X[i]<-2) or (X[i]>2) then
sum:=sum+X[i];
avarage:=sum/n;
if (avarage>2) then
begin
X[1]:=1;
X[n]:=1;
end
else
begin
X[1]:=0;
X[n]:=0;
end;
for i:=1 to n do
Write(X[i],' ');
end.
3.
var n,sum,i:Integer;
A:Array[1..1000] of Integer;
Begin
Read(n);
for i:=1 to n do
Read(A[i]);
for i:=1 to n do
if (A[i]>0) and (A[i] mod 3 = 0) then sum:=sum+A[i];
for i:=n div 2 to n do
A[i]:=sum;
for i:=1 to n do
Write(A[i],' ');
end.
var b, xi: Integer;
x, y: Real;
begin
Writeln('Enter number B:');
Read(b);
if (b < 10) then Writeln(2 * b)
else if (b >= 10) then
begin
for xi := -3 to 1 do
begin
x := x + 0.1;
y := sqr(x) - x + (sin(1 / b + x) / cos(1 / b + x));
Writeln('X= ', x:0:1, ' Y= ', y:0:1);
end;
end;
end.
//////#2
var n,j,s:Integer; ser:Real;
X:Array[1..10000] of Integer;
Begin
writeln('Enter N: ');
Read(n);
for j:=1 to n do Read(X[j]);
for j:=1 to n do if (X[j]<-2) or (X[j]>2) then s:=s+X[j];
av:=s/n;
if (av>2) then
begin
X[1]:=1;
X[n]:=1;
end
else
begin
X[1]:=0;
X[n]:=0;
end;
for j:=1 to n do Write(X[j],' ');
end.
/////#3
var n,s,p:Integer;
A:Array[1..10000] of Integer;
Begin
Write('Enter N: ');
Read(n);
for p:=1 to n do Read(A[p]);
for p:=1 to n do
if (A[p]>0) and (A[p] mod 3 <> 0) then s:=s+A[p];
for p:=n div 2 to n do A[p]:=s;
for p:=1 to n do Writeln('Otvet: ',A[p]);
end.