Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.06.2009, 14:27   #1
Golovastik
Заблокирован
 
Регистрация: 25.05.2009
Сообщений: 284
Плохо Перевод кода на С++

Здравсвуйте программисты! Подскажите пожалуйста перевести код с Паскаля на С++, просто уже замучался, не знаю как.
Мне нужно вычислить интеграл метод (правых,левых и средних прямоугольников).

Вот исходник.
1) Программа вычисления по методу левых прямоугольников.
Код:
Program levii;{Метод левых прямоугольников}

            uses crt;

                    var i,n:integer; a,b,h,x,xb,s:real;

        function f(x:real):real;

        begin f:=(1/x)*sin(3.14*x/2); end;

begin

           clrscr;

     write('Введите нижний предел интегрирования '); readln(a);

     write('Введите верхний предел интегрирования '); readln(b);

     write('Введите количество отрезков '); readln(n);

               h:=(b-a)/n; s:=0; xb:=a;

                      for i:=0 to n-1 do

                      begin x:=xb+i*h; s:=s+f(x)*h; end;

    writeln('Интеграл равен ',s:12:10); readln;

end.
a=1 b=2                n=10             S= 18,077
a=1 b=2               n=20             S= 18, 208
a=1 b=2               n=100           S= 18, 270
2) Программа вычисления по методу правых прямоугольников.
Код:
Program pravii; {Метод правых прямоугольников}

                  uses crt;

                            var i,n:integer; a,b,h,x,xb,s:real;

          function f(x:real):real;

          begin f:=(1/x)*sin(3.14*x/2); end;

begin

               clrscr;

                write('Введите нижний предел интегрирования '); readln(a);

                write('Введите верхний предел интегрирования '); readln(b);

                write('Введите количество отрезков '); readln(n);

                   h:=(b-a)/n; s:=0; xb:=a;

                              for i:=1 to n do

                               begin x:=xb+i*h; s:=s+f(x)*h; end;


       writeln('Интеграл равен ',s:12:10); readln;

end.
a=1 b=2 n=10             S=18,05455
a=1 b=2 n=20             S=18,55555
a=1 b=2 n=100           S= 18,2734
3) Программа вычисления по методу средних прямоугольников.
Код:
Program srednii; {Метод средних прямоугольников}

                 uses crt;

                    var i, n: integer; a, b, dx, x, s, xb : real;

        function f(x : real):real;

        begin f:=(1/x)*sin(3.14*x/2); end;

begin

                     clrscr;

         write('Введите нижний предел интегрирования '); readln(a);

         write('Введите верхний предел интегрирования '); readln(b);

         write('Введите количество отрезков '); readln(n);

               dx:=(b-a)/n; xb:=a+dx/2;

                     for i:=0 to n-1 do

                     begin x:=xb+i*dx; s:=s+f(x)*dx; end;


  write('Интеграл равен ',s:15:10); readln;

end.

a=1 b=2 n=10             S=18,07667
a=1 b=2 n=20             S=18,368
a=1 b=2 n=100           S= 18,156
Вот фото каких интегралов вычислить,уже много раз пытался, не знаю как
Изображения
Тип файла: jpg 1.jpg (9.8 Кб, 77 просмотров)

Последний раз редактировалось Golovastik; 04.06.2009 в 14:30.
Golovastik вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перевод программного кода из VBA в VB (6.0) zxspec Помощь студентам 2 05.02.2009 00:39
Перевод кода ELL Помощь студентам 0 07.06.2008 01:36
Перевод кода с Fortran-77 на Delphi unhide Помощь студентам 3 20.05.2008 14:27