Verification de mon code source
arhiel-moore
-
[Dal] Messages postés 6205 Date d'inscription Statut Contributeur Dernière intervention -
[Dal] Messages postés 6205 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
s'il vous plait, aidez moi à vérifier ce qui ne VA pas sur mon code source. car je compile et sa signale une erreur de syntaxe à l'entrée.
le voici:
j'utilise le DEV-C++ merci
#include <stdio.h>
#include <math.h>
int i, n;
int tableau[];
int main() {
printf("Choisissez la taille de votre tableau :");
scanf("%d", &n);
printf(" \n");
printf("le tableau contient %d elements \n", n);
// remplissage du tableau
for (i=0; i<n; i++){
printf("\nentrer les elements du tableau \n");
scanf("%d", &tableau[i]);
}
printf("\n\t////////elements du tableau////////\n\n");
for (i=0;i<n;i++){
printf(" %d|", tableau[i]);
}
printf("\n\n");
printf("######### Verification si suite arithmetique ########## \n\n");
int r1, r2;
i=0;
// calcul des raisons
r1=tableau[1] - tableau[0];
printf("r1= %d \n", r1);
r2=tableau[2] - tableau[1];
printf("r2=%d \n", r2);
if(r1==r2)
{
printf("la suite est arithmetique \n");
}
else
printf("la suite n est pas arithmetique \n");
printf("\n######### Verification si suite geometrique ########## \n\n");
int q1, q2;
// calcul des raisons
q1=tableau[1] / tableau[0];
q2=tableau[2] / tableau[1];
printf("q1:%d\n", q1);
printf("q2:%d\n", q2);
if(q1==q2){
printf("\nla suite est geometrique \n\n");
}
else
printf("la suite n est pas geometrique \n\n");
printf("################ divisibilite par 11 ################# \n\n");
int SI, SP, j, dif;
//calcul des sommes impaires
j=0;
while (j<n){
SI=SI + tableau[j];
j=j+2;
}
printf("somme des chiffres de rang impaire: %d", SI);
printf("\n");
//calcul des sommes paires
j=1;
while (j<=n){
SP=SP + tableau[j];
j=j+2;
}
printf("somme des nombres de rang paire: %d \n", SP);
printf("\n");
dif= SP-SI;
printf("la difference de sp et si est: %d ", dif);
if (dif==0){
printf("\n le nombre 11 est divisible par 11 !\n");
}
else
printf("le nombre n est pas divisible par 11\n");
printf("\n################# conversion binaire ################# \n\n");
printf("##########conversion du nombre 11 en binaire###########\n\n");
int dvd=0; //le dividende
int qt=0; // le quotient
int rest=0; // le reste
int resultat[8]; //le resultat dans un tableau
//i=n;
//printf("n= %d \n", n);
dvd = 11; // le nombre a convertir
i=0;
while (dvd != 1) {
qt = dvd / 2;
rest = dvd % 2;
dvd = qt;
if (dvd == 1){
resultat[i] = dvd;
}
else
resultat[i] = rest;
i++;
//printf("%d \n", i);
}
//*************affichage du resultat***************
//i=4;
printf("resultat de la conversion: ");
for (i=0; i<4; i++){
printf(" %d", resultat[i]);
}
printf("\n\n******************* FIN DU PROGRAMME *****************\n");
printf("\t ************* MERCI !! ************\n\n");
return 0;
}
s'il vous plait, aidez moi à vérifier ce qui ne VA pas sur mon code source. car je compile et sa signale une erreur de syntaxe à l'entrée.
le voici:
j'utilise le DEV-C++ merci
#include <stdio.h>
#include <math.h>
int i, n;
int tableau[];
int main() {
printf("Choisissez la taille de votre tableau :");
scanf("%d", &n);
printf(" \n");
printf("le tableau contient %d elements \n", n);
// remplissage du tableau
for (i=0; i<n; i++){
printf("\nentrer les elements du tableau \n");
scanf("%d", &tableau[i]);
}
printf("\n\t////////elements du tableau////////\n\n");
for (i=0;i<n;i++){
printf(" %d|", tableau[i]);
}
printf("\n\n");
printf("######### Verification si suite arithmetique ########## \n\n");
int r1, r2;
i=0;
// calcul des raisons
r1=tableau[1] - tableau[0];
printf("r1= %d \n", r1);
r2=tableau[2] - tableau[1];
printf("r2=%d \n", r2);
if(r1==r2)
{
printf("la suite est arithmetique \n");
}
else
printf("la suite n est pas arithmetique \n");
printf("\n######### Verification si suite geometrique ########## \n\n");
int q1, q2;
// calcul des raisons
q1=tableau[1] / tableau[0];
q2=tableau[2] / tableau[1];
printf("q1:%d\n", q1);
printf("q2:%d\n", q2);
if(q1==q2){
printf("\nla suite est geometrique \n\n");
}
else
printf("la suite n est pas geometrique \n\n");
printf("################ divisibilite par 11 ################# \n\n");
int SI, SP, j, dif;
//calcul des sommes impaires
j=0;
while (j<n){
SI=SI + tableau[j];
j=j+2;
}
printf("somme des chiffres de rang impaire: %d", SI);
printf("\n");
//calcul des sommes paires
j=1;
while (j<=n){
SP=SP + tableau[j];
j=j+2;
}
printf("somme des nombres de rang paire: %d \n", SP);
printf("\n");
dif= SP-SI;
printf("la difference de sp et si est: %d ", dif);
if (dif==0){
printf("\n le nombre 11 est divisible par 11 !\n");
}
else
printf("le nombre n est pas divisible par 11\n");
printf("\n################# conversion binaire ################# \n\n");
printf("##########conversion du nombre 11 en binaire###########\n\n");
int dvd=0; //le dividende
int qt=0; // le quotient
int rest=0; // le reste
int resultat[8]; //le resultat dans un tableau
//i=n;
//printf("n= %d \n", n);
dvd = 11; // le nombre a convertir
i=0;
while (dvd != 1) {
qt = dvd / 2;
rest = dvd % 2;
dvd = qt;
if (dvd == 1){
resultat[i] = dvd;
}
else
resultat[i] = rest;
i++;
//printf("%d \n", i);
}
//*************affichage du resultat***************
//i=4;
printf("resultat de la conversion: ");
for (i=0; i<4; i++){
printf(" %d", resultat[i]);
}
printf("\n\n******************* FIN DU PROGRAMME *****************\n");
printf("\t ************* MERCI !! ************\n\n");
return 0;
}
A voir également:
- Verification de mon code source
- Code ascii - Guide
- Code de déverrouillage oublié - Guide
- Code puk bloqué - Guide
- Code activation windows 10 - Guide
- Code blocks - Télécharger - Langages
3 réponses
Bonjour arhiel-moore,
N'avons nous pas une balise code sur ce serveur? Ta source serait déjà plus lisible...
De plus si tu veux une réponse rapide, je te suggère vivement d'isoler d'avantage ton problème : tout le monde n'a pas le temps de lire un pareil pavé. C'est d'autant plus ce qu'un vrai programmeur est censé faire!
Cordialement,
Noémie.
N'avons nous pas une balise code sur ce serveur? Ta source serait déjà plus lisible...
De plus si tu veux une réponse rapide, je te suggère vivement d'isoler d'avantage ton problème : tout le monde n'a pas le temps de lire un pareil pavé. C'est d'autant plus ce qu'un vrai programmeur est censé faire!
Cordialement,
Noémie.
Bonjour,
Déjà, oublie les variables globales :-).
Ensuite, int tableau[]; est faux. Il faut que tu indiques la taille.
Il serait bien vu aussi que tu nous mettes les messages d'erreur. Ils indiquent d'où vient le problème.
Déjà, oublie les variables globales :-).
Ensuite, int tableau[]; est faux. Il faut que tu indiques la taille.
Il serait bien vu aussi que tu nous mettes les messages d'erreur. Ils indiquent d'où vient le problème.
Salut arhiel-moore,
Vu que la taille de ton tableau dépend de la saisie de l'utilisateur, il te faut une allocation dynamique.
Quelque chose comme cela :
Par exemple, comme
Dal
Vu que la taille de ton tableau dépend de la saisie de l'utilisateur, il te faut une allocation dynamique.
Quelque chose comme cela :
#include <stdio.h> #include <stdlib.h> int main(void) { int n; int * tableau; printf("Choisissez la taille de votre tableau :"); scanf("%d", &n); printf(" \n"); printf("le tableau contiendra %d éléments \n", n); /* allocation de la mémoire nécessaire au tableau */ tableau = malloc(sizeof(int) * n); if (tableau == NULL) { printf("Erreur : pas assez de mémoire"); return 1; } /* faire des choses merveilleuses avec le tableau */ /* on n'utilise plus le tableau, alors on libère la mémoire */ free(tableau); return 0; }
Par exemple, comme
tableauest un pointeur sur int,
tableau[1]permet d'accéder au 2ème entier stocké à partir de l'adresse vers laquelle pointe
tableau.
Dal
Elles sont à côté des boutons gras, italiques, et soulignés.