1 / 1 / 0
Регистрация: 29.12.2013
Сообщений: 23
1

На каком языке этот код и можно ли его переделать?

10.01.2014, 16:52. Показов 756. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день Дамы и Господа Программисты. Вот тут мне дали код и попросили переделать под С++. Только,вроде бы сам этот код написал на С++. Но ток при компиляции выдает ошибки.

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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
#include <iostream>
 
using namespace std;
 
function Calculate( probability, codes )
{
    var holder = new Object( );
    var sum = 0.0;
    for ( var i = 0;
            i < probability.length;
            ++ i )sum += probability[ i ].value;
    for ( var i = 0;
            i < probability.length;
            ++ i )holder[ probability[ i ].name ] = probability[ i ].value / sum;
    var synergy = [ ];
    for ( var i = 0;
            i < probability.length;
            ++ i )
    {
        var data = new Object( );
        data.name = probability[ i ].name;
        data.value = holder[ probability[ i ].name ];
        synergy.push( data );
    }
    //alert(showarr(synergy));
    synergy = sortobj( synergy );
    //alert(showarr(synergy));
    while ( synergy.length > 1 )
    {
        var combine = new Object( );
        combine.left = synergy[ 0 ];
        combine.right = synergy[ 1 ];
        combine.value = synergy[ 0 ].value + synergy[ 1 ].value;
        synergy.shift( );
        synergy.shift( );
        synergy.unshift( combine );
        synergy = sortobj( synergy );
        //alert(showarr(synergy));
    }
    var results = new Array( );
    var code = "";
    buildtree( synergy[ 0 ], code );
    function buildtree( root, currentcode )
    {
        if ( root.left )buildtree( root.left, currentcode + "0" );
        if ( root.right )buildtree( root.right, currentcode + "1" );
        if ( root.name )
        {
            var rec = new Object( );
            rec.name = root.name;
            rec.code = currentcode;
            rec.value = root.value;
            results.push( rec );
        }
    }
    results = sortobj( results );
    for ( var i = results.length - 1;
            i >= 0;
            i -- )
    {
        var rec = codes.AddNewRecord( );
        rec.name = results[ i ].name;
        rec.value = results[ i ].code;
    }
    function sortobj( myobj )
    {
        var result = [ ];
        var tuples = [ ];
        for ( var i = 0;
                i < myobj.length;
                ++ i )tuples.push( [ i, myobj[ i ].value ] );
        tuples.sort( function ( a, b )
        {
            a = a[ 1 ];
            b = b[ 1 ];
            return a < b ? - 1 : ( a > b ? 1 : 0 );
        }
                   );
        for ( var i = 0;
                i < tuples.length;
                ++ i )result[ i ] = myobj[ tuples[ i ][ 0 ] ];
        return result;
    }
    function showarr( myobj )
    {
        var property, propCollection = "";
        for ( property in myobj )
        {
            propCollection += ( property + ": " + showobj( myobj[ property ] ) + "\n" );
        }
        return propCollection;
    }
    function showobj( myobj )
    {
        var property, propCollection = "";
        for ( property in myobj )
        {
            propCollection += ( property + ": " + myobj[ property ] + "\n" );
        }
        return propCollection;
    }
}
Вопрос в том,возможно ли переделать этот код под С++ или нет?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.01.2014, 16:52
Ответы с готовыми решениями:

На каком ассемблере можно запустить этот код (hello world)
.MODEL SMALL .STACK 100h .DATA HelloMessage DB 'Hello World',13,10,'$' .CODE START: ...

Что значит этот код и как его можно адаптировать в С#?
class Node { public: union { struct { Node *pLeft, *pRight; }; Token tkn; } u; ...

как этот код на языке с++ будет выглядить на языке php?
#include &lt;iostream&gt; using namespace std; const int LEN = 80; class instrument{ private: ...

Переделать код, чтобы можно было запустить его в MSVS
Программа написана под Linux. Подскажите что нужно поменять чтобы запустить ее в обычном microsoft...

9
2062 / 618 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
10.01.2014, 17:01 2
PhenixOfDoctor, вам не помогут, лучше вместо этого попросите написать программу, которая делает тоже самое, что пытались запрограммировать в этом коде.
0
60 / 60 / 6
Регистрация: 28.05.2012
Сообщений: 222
10.01.2014, 17:15 3
Цитата Сообщение от PhenixOfDoctor Посмотреть сообщение
Вот тут мне дали код и попросили переделать под С++. Только,вроде бы сам этот код написал на С++.
Нет, это не С++, похоже на JavaScript, но #include меня смущает. Возможно какой-то специализированный язык.
0
1437 / 1014 / 228
Регистрация: 31.05.2013
Сообщений: 6,645
Записей в блоге: 6
10.01.2014, 18:51 4
Паскаль...
Только кривая попытка переделать на С++...
Программа"Калькулятор" я так понял.

Добавлено через 14 минут
Demy85, на JS и близко не похоже.
Правда,у всех однотипных языков много общего,но здесь всё проще.
Кроме того,это один из файлов проекта.
Уважаемый PhenixOfDoctor, а где остальные файлы? Если ты переделывал,то зачем прилепил какое-то var, которое в С++ не применяется,а в Pascal походит от слова variable - переменная?
Далее,по какому принципу ты обращаешься к probability? В начале ты никаким образом эту переменную не определяешь. И только из строки
Pascal
1
holder[ probability[ i ].name ] = probability[ i ].value / sum;
видно,что на самом деле это массив.
Цитата Сообщение от PhenixOfDoctor Посмотреть сообщение
var holder = new Object( );
- что-то похоже на ООП,но в Паскале ООП не было.Это структурный язык,призванный помогать в обычных вычислениях.
Цитата Сообщение от PhenixOfDoctor Посмотреть сообщение
holder[ probability[ i ].name ] = probability[ i ].value / sum;
Если делишь на sum,то где проверка на равенство 0?

В коде многого неясно.Поэтому приведи то,что прислали тебе.
0
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
10.01.2014, 18:55 5
Цитата Сообщение от Matan! Посмотреть сообщение
Если ты переделывал,то зачем прилепил какое-то var, которое в С++ не применяется,а в Pascal походит от слова variable - переменная?
И в данном коде применяется том же контексте, что и в JS.
Цитата Сообщение от Matan! Посмотреть сообщение
что-то похоже на ООП,но в Паскале ООП не было
Потому что это JS.
0
31 / 31 / 4
Регистрация: 15.12.2013
Сообщений: 147
10.01.2014, 18:56 6
Цитата Сообщение от PhenixOfDoctor Посмотреть сообщение
На каком языке этот код
Цитата Сообщение от PhenixOfDoctor Посмотреть сообщение
Вот тут мне дали код
Нужно было спросить у того, кто дал этот код Или он сам не знает?
0
5231 / 3204 / 362
Регистрация: 12.12.2009
Сообщений: 8,112
Записей в блоге: 2
10.01.2014, 19:14 7
Цитата Сообщение от 0x10 Посмотреть сообщение
Потому что это JS.
незнаю JS (так, пару раз видел)), но вот это очень смущает
C++
1
2
3
#include <iostream>
 
using namespace std;
может ТС это сам дописал в попытках "переделать на С++"?
0
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
10.01.2014, 19:18 8
Цитата Сообщение от Kastaneda Посмотреть сообщение
может ТС это сам дописал в попытках "переделать на С++"?
Скорее всего, поэтому я это просто проигнорировал.
0
Kastaneda
10.01.2014, 19:23
  #9

Не по теме:

Мануал по портированию JS в С++

1. допиши сверху
C++
1
2
#include <iostream>
using namespace std;
2. компилируй
:D

1
60 / 60 / 6
Регистрация: 28.05.2012
Сообщений: 222
13.01.2014, 11:13 10
Цитата Сообщение от Matan! Посмотреть сообщение
Demy85, на JS и близко не похоже.
И чем же не похоже?
0
13.01.2014, 11:13
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.01.2014, 11:13
Помогаю со студенческими работами здесь

В каком дистрибутиве С открыть этот код?
В каком дистрибутиве С открыть этот код? Dev c++, turbo c выдают ошибки #include&lt;stdio.h&gt;...

На каком языке код
Добрый вечер. Поставлена задача изменить текст на сайте. Управляю с wordPress'a. Хотел бы узнать,...

На каком языке написан код?
Подскажите на каком языке это написано: &lt;script for=document event=onkeydown&gt;...

На каком языке написан код?
Что делает этот код?


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru