определить, пересекаются ли параболы у=ах^2+bc+c и y=dx^2+mx+n. если пересекаются, то найти точку пересечения. 2) записать элементы массива х, удовлетворяющие условию 1≤xi≤2, подряд в массив y. поменять местами максимальный и минимальный элементы в массиве y. 3) заменить строку матрицы р (n,m) с минимальной суммой элементов на строк, где находится максимальный элементы матрицы.
Program Parabolas;
Uses Crt;
Var
a, b, c, d, m, n, dis, x1, x2 : real;
begin
writeln('Введите коэфициенты первой параболы');
write('A=');readln(a);
write('B=');readln(b);
write('C=');readln(c);
writeln('Введите коэфициенты второй параболы');
write('D=');readln(d);
write('M=');readln(m);
write('N=');readln(n);
writeln('*** alphaues is thinking... ***');
if a=d then
if b=m then
if c=n then
writeln('Параболы совпадают!')
else
writeln('Параболы не пересекаются!')
else
begin
x1:=(c-n)/(b-m);
writeln('Параболы пересекаются в 1-й точке: ',x1,' ',a*x1*x1+b*x1+c);
end
else
begin
dis:=(b-m)*(b-m)-4*(a-d)*(c-n);
if dis>0 then
begin
x1:=((m-b)+sqrt(dis))/(2*(a-d));
x2:=((m-b)-sqrt(dis))/(2*(a-d));
writeln('Параболы пересекаются в 2-x точкax: ');
writeln(x1,' ',a*x1*x1+b*x1+c);
writeln(x2,' ',a*x2*x2+b*x1+c);
end
else
if dis=0 then
begin
x1:=(m-b)/(2*(a-d));
writeln('Параболы пересекаются в 1-й точке: ',x1,' ',a*x1*x1+b*x1+c);
end
else writeln('Параболы не пересекаются!');
end;
end.
Program MassXY;
uses crt;
const n = 20;
var
x,y:array [1..n] of real;
i,k, maxnum, minnum:integer;
max, min,temp: real;
begin
k:=1;
randomize;
for i:=1 to n do
begin
x[i]:=random(101)-50;
if (1<=x[i]) and (x[i]<=2) then
begin
y[i]:=x[i];
k:=k+1;
end;
end;
writeln('*** alphaues is thinking... ***');
max:=y[1];
maxnum:=1;
min:=y[1];
minnum:=1;
for i:=1 to k do
begin
if max<y[i] then
begin
max:=y[i];
maxnum:=i;
end;
if min>y[i] then
begin
min:=y[i];
minnum:=i;
end;
end;
temp:=y[maxnum];
y[maxnum]:=y[minnum];
y[minnum]:=temp;
writeln('Массив Y состоит из ',k,' элементов:');
for i:=1 to k do
write(y[i],' ');
end.
Program MatrixP;
uses crt;
const n=10;
const m=8;
var
p:array[1..n,1..m] of integer;
sum:array[1..n] of integer;
st:array[1..m] of integer;
i,j,tempsum,min,max,minnum,maxnum : integer;
begin
Randomize;
{ввод и вывод матрицы}
writeln('Начальная матрица:');
for i:=1 to n do
begin
for j:=1 to m do
begin
p[i,j]:= Random(100);
write(p[i,j]:5);
end;
writeln;
end;
writeln('*** alphaues is thinking... ***');
{нахождение сумм строк}
for i:=1 to n do
begin
tempsum:=0;
for j:=1 to m do
tempsum:=tempsum+p[i,j];
sum[i]:=tempsum;
end;
maxnum:=1;
tempsum:=sum[1];
for i:=1 to n do
if tempsum>sum[i] then
begin
tempsum:=sum[i];
minnum:=i;
end;
writeln('Min сумма в ',minnum,'-й строке: ',sum[minnum]);
{нахождение max элемента матрицы}
max:=p[1,1];
for i:=1 to n do
for j:=1 to m do
begin
if max<p[i,j] then max:=p[i,j];
maxnum:=i;
end;
writeln('Max элемент ',max,' находится в ',maxnum,'-й строке');
for j:=1 to m do
begin
st[j]:=p[maxnum,j];
p[maxnum,j]:=p[minnum,j];
p[minnum,j]:=st[j];
end;
{вывод матрицы}
writeln('Результат:');
for i:=1 to n do
begin
for j:=1 to m do
begin
write(p[i,j]:5);
end;
writeln;
end;
end.