Форум программистов, компьютерный форум CyberForum.ru

перевод кода с C# на C++ - C++

Восстановить пароль Регистрация
 
nikitosina
0 / 0 / 0
Регистрация: 06.08.2013
Сообщений: 17
15.08.2013, 13:25     перевод кода с C# на C++ #1
помогите перевести код с си-шаспа на си++
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
using System;
 
public class Test
{
    public static int Fact( int n )
    {
        if( n == 0 ) return 1;
        return n*Fact( n-1);
    }
    
    public static double Term( double x, int n )
    {
        return Math.Pow( x, n )/ Fact(n); 
    }
    
    public static void Main()
    {
        const double eps = 0.00001;
        double exp = 0;
        int i = 0;
        double term;
        do
        {
            term = Term( 1, i++ );
            exp += term;
        } 
        while( term > eps );
        
        Console.WriteLine( exp );
        Console.WriteLine( Math.Exp(1) );
    }
}
Заранее спасибо)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.08.2013, 13:25     перевод кода с C# на C++
Посмотрите здесь:

C++ Перевод кода на с++
C++ перевод кода из С++ в С
Перевод кода в С C++
Перевод кода из c в c++ C++
Перевод кода C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dremer
 Аватар для dremer
8 / 8 / 0
Регистрация: 18.06.2012
Сообщений: 33
15.08.2013, 13:41     перевод кода с C# на C++ #2
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
#include <iostream>
#include <cmath>
using namespace std;
int Fact(int n)
{
    if (n == 0) return 1;
    return n*Fact(n - 1);
}
double Term(double x, int n)
{
    return pow(x, n) / Fact(n);
}
 
int main()
{
    const double eps = 0.00001;
    double Exp = 0;
    int i = 0;
    double term;
    do
    {
        term = Term(1, i++);
        Exp +=term;
    }while (term > eps);
    std::cout << Exp << std::endl;
    std::cout << exp(1) << std::endl;
    return 0;
}
nikitosina
0 / 0 / 0
Регистрация: 06.08.2013
Сообщений: 17
15.08.2013, 13:58  [ТС]     перевод кода с C# на C++ #3
dremer, за оперативность спасибо, но загвоздка:
вот отчет
1>c:\users\nik-nik\documents\visual studio 2010\projects\енкек\енкек\енкек.cpp(27): error C2668: exp: неоднозначный вызов перегруженной функции
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\math.h(563): может быть "long double exp(long double)"
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\math.h(515): или "float exp(float)"
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\math.h(117): или "double exp(double)"
1> при попытке сопоставить список аргументов "(int)"
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========

Добавлено через 3 минуты
может кто еще знает, что с этим надо сделать?
dremer
 Аватар для dremer
8 / 8 / 0
Регистрация: 18.06.2012
Сообщений: 33
15.08.2013, 14:00     перевод кода с C# на C++ #4
Попробуй 26 строчку изменить. У меня ошибок нет.
C++
1
std::cout << exp(1.0) << std::endl;
nikitosina
0 / 0 / 0
Регистрация: 06.08.2013
Сообщений: 17
15.08.2013, 14:05  [ТС]     перевод кода с C# на C++ #5
dremer, спасибо, родненький!!!!!!!! ты мне прям жазнь спааас!!!! ну точнее помог все-таки поставить экзамен в зачетке плюс тебе в карму)))
Tulosba
:)
Эксперт C++
4377 / 3220 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
15.08.2013, 14:13     перевод кода с C# на C++ #6
nikitosina, знакомый код. Ха-ха
nikitosina
0 / 0 / 0
Регистрация: 06.08.2013
Сообщений: 17
15.08.2013, 14:20  [ТС]     перевод кода с C# на C++ #7
Tulosba, угу)) пользуемся дарами добрых людей, так что и тебе в карму жирный плюс))) Только вот мне не вдомек, как увеличить количество знаков после запятой, а то в твоем коде вот что:
"2.71828152557319
2.71828182845905"
а в переделанном только по 5 знаков после запятой. Как увеличить точность или сделаь ее вариативной?
Tulosba
:)
Эксперт C++
4377 / 3220 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
15.08.2013, 14:30     перевод кода с C# на C++ #8
Цитата Сообщение от nikitosina Посмотреть сообщение
как увеличить количество знаков после запятой
http://www.cplusplus.com/reference/i.../setprecision/
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.08.2013, 14:32     перевод кода с C# на C++
Еще ссылки по теме:

C++ Перевод кода
Перевод кода С# на C++ C++
Перевод кода с Паскаля на С++ C++

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

Или воспользуйтесь поиском по форуму:
dremer
 Аватар для dremer
8 / 8 / 0
Регистрация: 18.06.2012
Сообщений: 33
15.08.2013, 14:32     перевод кода с C# на C++ #9
nikitosina, добавь перед выводом
C++
1
std::cout.precision(10);
.
P.S. 10 это число символов.
Yandex
Объявления
15.08.2013, 14:32     перевод кода с C# на C++
Ответ Создать тему
Опции темы

Текущее время: 06:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru