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

Перевод программы на С++ - C++

Восстановить пароль Регистрация
 
PhoeniX_4
 Аватар для PhoeniX_4
6 / 6 / 3
Регистрация: 01.06.2011
Сообщений: 161
14.06.2014, 09:37     Перевод программы на С++ #1
Доброго времени суток, дамы и господа. Нужна небольшая помощь. Пишу курсовую, сам изучаю C#. Но совершенно ничего не успеваю, а нужно еще изучить Питон и С++. Уповаю на вашу помощь перевода данного ниже текста программы на С++.

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;
 
class Nachalo
{
    public int b;
    public int c;
 
    public void Utka()
    {
        Console.WriteLine("Странный пример вы решаете. Будет " + b * c);
    }
}
class Dalee
{
    public void Koshka()
    {
        Console.WriteLine("Ну вот и все.");
    }
}
class Progr
{
    static void Main()
    {
        Nachalo go = new Nachalo();
        Dalee run = new Dalee();
        go.c = 8;
        go.b = 4;
        go.Utka();
        run.Koshka();
 
    }
}
Заранее благодарен
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.06.2014, 09:37     Перевод программы на С++
Посмотрите здесь:

Перевод программы C++
перевод программы C++
Перевод программы C++
Перевод программы C++
Перевод программы с Pascal на С++ C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
14.06.2014, 09:45     Перевод программы на С++ #2
Цитата Сообщение от PhoeniX_4 Посмотреть сообщение
"Странный пример вы решаете. Будет " + b * c
А разве строки можно складывать с числами?
dimabubyakin
 Аватар для dimabubyakin
158 / 123 / 44
Регистрация: 16.10.2013
Сообщений: 1,731
Завершенные тесты: 5
14.06.2014, 09:51     Перевод программы на С++ #3
Ну как-то так)
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
35
36
37
38
39
40
#include <iostream>
using namespace std;
class Nachalo
{
public:
    int b,c;
    void Utka()
    {
        cout<<"Странный пример вы решаете. Будет "<<b*c<<endl;
    }
};
class Dalee
{
public:
    void Koshka()
    {
        cout<<"Ну вот и все."<<endl;    
    }
};
int main()
{
    Nachalo *go=new Nachalo();
    Dalee *run=new Dalee();
    go->c=8;
    go->b=4;
    go->Utka();
    run->Koshka();
 
/*
    Nachalo go;
    Dalee run;
    go.c=8;
    go.b=4;
    go.Utka();
    run.Koshka();
*/
 
    system("pause");
    return 0;
}
Ev_Hyper
 Аватар для Ev_Hyper
1806 / 1627 / 435
Регистрация: 15.12.2013
Сообщений: 5,776
14.06.2014, 09:55     Перевод программы на С++ #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
PhoeniX_4, так пишите курсовую на C#.

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
35
#include<iostream>
#include<locale>
using namespace std;
 
class Nachalo
{
public:
int b;
int c;
void Utka()
    {
        cout<<"Странный пример вы решаете. Будет"<<" "<<b * c<<endl;
    }
};
 
class Dalee
{
public:
    void Koshka()
    {
        cout<<"Ну вот и все."<<endl;
    }
};
int main()
{
     setlocale(LC_ALL,"");
     Nachalo* go = new Nachalo();
        Dalee* run = new Dalee();
        go->c = 8;
        go->b = 4;
        go->Utka();
        run->Koshka();
 
    return 0;
}
Код
Странный пример вы решаете. Будет 32
Ну вот и все.
Для продолжения нажмите любую клавишу . . .

Не по теме:


P.S Код странный



Добавлено через 2 минуты
taras atavin, в C# можно, привидет в строке числовые значения.
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
14.06.2014, 10:24     Перевод программы на С++ #5
Цитата Сообщение от Ev_Hyper Посмотреть сообщение
taras atavin, в C# можно, привидет в строке числовые значения.
И по каким правилам строки умножаются?
Ev_Hyper
 Аватар для Ev_Hyper
1806 / 1627 / 435
Регистрация: 15.12.2013
Сообщений: 5,776
14.06.2014, 10:38     Перевод программы на С++ #6
taras atavin, насколько мне известно таких правил нет. Оператор * не может приминяться к типу string
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
14.06.2014, 10:40     Перевод программы на С++ #7
Тогда как скомпилить
C#
1
"строка"+b*c
?
Ev_Hyper
 Аватар для Ev_Hyper
1806 / 1627 / 435
Регистрация: 15.12.2013
Сообщений: 5,776
14.06.2014, 10:42     Перевод программы на С++ #8
taras atavin, если b и с числа с одним типом:
C#
1
2
            double one = 5;
            Console.WriteLine("Строка" + one*5);
Код
Строка25
Для продолжения нажмите любую клавишу . . .
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
14.06.2014, 10:54     Перевод программы на С++ #9
Не понял.

Добавлено через 5 минут
C#
1
s1=s2+b*c;
, где s1 и s2 - строки, а b и c - однотипные числа. Что будет в переводе?
C++
1
s1=s2+b*c;
? Строку нельзя складывать с числами.
C++
1
s1=s2+FloatToStr(b)*c;
? Строку нельзя умножить на число.
C++
1
s1=s2+FloatToStr(b)*FloatToStr(c);
? Строку на строку умножить тоже нельзя.
dzrkot
zzzZZZ...
 Аватар для dzrkot
516 / 346 / 53
Регистрация: 11.09.2013
Сообщений: 1,977
14.06.2014, 10:59     Перевод программы на С++ #10
Цитата Сообщение от taras atavin Посмотреть сообщение
А разве строки можно складывать с числами?
в java можно мб и в С# ибо он дочерний
palva
 Аватар для palva
2372 / 1594 / 190
Регистрация: 08.06.2007
Сообщений: 6,362
Записей в блоге: 4
14.06.2014, 11:03     Перевод программы на С++ #11
К строке можно прибавить число. В этом случае число преобразуется в объект (boxing) и к нему применяется метод ToString(). Дальше строки конкатенируются. Кроме того в данном случае соблюдается старшинство операций, то есть сначала производится умножение чисел, а потом результат преобразуется в строку.
Ev_Hyper
 Аватар для Ev_Hyper
1806 / 1627 / 435
Регистрация: 15.12.2013
Сообщений: 5,776
14.06.2014, 11:12     Перевод программы на С++ #12
Цитата Сообщение от taras atavin Посмотреть сообщение
где s1 и s2 - строки, а b и c - однотипные числа. Что будет в переводе?
taras atavin, вместо Console.Writeline можно записать присвоение:
C#
1
2
3
4
            double one = 5;
            double two = 7;
            string str = "Строка" + one*two;
            Console.WriteLine(str);
Код
Строка35
Для продолжения нажмите любую клавишу . . .
Я не знаю, что такое FloatToStr, но строку нельзя умножить на число, как и строку на строку без явной конвертации:
C#
1
2
3
4
            double two = 7;
            string thr = "12";
            string str = "Строка" + Double.Parse(thr)*two;
            Console.WriteLine(str);
Код
Строка84
Для продолжения нажмите любую клавишу . . .
S_el
1906 / 1501 / 295
Регистрация: 15.12.2013
Сообщений: 5,913
14.06.2014, 11:16     Перевод программы на С++ #13
Цитата Сообщение от Ev_Hyper Посмотреть сообщение
Я не знаю, что такое FloatToStr, но строку нельзя умножить на число, как и строку на строку
В C# нельзя
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
14.06.2014, 14:41     Перевод программы на С++ #14
Нет, это потомки одного предка.

Добавлено через 57 секунд
Цитата Сообщение от Ev_Hyper Посмотреть сообщение
Я не знаю, что такое FloatToStr,
Это функция преобразования действительного числа в строку.
PhoeniX_4
 Аватар для PhoeniX_4
6 / 6 / 3
Регистрация: 01.06.2011
Сообщений: 161
14.06.2014, 15:36  [ТС]     Перевод программы на С++ #15
так пишите курсовую на C#
У меня курсовая "сравнение языков программирования C#, C++ и Python". То есть думаю сами понимаете что одним тут языком не обойтись)

P.S. Спасибо большое за перевод

Добавлено через 7 минут
"Странный пример вы решаете. Будет " + b * c
В языке C# в данном случае оператор сложения лишь дает компилятору команду подставить(!) к строке значение, получаемое умножением двух чисел) Это только в данном случае)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.06.2014, 15:43     Перевод программы на С++
Еще ссылки по теме:

C++ Перевод программы на C++
C++ Перевод программы с Pascal на С++
C++ Перевод программы на С++

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

Или воспользуйтесь поиском по форуму:
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
14.06.2014, 15:43     Перевод программы на С++ #16
Цитата Сообщение от taras atavin Посмотреть сообщение
s1=s2+b*c;
У оператора * приоритет выше. Представьте это, как
Код
string s1, s2;
int a, d;
//...
s1 = s2 + string.valueOf(a * b);
где valueOf() - метод класса string, получающий параметром число и возвращающий его в виде строки.
Yandex
Объявления
14.06.2014, 15:43     Перевод программы на С++
Ответ Создать тему
Опции темы

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