Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 06.08.2013
Сообщений: 17
1

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

15.08.2013, 13:25. Просмотров 790. Ответов 8
Метки нет (Все метки)

помогите перевести код с си-шаспа на си++
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) );
    }
}
Заранее спасибо)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.08.2013, 13:25
Ответы с готовыми решениями:

Перевод кода с Паскаля (перевод в метры)
var a,b,d:integer; c,e:real; begin writeln('1-дециметр 2-километр'); writeln('3-метр ...

Перевод кода C# в Си
Здравствуйте. Помогите пожалуйста перевести код из С# в Си: static void Main(string args) { ...

Перевод кода с TP
program 2; uses graph,crt; const xs0=50; xp1=1.75; xs1=610; xp0=-1.75; ys0=440;yp1=1;...

Перевод кода с C++ в C#
int n = 0; int A,B; cout<<"A="; cin>>A; cout<<endl; cout<<"B="; ...

8
9 / 9 / 2
Регистрация: 18.06.2012
Сообщений: 33
15.08.2013, 13:41 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;
}
0
0 / 0 / 0
Регистрация: 06.08.2013
Сообщений: 17
15.08.2013, 13:58  [ТС] 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 минуты
может кто еще знает, что с этим надо сделать?
0
9 / 9 / 2
Регистрация: 18.06.2012
Сообщений: 33
15.08.2013, 14:00 4
Попробуй 26 строчку изменить. У меня ошибок нет.
C++
1
std::cout << exp(1.0) << std::endl;
1
0 / 0 / 0
Регистрация: 06.08.2013
Сообщений: 17
15.08.2013, 14:05  [ТС] 5
dremer, спасибо, родненький!!!!!!!! ты мне прям жазнь спааас!!!! ну точнее помог все-таки поставить экзамен в зачетке плюс тебе в карму)))
0
:)
Эксперт С++
4762 / 3256 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
15.08.2013, 14:13 6
nikitosina, знакомый код. Ха-ха
1
0 / 0 / 0
Регистрация: 06.08.2013
Сообщений: 17
15.08.2013, 14:20  [ТС] 7
Tulosba, угу)) пользуемся дарами добрых людей, так что и тебе в карму жирный плюс))) Только вот мне не вдомек, как увеличить количество знаков после запятой, а то в твоем коде вот что:
"2.71828152557319
2.71828182845905"
а в переделанном только по 5 знаков после запятой. Как увеличить точность или сделаь ее вариативной?
0
:)
Эксперт С++
4762 / 3256 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
15.08.2013, 14:30 8
Цитата Сообщение от nikitosina Посмотреть сообщение
как увеличить количество знаков после запятой
http://www.cplusplus.com/reference/iomanip/setprecision/
1
9 / 9 / 2
Регистрация: 18.06.2012
Сообщений: 33
15.08.2013, 14:32 9
nikitosina, добавь перед выводом
C++
1
std::cout.precision(10);
.
P.S. 10 это число символов.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.08.2013, 14:32

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Перевод кода с С++ на Си
#include&lt;iostream&gt; using namespace std; bool checkpalindrom(int *arr,int length)//проверка...

Перевод кода на VB 6.0
Форумчане переведите пожалуйста на вб этот код написанный наверное в паскале(!) Код взят из...

Перевод кода с C#
Random r = new Random(); int arr = new int; int sum = 0, ...

Перевод кода с с++ на py
нужно перевести код на py проблема в том что я не знаю как заюзать strtok в python #include...


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

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

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