С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Sophi
0 / 0 / 0
Регистрация: 04.01.2014
Сообщений: 4
#1

Переделать программу написанную на Pascal в С++ - C++

23.05.2014, 10:39. Просмотров 623. Ответов 2
Метки нет (Все метки)

Задание
Вариант 1
Вычислить определенный интеграл от функции f(x) на промежутке [a, b] методом прямоугольников.
f(x) = 2sin x cos x + sin x, a = 0, b = 1,
число разбиений n = 10; 40; 160; 640.
F(x) = sin2x –cosx.

Программа на Pascal в общем виде:

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{
Метод центральных прямоугольников для вычисления определенного интеграла.
a, b – границы интервала интегрирования,
n – число разбиений,
s – результат (значение определенного интеграла),
f – подынтегральная функция (должна быть определена выше).
}
procedurerect(a, b: real; n: integer; vars: real);
var
h, x: real; {h пЂ* шаг интегрирования, 
    x пЂ* текущее значение переменной интегрирования}
    i: integer:
begin
    s:= 0; 
h:= (b - a)/n; {определение шага интегрирования}
x := a+h/2;
    fori:= 1 to n do begin
        s:= s + f(x);
        x:= x + h;
    end;
    s:= s*h;
end;
Вот что я пыталась сделать:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
// matan_integr.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <stdio.h>
#include <iostream>
#include <math.h>
 
using namespace std;
double f(double x)
{double z=sin(x);
    double r=pow(z,2)+cos(x);
return r;}
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    int n=10;
    //cout<<"vvedite 4islo razbienii"<<endl;
    //cin>>n;
    double a=0;
    double b=1;
    double s=0;
    double h=(b-a)/2;
    double x=a+h/2;
    double s1;
    for(int i=1; i<n;)
    {s1=s+f(x);
    double X=x+h;}
    double s2=s1*h;
        cout<<"ploschad' ravna:"<<s2<<endl;
    system("pause");
    return 0;
}
Ошибок никаких не выдает, но и программа не работает
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.05.2014, 10:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Переделать программу написанную на Pascal в С++ (C++):

переделать программу из pascal в C++ - C++
Ребят помогите пожалуйста переделать программу в с++ вот ссылка на прогрумму тут просто не все формулы открывает ...

переделать программу из Pascal в язык С - C++
Дано натуральное число n, равное выраженной в копейках цене некоторого товара, например, 317, 5005, 100 и т. д. Выразить цену в рублях и...

переделать программу Pascal -> C++ (Восстановить исходную матрицу и напечатать ее по строкам) - C++
с паскаля на с++...буду очень признателен. вот текст задачи. Квадратная матрица, симметричная относительно главной диагонали, задана своим...

Перевести программу,написанную на паскале,на язык си++ - C++
uses crt; var a:array of integer; m,i,j,s,mx:integer; begin randomize; write('Количество столбцов матрицы m='); read(m); ...

Как запустить программу на C++ написанную в VS 2008 - C++
Собственно такая проблема. Пытаюсь изучать MFC. Создаю в студии новый проект вин32, подключаю библиотеку MFC, код вот такой: файл app.h ...

Какой исправить программу, написанную в Visual studio? - C++
Написала программу, скомпилировала, закрыла. Нашла ошибку. Какой файл открывать, чтобы исправить ошибку, в какой файле? Не могу найти. Все...

2
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
23.05.2014, 11:45 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
for(int i=0; i<n; ++i) //27 строка
26 строку убрать. s1 заменить на s.
C++
1
x=x+h;} // 29 строка
0
Sophi
0 / 0 / 0
Регистрация: 04.01.2014
Сообщений: 4
23.05.2014, 15:53  [ТС] #3
Спасибо, программа работает, но как оказалось неправильно...
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.05.2014, 15:53
Привет! Вот еще темы с ответами:

Откомпилировать и выполнить написанную программу из блокнота в Dev-C++ 4.9.9.2 - C++
Здравствуйте. Только начал обучение языку С++ по книге &quot;С++ Базовый курс автор Герберт Шилдт&quot;. Дошел до момента, где нужно взять образец...

Нужно перевести небольшую программу, написанную на C++, на С (неповторяющиеся символы в строке) - C++
Текст задачи - &quot;Для заданной строки получить те символы, которые встречаются в ней по одному разу.&quot; Сделана на С++ (код нашел на этом...

Как открыть программу написанную на c++ через командную строку, если в пути программы есть пробелы - C++
путь программы C:\la la\ve.exe пишу в командной строке: start C:\la la\ve.exe и выдает такое windows не может найти &quot;С:\la&quot;....

Переделать код с Pascal на С++ - C++
Имеется данный код: uses crt; var f,h,g:text; s:arrayof string; n,i:integer; begin clrscr; assign(f,'file_ob.txt'); ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.