Help pour un petit programme en C svp
Lefty09
Messages postés
7
Date d'inscription
Statut
Membre
Dernière intervention
-
mype Messages postés 2449 Statut Membre -
mype Messages postés 2449 Statut Membre -
Bonjour,
Je dois faire un programme pour l'école qui doit trier une série de nombres selon 3méthodes différentes, il faut donc d'abord entrer la série de nombre et ensuite choisir la méthode de tri, ce programme doit également s'arrêter lors de l'ajout d'un nombre négatif. Voici mon problème, je bloque déjà au début pour sortir de ma boucle :/
Voici le début du code
main()
{
n=1;
system("cls");
printf("bienvenue dans le programme de tri de nombres\n\n");
printf("entrer le %d er nombre\n",n++);
scanf("%d",&tab[i]);
for (i=1;i<=100;i++)
{
printf("Entrer le %d eme nombre \n",n++);
scanf("%d",&tab[i]);
printf("Entrer un autre nombre? \n");
printf("1 - oui\n",choix2);
printf("0 - non\n",choix2);
}while (choix2=0);
printf("Que voulez-vous faire?\n");
printf("1 - Tri par selection\n");
printf("2 - Tri a bulle\n");
printf("3 - Tri par insertion\n");
printf("4 - Sortir\n");
Que dois-je modifier pour sortir de ma boucle lorsque je tape "0" ? Et qu'il continue tant que je tape "1"??
Merci d'avance!!
Je dois faire un programme pour l'école qui doit trier une série de nombres selon 3méthodes différentes, il faut donc d'abord entrer la série de nombre et ensuite choisir la méthode de tri, ce programme doit également s'arrêter lors de l'ajout d'un nombre négatif. Voici mon problème, je bloque déjà au début pour sortir de ma boucle :/
Voici le début du code
main()
{
n=1;
system("cls");
printf("bienvenue dans le programme de tri de nombres\n\n");
printf("entrer le %d er nombre\n",n++);
scanf("%d",&tab[i]);
for (i=1;i<=100;i++)
{
printf("Entrer le %d eme nombre \n",n++);
scanf("%d",&tab[i]);
printf("Entrer un autre nombre? \n");
printf("1 - oui\n",choix2);
printf("0 - non\n",choix2);
}while (choix2=0);
printf("Que voulez-vous faire?\n");
printf("1 - Tri par selection\n");
printf("2 - Tri a bulle\n");
printf("3 - Tri par insertion\n");
printf("4 - Sortir\n");
Que dois-je modifier pour sortir de ma boucle lorsque je tape "0" ? Et qu'il continue tant que je tape "1"??
Merci d'avance!!
A voir également:
- Help pour un petit programme en C svp
- Programme demarrage windows - Guide
- Mettre en veille un programme - Guide
- Comment imprimer une photo en petit ✓ - Forum Photo numérique
- Petit 2 ✓ - Forum Windows
- Petit point vert snap ✓ - Forum Snapchat
8 réponses
deja normalment on n'utilise pas de for et while ensemble tu pourrais faire plutot une boucle do...while ensuite dans ton while si tu veut tester la valeur de choix2 il faut l'operateur ==pas un simple =
i=2;
do
{
printf("Entrer le %d eme nombre \n",n++);
scanf("%d",&tab[i]);
i++;
printf("Entrer un autre nombre? \n");
printf("1 - oui\n");
printf("0 - non\n");
scanf("%d",&choix2)
}while (choix2!=0 && i<=100);
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci maintenant ça fonctionne^^ mais il ne m'affiche toujours pas le choix entre les 3 méthodes de tri à la sortie de ma boucle :/ Je suis débutant en langage C, c'est mon 2ème programme donc...
do
{
printf("Entrer le %d eme nombre \n",n++);
scanf("%d",&tab[i]);
i++;
printf("Entrer un autre nombre? \n");
printf("1 - oui\n");
printf("0 - non\n");
scanf("%d",&choix2);
}while (choix2==1 && i<=100);
printf("Que voulez-vous faire?\n");
printf("1 - Tri par selection\n");
printf("2 - Tri a bulle\n");
printf("3 - Tri par insertion\n");
printf("4 - Sortir\n\n\n");
scanf("%d",&choix);
switch (choix)
case '1':
printf("Tri par selection");
for (i=1;i<=n-1;i++)
min=i;
for (k=i+1;k=n;k++)
{
if (tab[k]<tab[min])
{
min=k;
}
}
temp=tab[i];
tab[i]=tab[min];
tab[min]=temp;
getchar();
}
{
printf("Entrer le %d eme nombre \n",n++);
scanf("%d",&tab[i]);
i++;
printf("Entrer un autre nombre? \n");
printf("1 - oui\n");
printf("0 - non\n");
scanf("%d",&choix2);
}while (choix2==1 && i<=100);
printf("Que voulez-vous faire?\n");
printf("1 - Tri par selection\n");
printf("2 - Tri a bulle\n");
printf("3 - Tri par insertion\n");
printf("4 - Sortir\n\n\n");
scanf("%d",&choix);
switch (choix)
case '1':
printf("Tri par selection");
for (i=1;i<=n-1;i++)
min=i;
for (k=i+1;k=n;k++)
{
if (tab[k]<tab[min])
{
min=k;
}
}
temp=tab[i];
tab[i]=tab[min];
tab[min]=temp;
getchar();
}
rajoute des accolades
switch (choix){
case '1':{
printf("Tri par selection");
for (i=1;i<=n-1;i++)
min=i;
for (k=i+1;k=n;k++)
{
if (tab[k]<tab[min])
{
min=k;
}
}
temp=tab[i];
tab[i]=tab[min];
tab[min]=temp;
getchar();
}
}
Désolé mais...ca ne fonctionne toujours pas je ne vois pas ce qui cloche, j'ai beau chercher mais... :/
/*Programme de tri de nombres*/
#include <stdio.h>
#include <stdlib.h>
int choix;
int choix2;
int i,n,min,k,nombre;
int tab[100];
int temp;
int permut;
int a,b,c,tmp; /*variables du tri a bulle*/
main()
{
nombre=1;
system("cls");
printf("bienvenue dans le programme de tri de nombres\n\n");
printf("entrer le %d er nombre\n",nombre++);
scanf("%d",&tab[i]);
if (tab[i]<<0)
{
printf("Entrez des nombres positifs!!\n");
nombre=nombre-1;
}
do
{
printf("Entrer le %d eme nombre \n",nombre++);
scanf("%d",&tab[i]);
i++;
printf("Entrer un autre nombre? \n");
printf("1 - oui\n");
printf("0 - non\n");
scanf("%d",&choix2);
}while (choix2==1 && i<=100 && i<<0 );
printf("Que voulez-vous faire?\n");
printf("1 - Tri par selection\n");
printf("2 - Tri a bulle\n");
printf("3 - Tri par insertion\n");
printf("4 - Sortir\n\n\n");
scanf("%d",&choix);
switch (choix)
{
case '1':
{
printf("Tri par selection");
for (i=1;i<=n-1;i++)
{
min=i;
for (k=i+1;k=n;k++)
if (tab[k]<tab[min])
{
min=k;
}
}
temp=tab[i];
tab[i]=tab[min];
tab[min]=temp;
}
}
}
/*Programme de tri de nombres*/
#include <stdio.h>
#include <stdlib.h>
int choix;
int choix2;
int i,n,min,k,nombre;
int tab[100];
int temp;
int permut;
int a,b,c,tmp; /*variables du tri a bulle*/
main()
{
nombre=1;
system("cls");
printf("bienvenue dans le programme de tri de nombres\n\n");
printf("entrer le %d er nombre\n",nombre++);
scanf("%d",&tab[i]);
if (tab[i]<<0)
{
printf("Entrez des nombres positifs!!\n");
nombre=nombre-1;
}
do
{
printf("Entrer le %d eme nombre \n",nombre++);
scanf("%d",&tab[i]);
i++;
printf("Entrer un autre nombre? \n");
printf("1 - oui\n");
printf("0 - non\n");
scanf("%d",&choix2);
}while (choix2==1 && i<=100 && i<<0 );
printf("Que voulez-vous faire?\n");
printf("1 - Tri par selection\n");
printf("2 - Tri a bulle\n");
printf("3 - Tri par insertion\n");
printf("4 - Sortir\n\n\n");
scanf("%d",&choix);
switch (choix)
{
case '1':
{
printf("Tri par selection");
for (i=1;i<=n-1;i++)
{
min=i;
for (k=i+1;k=n;k++)
if (tab[k]<tab[min])
{
min=k;
}
}
temp=tab[i];
tab[i]=tab[min];
tab[min]=temp;
}
}
}