Помогите, пожалуйстааа, решить…. с помощью паскаля. 1 Определить, пересекаются ли параболы у=ах^2+bc+c и y=dx^2+mx+n. Если пересекаются, то найти т

1 Январь 0001



Помогите, пожалуйстааа, решить…. ((( с помощью паскаля. 1) Определить, пересекаются ли параболы у=ах^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        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

            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.









Информатика

Комментарии закрыты.