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

Перевести программу из C++ в C#

12.11.2016, 08:45. Просмотров 991. Ответов 2
Метки c++ (Все метки)

Помогите пожалуйста перевести программу из C++ в 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
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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
#include <iostream.h>
#include <iomanip.h>
#include <conio.h>
#include <stdlib.h>
 
class Massiv
{
 int *a,*b,n,min;
 public:
 void Sozd();
 void Vvod_Sl();
 void Form(int n1, int n2);
 void Form_2(int n3, int n4);
 void Print();
 void Print_2(int number);
 void Print_3(int rec, int field);
};
 
void main()
{
 Massiv a,b;
 int number,punkt,rec,field,kol,n1,n2,n,n3,n4;
 clrscr();
 cout<<"1 - sozdanie massiva";cout<<endl;
 cout<<"2 - pechat vseh strok";cout<<endl;
 cout<<"3 - pechat stroki po indeksu";cout<<endl;
 cout<<"4 - sceplenie dvuh massivov";cout<<endl;
 cout<<"5 - sliyanie dvuh massivov";cout<<endl;
 cout<<"6 - pechat konkretnogo elementa konkretnoi stroki";cout<<endl;
 cout<<"7 - vihod";cout<<endl;
 cout<<"Vvedite punkt menu "; cin>> punkt;
 while (punkt!=7)
 {
 switch(punkt)
 {
 case 1: {randomize();    //sozdanie massiva
 a.Vvod_Sl();
 cout<<endl;
 a.Print();
 cout<<endl;
 cout<<"1 - sozdanie massiva";cout<<endl;
 cout<<"2 - pechat vseh strok";cout<<endl;
 cout<<"3 - pechat stroki po indeksu";cout<<endl;
 cout<<"4 - sceplenie dvuh massivov";cout<<endl;
 cout<<"5 - sliyanie dvuh massivov";cout<<endl;
 cout<<"6 - pechat konkretnogo elementa konkretnoi stroki";cout<<endl;
 cout<<"7 - vihod";cout<<endl;
 cout<<"Vvedite punkt menu "; cin>> punkt;
 }
 break;
 case 2: {a.Print(); //pechat massiva
 cout<<endl;
 cout<<"1 - sozdanie massiva";cout<<endl;
 cout<<"2 - pechat vseh strok";cout<<endl;
 cout<<"3 - pechat stroki po indeksu";cout<<endl;
 cout<<"4 - sceplenie dvuh massivov";cout<<endl;
 cout<<"5 - sliyanie dvuh massivov";cout<<endl;
 cout<<"6 - pechat konkretnogo elementa konkretnoi stroki";cout<<endl;
 cout<<"7 - vihod";cout<<endl;
 cout<<"Vvedite punkt menu "; cin>> punkt; }
 break;
 case 3: { //pechat stroki po indeksu
 cout<<"Vvedite nomer massiva (numeracia s 0!): ";cin>>number;
 cout<<endl;
 a.Print_2(number);
 cout<<"1 - sozdanie massiva";cout<<endl;
 cout<<"2 - pechat vseh strok";cout<<endl;
 cout<<"3 - pechat stroki po indeksu";cout<<endl;
 cout<<"4 - sceplenie dvuh massivov";cout<<endl;
 cout<<"5 - sliyanie dvuh massivov";cout<<endl;
 cout<<"6 - pechat konkretnogo elementa konkretnoi stroki";cout<<endl;
 cout<<"7 - vihod";cout<<endl;
 cout<<"Vvedite punkt menu "; cin>> punkt;
 }
 break;
 case 4: {  //sceplenie dvuh massivov
 cout<<"Vvrdite nomer 1-go massiva(numeracia s 0!): ";cin>>n1;cout<<endl;
 cout<<"Vvedite nomer 2-go massiva(numeracia s 0!): ";cin>>n2;cout<<endl;
 a.Form(n1,n2);
 cout<<endl;
 cout<<"1 - sozdanie massiva";cout<<endl;
 cout<<"2 - pechat vseh strok";cout<<endl;
 cout<<"3 - pechat stroki po indeksu";cout<<endl;
 cout<<"4 - sceplenie dvuh massivov";cout<<endl;
 cout<<"5 - sliyanie dvuh massivov";cout<<endl;
 cout<<"6 - pechat konkretnogo elementa konkretnoi stroki";cout<<endl;
 cout<<"7 - vihod";cout<<endl;
 cout<<"Vvedite punkt menu "; cin>> punkt;}
 break;
 case 5: {  //sliyanie dvuh massivov
 cout<<"Vvrdite nomer 1-go massiva(numeracia s 0!): ";cin>>n3;cout<<endl;
 cout<<"Vvedite nomer 2-go massiva(numeracia s 0!): ";cin>>n4;cout<<endl;
 a.Form_2(n3,n4);
 cout<<endl;
 cout<<"1 - sozdanie massiva";cout<<endl;
 cout<<"2 - pechat vseh strok";cout<<endl;
 cout<<"3 - pechat stroki po indeksu";cout<<endl;
 cout<<"4 - sceplenie dvuh massivov";cout<<endl;
 cout<<"5 - sliyanie dvuh massivov";cout<<endl;
 cout<<"6 - pechat konkretnogo elementa konkretnoi stroki";cout<<endl;
 cout<<"7 - vihod";cout<<endl;
 cout<<"Vvedite punkt menu "; cin>> punkt;}
 break;
 
 case 6: {  //pechat konkretnogo elementa konkretnoi stroki
 cout<<"Vvedite nomer stroki massiva(numeraciya s 0!): ";cin>>rec;
 cout<<endl;
 cout<<"Vvedite nomer stolbca: ";cin>>field;
 cout<<endl;
 a.Print_3(rec,field);
 cout<<"1 - sozdanie massiva";cout<<endl;
 cout<<"2 - pechat vseh strok";cout<<endl;
 cout<<"3 - pechat stroki po indeksu";cout<<endl;
 cout<<"4 - sceplenie dvuh massivov";cout<<endl;
 cout<<"5 - sliyanie dvuh massivov";cout<<endl;
 cout<<"6 - pechat konkretnogo elementa konkretnoi stroki";cout<<endl;
 cout<<"7 - vihod";cout<<endl;
 cout<<"Vvedite punkt menu "; cin>> punkt;}
 break;
 case 7:
 break;
 }
 }
 
}
void Massiv :: Sozd()
{
int m;
 cout<<"kolvo strok?";cin>>n;
 int min=0;
 for (int i=0;i<n;i++)
 {
 cout<<"kolvo elementov v "<< i+1 <<" stroke?";cin>>m;
 *(b+i)=m;
 if (min<m) min=m;
 }
 a=(int*)malloc(sizeof(int)*n*min);
}
void Massiv::Vvod_Sl()
{
 Sozd();
 for(int i=0;i<n;i++)
 for (int j=0; j<*(b+i); j++)
 {
 *(a+i+j)=-20+random(41);
 }
}
void Massiv :: Print()
{
 for(int i=0;i<n;i++)
 {
 for (int j=0; j<*(b+i);j++)
 {
 cout<<setw(6)<<*(a+i+j);
 }
 cout<<endl;
 }
}
void Massiv :: Print_2(int number)
{
 for(int i=0;i<n;i++)
 {
 for (int j=0; j<*(b+i);j++)
 {
 if (i==number) cout<<setw(6)<<*(a+i+j);
 }
 cout<<endl;
 }
}
 
void Massiv :: Print_3(int rec, int field)
{
 for(int i=0;i<n;i++)
 {
 for (int j=0; j<*(b+i);j++)
 {
 if ((i==rec)&&(j==field)) cout<<"Danii element= "<<setw(6)<<*(a+i+j);
 else "Massiv s takimi dannimi ne naiden!";
 }
 cout<<endl;
 }
}
 
void Massiv :: Form(int n1,int n2)
{
 int m1,m2,k,j,l,p;
 int c[20];
 //zapominaem kolvo elementov v strokah
 m1=*(b+n1);
 m2=*(b+n2);
 // *(b+n1)=m1+m2;
 int m3=m1+m2;
 k=0;
 for (l=0;l<m3;l++)
 if(l<m1)
 {c[l]=*(a+n1+l);
 cout<<setw(6)<<c[l];
 }
 else if((l>=m1)&&(l<m3))
 {
 c[l]=*(a+n2+k);
 cout<<setw(6)<<c[l];
 k++;
 }
}
void Massiv :: Form_2(int n3,int n4)
{
 int m1,m2,k,j,l,p,l1;
 int c[20],f[20];
 //zapominaem kolvo elementov v strokah
 m1=*(b+n3);
 m2=*(b+n4);
 int m3=m1+m2;
 k=0;
 for (l=0;l<m3;l++)
 {
 if(l<m1)
 {c[l]=*(a+n3+l);
 }
 else if((l>=m1)&&(l<m3))
 {
 c[l]=*(a+n4+k);
 k++;
 }
 }
 l1=0;
 f[l1]=c[l1];
 cout<<setw(6)<<f[l1];
 //sliyanie
 for(p=1;p<m3;p++)
 if(f[l1]!=c[p])
 { l++;
 f[l1]=c[p];
 cout<<setw(6)<<f[l1];
 }
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.11.2016, 08:45
Ответы с готовыми решениями:

Перевести программу с С++ на С#
Условие: Дана строка. Преобразовать ее, удалив каждый символ + и повторив каждый символ, отличный...

Перевести программу в С++
Вот это нужно оформить в C++ #include &lt;cstring&gt; #include &lt;iostream&gt; using namespace std; ...

Перевести программу из C++ в С#
Можете помочь и перевести программу с С++ на С шарп #include &lt;iostream&gt; #include &lt;fstream&gt;...

Перевести программу из C++ в Си
#include &lt;iostream&gt; int main() { int size=3; int max_size=size+(size-1); ...

2
Злой няш
1523 / 1187 / 407
Регистрация: 05.04.2010
Сообщений: 2,081
12.11.2016, 14:19 2
Лучший ответ Сообщение было отмечено DeRs113 как решение

Решение

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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
using System;
 
public static class Program
{
    private static Massiv array = new Massiv();
    private static int menuOption;
 
    public static void Main()
    {
        do
        {
            Console.WriteLine();
            Console.WriteLine("1 - sozdanie massiva");
            Console.WriteLine("2 - pechat vseh strok");
            Console.WriteLine("3 - pechat stroki po indeksu");
            Console.WriteLine("4 - sceplenie dvuh massivov");
            Console.WriteLine("5 - sliyanie dvuh massivov");
            Console.WriteLine("6 - pechat konkretnogo elementa konkretnoi stroki");
            Console.WriteLine("7 - vihod");
            Console.WriteLine();
            Console.Write("Vvedite punkt menu ");
            menuOption = int.Parse(Console.ReadLine());
        }
        while (HandleMenu());
    }
 
    private static bool HandleMenu()
    {
        switch (menuOption)
        {
            case 1:
                //sozdanie massiva
                array.Vvod_Sl();
                Console.WriteLine();
                array.Print();
                break;
            case 2:
                array.Print(); //pechat massiva
                break;
            case 3:
                //pechat stroki po indeksu
                int number = ReadInteger("Vvedite nomer massiva (numeracia s 0!): ");
                array.Print_2(number);
                break;
            case 4:
                //sceplenie dvuh massivov
                int n1 = ReadInteger("Vvrdite nomer 1-go massiva(numeracia s 0!): ");
                int n2 = ReadInteger("Vvedite nomer 2-go massiva(numeracia s 0!): ");
                array.Form(n1, n2);
                break;
            case 5:
                //sliyanie dvuh massivov
                int n3 = ReadInteger("Vvrdite nomer 1-go massiva(numeracia s 0!): ");
                int n4 = ReadInteger("Vvedite nomer 2-go massiva(numeracia s 0!): ");
                array.Form_2(n3, n4);
                break;
            case 6:
                //pechat konkretnogo elementa konkretnoi stroki
                int rec = ReadInteger("Vvedite nomer stroki massiva(numeraciya s 0!): ");
                int field = ReadInteger("Vvedite nomer stolbca: ");
                array.Print_3(rec, field);
                break;
            case 7:
                return false;
        }
 
        return true;
    }
 
    private static int ReadInteger(string label)
    {
        Console.Write(label);
        int value = int.Parse(Console.ReadLine());
        Console.WriteLine();
        return value;
    }
}
 
public class Massiv
{
    private static readonly Random Randomizer = new Random();
 
    private int[][] data;
 
    public void Sozd()
    {
        Console.Write("kolvo strok?");
        data = new int[int.Parse(Console.ReadLine())][];
        for (var i = 0; i < data.Length; i++)
        {
            Console.Write("kolvo elementov v {0} stroke?", i + 1);
            data[i] = new int[int.Parse(Console.ReadLine())];
        }
    }
 
    public void Vvod_Sl()
    {
        Sozd();
        foreach (int[] row in data)
            for (var i = 0; i < row.Length; i++)
                row[i] = Randomizer.Next(-20, 21);
    }
 
    public void Form(int n1, int n2)
    {
        foreach (int field in data[n1])
            Console.Write("{0,6}", field);
        foreach (int field in data[n2])
            Console.Write("{0,6}", field);
    }
 
    public void Form_2(int n3, int n4)
    {
        int previous = int.MinValue;
        foreach (int field in data[n3])
            if (field != previous)
                Console.Write("{0,6}", field);
        foreach (int field in data[n4])
            if (field != previous)
                Console.Write("{0,6}", field);
    }
 
    public void Print()
    {
        for (var i = 0; i < data.Length; i++)
            Print_2(i);
    }
 
    public void Print_2(int row)
    {
        foreach (int field in data[row])
            Console.Write("{0,6}", field);
        Console.WriteLine();
    }
 
    public void Print_3(int row, int column)
    {
        if (row >= 0 && row < data.Length && column >= 0 && column < data[row].Length)
            Console.WriteLine("Danii element= {0,6}", data[row][column]);
        else
            Console.WriteLine("Massiv s takimi dannimi ne naiden!");
    }
}
1
0 / 0 / 0
Регистрация: 12.01.2016
Сообщений: 4
12.11.2016, 16:37  [ТС] 3
Большое Спасибо!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.11.2016, 16:37

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

Перевести программу с C++ на Си
Подскажите как. #include &lt;cstdlib&gt; #include &lt;iostream&gt; #include &lt;stdio.h&gt; #include &lt;conio.h&gt;...

Перевести программу из C++ в Си
#include &lt;cstdlib&gt; #include &lt;ctime&gt; #include &lt;iostream&gt; #include &lt;cstddef&gt; #include...

Перевести программу в СИ
Здравствуйте, переведите пожалуйста код с C# на СИ using System; using...

Перевести программу на Си
#include &lt;iostream&gt; using namespace std; void swap(int *a, int i, int j) { int s = a; a =...

Перевести программу на С++
нужно перевести в с++ Дан текст, в котором имеются цифры. а) Найти их сумму. б) Найти...

перевести программу
нужно перевести из с++ в асм. #include &lt;Windows.h&gt; //прототипы void show_array(int arrlen,...


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

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

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