Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
HDR
39 / 14 / 2
Регистрация: 11.05.2010
Сообщений: 139
#1

Как перевести с C на C# - C++

27.11.2010, 19:53. Просмотров 344. Ответов 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
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
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
 
float **matrix; //matrix
float *a;       //solve
float *b;       //free b
 
 
//------------------------------------------------
//global const and its input
int n;          //number of lines
 
 
void lines(){
   
 printf("Input Number Of Lines To Continue: ");
 scanf("%d",&n);
 //printf("\n===================================\n");
 system("cls");
}
//------------------------------------------------
 
 
//allocate memory for matrixes
void allocmatrix(){
   
   int i,j;
    a= new float[n]; 
    b= new float[n];
 
    matrix = new float *[n]; for(i=0; i<n; i++){ matrix[i] = new float[n];}
 
   //init
   for(i=0; i<n; i++){
       for(j=0; j<n; j++){
       matrix[i][j]=0;
       }
       a[i]=0;//x
       b[i]=0;
   }
}
 
 
 
//read matrix & vector B
void readmatrix(){
   int i=0,j=0;
   printf("\n-------------------------  Row -- Column -------------\n");
   for(i=0; i<n; i++){
       for(j=0; j<n; j++){
      
           printf("Input <A> Element         [ %d ]   [ %d ]  =\t",i,j);
           scanf("%f", &matrix[i][j]);
       }
       printf("Input <B> Vector Element  [ %d ]   [ %d ]  =\t",i,j);
       scanf("%f", &b[i]);
       printf("\n");
   }
   system("cls");
}
 
 
 //print matrix & vector B
void printmatrix(){
  
   int i=0,j=0;
 
   printf("\n");
   printf("-----   Matrix <A>   -------- Vector <B> -------------\n");
   for(i=0; i<n; i++){
       for(j=0; j<n; j++){
          printf("      %0.1f ", matrix[i][j]);
       }
       printf("            =%0.1f\t\n", b[i]);
   } 
   printf("------------------------------------------------------\n");
   
}
   
 
 
//result
void printresult(){
      int i=0,j=0;
      float s=0;
 
   for(i=n-1; i>=0; i--){
               for(j = i; j<n; j++){
                      s = s+ matrix[i][j] * a[j];
                         }
                          a[i] = (b[i] - s) / matrix[i][i];
    }
 
   
   printf("\n");
   printf("Result, please :\n\n");
   for(i=0; i<n; i++){
       printf("x [%d] = %0.1f\n", i, a[i]);
   }
}
 
 
 
void diagonal(){
   int i, j, k;
   float temp=0;
   for(i=0; i<n; i++){
            if(matrix[i][i]==0){
                      for(j=0; j<n; j++){
                             if(j==i) continue;
            if(matrix[j][i] !=0 && matrix[i][j]!=0){
                      for(k=0; k<n; k++){
                      temp = matrix[j][k];
                      matrix[j][k] = matrix[i][k];
                      matrix[i][k] = temp;
           }
 
                      temp = b[j];
                      b[j] = b[i];
                      b[i] = temp;
                      break;
            }
                      }
       
            }
   }
}
 
 
 
 
 
void main(){
 
 
   lines();
 
   allocmatrix();
   readmatrix();
 
   diagonal();
 
 
   printmatrix();
   printresult();
 
 getch();
}
!!!!!!!!!!!!! На Printf() можно забить. !!!!!!!!!!!!!!!!! он будет не нужен.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2010, 19:53
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как перевести с C на C# (C++):

Как перевести на С++ - C++
if (k % 2 != 0) { /* Определяем перемещение дисков для нечетного хода */ switch (t % 3) { /* Выбираем перемещение в...

Как перевести код из MS VS в C++ 3.1? - C++
#include &quot;stdafx.h&quot; - здесь пишет ошибку,потому что нет у меня такого инклуда!Подскажите где взять? using namespace std; - в этом...

Как перевести с Java на C++? - C++
void sum() { int array = {1, -3, 5, 4, 8, -1, 9, 0 -4, 5, 6}; int indexStart = 0, indexEnd = 0; for (int i = 0; i &lt;...

Как можно перевести - C++
Как можно перевести Java на C++

Как перевести из 4 сс в 8сс - C++
Всем привет пацаны! как написать программу на с++, для перевода чисел с 4 системы счисления в 8- ричную систему счисления?

Как перевести Handle - C++
Долгое время думал что переводится как дескрптор, пока не увидел следующее:Handles and descriptors are opaque data structures which are...

1
NightmareZ
1360 / 569 / 37
Регистрация: 31.03.2009
Сообщений: 1,943
27.11.2010, 21:23 #2
Вообще говоря, этот код проще заново написать на C#, чем изменять под C# существующий.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.11.2010, 21:23
Привет! Вот еще темы с ответами:

Как перевести код с C++ на C ? - C++
#include &lt;iostream&gt; using namespace std; int main(){ float A = 3.0; float B = A; size_t N = 5; for( size_t...

указатель, как его перевести? с++ - C++
Доброго времени суток. Подскажите пожалуйста, что означают каждый элемент в данной строке. Это указатель, он есть в двухмерном массиве. Мне...

Как перевести lpbyte в string? - C++
Собственно сабж в теме, был вариант в цыкле перебирать lpbyte и сохранять в стринг, это логично? или есть способы проще? и еще вопрос, в...

Как long перевести в char? - C++
У меня дата и время в формате long пишу так sprintf(buf, &quot;%d&quot;, p); MessageBoxA(NULL, buf, &quot;information&quot;, MB_OK); p это...


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

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

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