Traduire un programme de langage c vers langage pyhton
fafa1995
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
nidhogg-59 Messages postés 102 Date d'inscription Statut Membre Dernière intervention -
nidhogg-59 Messages postés 102 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
voici le programme que je veut traduire
# include <stdio.h>
# include <stdlib.h>
# define LEN 3
# define POWER(n) ((1)-(2)*(n%2))
void input(int** matrix, int len);
void afficher(int** matrix, int len);
int** minor(int** matrix, int len, int i, int j);
double deter(int** matrix, int len);
void destroyMatrix(int** matrix, int len);
int main (void) {
int **matrix = (int**)malloc(sizeof(*matrix)*LEN);
for (int i=0 ; i < LEN ; i++)
matrix[i] = (int*)malloc(sizeof(*matrix[i])*LEN);
input(matrix, LEN);
system("cls");
afficher(matrix, LEN);
printf("\nDeterminant: %lf", deter(matrix, LEN));
destroyMatrix(matrix, LEN);
return 0;
}
void destroyMatrix(int** matrix, int len) {
for (int i=0 ; i < len ; i++)
free(matrix[i]);
free(matrix);
}
void afficher(int** matrix, int len) {
int i, j;
putchar('\n');
for (i=0 ; i < len ; i++) {
for (j=0 ; j < len ; j++)
printf("%3d ", matrix[i][j]);
putchar('\n');
}
}
void input(int** matrix, int len) {
int i, j;
for (i=0 ; i < len ; i++)
for (j=0 ; j < len ; j++)
scanf("%d", &matrix[i][j]);
}
int** minor(int** matrix, int len, int i, int j) {
int k, l, m, n;
int **minor = NULL;
minor = (int**)malloc((len-1)*sizeof(int*));
if (!minor)
exit(0);
for (k=0 ; k < len-1 ; k++) {
minor[k] = (int*)malloc((len-1)*sizeof(int));
if (!minor[k])
exit(0);
}
for (k=0, l=0, m=0, n=0 ; k != len || l != 0 <img src="../../bundles/tinymce/vendor/tiny_mce/plugins/emotions/img/clin.png" title=";)" alt=";)"> {
if (k != i && l != j)
minor[m][n++] = matrix[k][l++];
if (k == i || l == j)
l++;
if (l == len) {
k++;
l=0;
}
if (n == len-1) {
m++;
n=0;
}
}
return minor;
}
double deter(int** matrix, int len) {
int j, k, **min = NULL;
double det=0;
if (len == 1)
return (double)matrix[0][0];
if (!len)
return 0;
for (j=0 ; j < len ; j++) {
min = minor(matrix, len, 0, j);
det += POWER(j)*matrix[0][j]*deter(min, len-1);
for (k=0 ; k < len-1 ; k++)
free(min[k]);
free(min);
}
return det;
}
voici le programme que je veut traduire
# include <stdio.h>
# include <stdlib.h>
# define LEN 3
# define POWER(n) ((1)-(2)*(n%2))
void input(int** matrix, int len);
void afficher(int** matrix, int len);
int** minor(int** matrix, int len, int i, int j);
double deter(int** matrix, int len);
void destroyMatrix(int** matrix, int len);
int main (void) {
int **matrix = (int**)malloc(sizeof(*matrix)*LEN);
for (int i=0 ; i < LEN ; i++)
matrix[i] = (int*)malloc(sizeof(*matrix[i])*LEN);
input(matrix, LEN);
system("cls");
afficher(matrix, LEN);
printf("\nDeterminant: %lf", deter(matrix, LEN));
destroyMatrix(matrix, LEN);
return 0;
}
void destroyMatrix(int** matrix, int len) {
for (int i=0 ; i < len ; i++)
free(matrix[i]);
free(matrix);
}
void afficher(int** matrix, int len) {
int i, j;
putchar('\n');
for (i=0 ; i < len ; i++) {
for (j=0 ; j < len ; j++)
printf("%3d ", matrix[i][j]);
putchar('\n');
}
}
void input(int** matrix, int len) {
int i, j;
for (i=0 ; i < len ; i++)
for (j=0 ; j < len ; j++)
scanf("%d", &matrix[i][j]);
}
int** minor(int** matrix, int len, int i, int j) {
int k, l, m, n;
int **minor = NULL;
minor = (int**)malloc((len-1)*sizeof(int*));
if (!minor)
exit(0);
for (k=0 ; k < len-1 ; k++) {
minor[k] = (int*)malloc((len-1)*sizeof(int));
if (!minor[k])
exit(0);
}
for (k=0, l=0, m=0, n=0 ; k != len || l != 0 <img src="../../bundles/tinymce/vendor/tiny_mce/plugins/emotions/img/clin.png" title=";)" alt=";)"> {
if (k != i && l != j)
minor[m][n++] = matrix[k][l++];
if (k == i || l == j)
l++;
if (l == len) {
k++;
l=0;
}
if (n == len-1) {
m++;
n=0;
}
}
return minor;
}
double deter(int** matrix, int len) {
int j, k, **min = NULL;
double det=0;
if (len == 1)
return (double)matrix[0][0];
if (!len)
return 0;
for (j=0 ; j < len ; j++) {
min = minor(matrix, len, 0, j);
det += POWER(j)*matrix[0][j]*deter(min, len-1);
for (k=0 ; k < len-1 ; k++)
free(min[k]);
free(min);
}
return det;
}
A voir également:
- Traduire un programme de langage c vers langage pyhton
- Langage binaire - Guide
- Comment traduire un site en français - Guide
- Programme demarrage windows - Guide
- Langage visual basic - Télécharger - Langages
- Traduire image - Guide
1 réponse
Heu, wè, et c'est quoi la question?
Si tu t'attend à ce qu'on fasse le boulot à ta place, t'es un peu gonflé!
Commence déjà par mettre ton code dans le balises 'code' et apprend le python!
Et entre autre, si t'as su faire ça tout seul, en une aprèm, tu devrais pouvoir apprendre les bases et le traduire en Python!
Si tu t'attend à ce qu'on fasse le boulot à ta place, t'es un peu gonflé!
Commence déjà par mettre ton code dans le balises 'code' et apprend le python!
Et entre autre, si t'as su faire ça tout seul, en une aprèm, tu devrais pouvoir apprendre les bases et le traduire en Python!