На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Название темы должно быть информативным !
Прежде чем задать вопрос, воспользуйтесь Поиском. и проверьте в FAQ (ЧАВО) Паскаля
Чтобы получить вразумительный ответ, подробно опишите проблему: что надо сделать, что не получается и номер ошибки (если есть), которую выводит компилятор.
Для вставки кода ваших программ используйте, пожалуйста, кнопку СODE=pas или выпадающий список СODE для других языков (подсветка синтаксиса).
[!] Как правильно задавать вопросы | Руководство по языку B.Pascal 7 & Objects/LR | Borland Pascal. Руководство пользователя
Модераторы: volvo877
  
> илементарная задача(решите плиз)
    При помоши IF
    {даны числа X,Y,Y найти значение выражение.
    u=(max^2(x,y,z)-2^x*min(x,y,z))/(sin^2x+max(x,y,z)/min(x,y,z))
      Не обижайся, но иллеминтарныи задачи надо решать самому. Пробуй. Если не будет получаться - поможем.
        я решил задачу но при помоши Function,но училка сказала что эту задачу надо решать ен при помоши Function,а как ее переделать чтоб небыло Funktion я не знаю..ПОМОГИТЕ ПИРЕДЕЛАТЬ ЗАДАЧУ ЧТОБ ОНА ДЫЛА РЕШЕНА НЕ FUNCTION а IF..
        program fln;
        uses crt,dos;
        var x,y,z,u,f1:real;
        i:integer;
        function max(a,b,c:real):real;
        begin
        if (a>=b) and (a>=c) then max:=a;
        if (b>=a) and (b>=c) then max:=b;
        if (c>=a) and (c>=b) then max:=c;
        end;
        function min(q,w,e:real):real;
        begin
        if (q<=w) and (q<=e) then min:=q;
        if (w<=q) and (w<=e) then min:=w;
        if (e<=q) and (e<=w) then min:=e;
        end;
        begin
        write('‚введите X:');
        readln(x);
        write('‚введите Y:');
        readln(y);
        write('‚введите Z:');
        readln(z);
        f1:=1;
        for i:=1 to round(x) do f1:=2*f1;
        u:=(max(x,y,z)*max(x,y,z)-f1*min(x,y,z))/(sin(2*x)+max(x,y,z)/min(x,y,z));
        writeln(u:6:2);
        readkey;
        end.
          Твое решение - ПРАВИЛЬНОЕ.
          Именно так и НАДО делать.
          Но если уж баба капризничает :)
          чёрт с ней - сделай, как она просит.
          Для этого вместо функций заведи переменные
          max & min, а вычисления из функций перенеси вниз, сразу после ввода данных.
          var
          x,y,z,u,f1:real;
          i:integer;
          max,min:real;
          ...
          write('‚введите Z:');
          readln(z);
          if (x>=y) and (x>=z) then max:=x;
          if (y>=x) and (y>=z) then max:=y;
          if (z>=x) and (z>=y) then max:=z;
          if (x<=y) and (x<=z) then min:=x;
          if (y<=x) and (y<=z) then min:=y;
          if (z<=x) and (z<=y) then min:=z;
          ...
          u:=(max**2-f1*min)/(sin(2*x)+max/min);
          ...
            ТИПО ТАК ИЛИ НЕ ТАК,НО ПОМОЕМУ ЧЕ ТО НЕ ТО
            program fln;
            uses crt,dos;
            var
            x,y,z,u,f1:real;
            max,min:real;
            begin
            write('VVEDITE X:');
            readln(x);
            write('VVEDITE Y:');
            readln(y);
            write('VVEDITE Z:');
            readln(z);
            if (x>=y) and (x>=z) then max:=x
            if (y>=x) and (y>=z) then max:=y
            if (z>=x) and (z>=y) then max:=z
            if (x>=y) and (x>=z) then min:=x
            if (y>=x) and (y>=z) then min:=y
            if (z>=x) and (z>=y) then min:=z
            f1:=1
            for i:=1 to round(x) do f1:=2*f1;
            u:=(max**2-f1*min)/(sin(2*x)+max/min);
            writeln(u:6:2);
            readkey;
            end
              if ..... max
              if ..... min
              f1 := 1;
              for i := 1 to Round(x) do f1 := 2*f1;
              u := (sqr(max)-f1*min) / (sqr(sin(x))+max/min)
                А ещё лучше...
                u := (sqr(max)-exp(x*ln(2))*min) / (sqr(sin(x))+max/min)
                а for убрать вообще...
                  А КТОНИБУТЬ МОЖЕТ НАПИСАТЬ ЦЕЛИКОМ ЗАДАЧУ А ТО Я ФАЩЕ НЕ ВТЫКАЮ КАК , ЧЕ ,КУДА...
                    var x,y,z,u:real;
                    begin
                    readln (x,y,z);
                    min:=y;
                    max:=min;
                    if x<min then min:=x else max:=x;
                    if z<min then min:=z else
                    begin
                    if max<z then max:=z;
                    end;
                    u := (sqr(max)-exp(x*ln(2))*min) / (sqr(sin(x))+max/min); сей формула любезно предоставлена 7in :)
                    writeln(u);
                    end.
                    зы вроде так, щас под рукой нет компилятора, но вроде правильно
                    ззы откуда взялось
                    f1:=1
                    for i:=1 to round(x) do f1:=2*f1; ?
                    условие задачи полностью напиши plz
                      ЭТА ПРОГА НЕ РАБОТАЕ
                        ы-ыыы, min и max не описал :(
                        var min,max,x,y,z,u:real;
                        begin
                        readln (x,y,z);
                        min:=y;
                        max:=min;
                        if x<min then min:=x else max:=x;
                        if z<min then min:=z else
                        begin
                        if max<z then max:=z;
                        end;
                        u := (sqr(max)-exp(x*ln(2))*min) / (sqr(sin(x))+max/min);
                        writeln(u);
                        end.
                        0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                        0 пользователей:


                        Рейтинг@Mail.ru
                        [ Script execution time: 0,0292 ]   [ 15 queries used ]   [ Generated: 27.04.24, 23:45 GMT ]