Partage
  • Partager sur Facebook
  • Partager sur Twitter

afficher 3 nombres entiers dans l'ordre croissant.

29 septembre 2010 à 22:05:16

Bonsoir à tous,

dans mon TP, je dois écrire un programme qui permet d'entrer 3 nombres entiers au clavier, puis les afficher à l'écran dans l'ordre croissant.

Voici ce que j'ai fais :

int main(int argc, char* argv[])
{
int a; int b; int c;

printf("Merci de rentrer le premier chiffre");
scanf("%d",&a);
printf("Merci de rentrer le second chiffre");
scanf("%d",&b);
printf("Merci de rentrer le troisieme chiffre");
scanf("%d",&c);

if (a<b && b>c)
{
        printf("Le chiffre le plus grand est B\n");

        if (a>c)
        {
        printf("ordre croissant : %d %d %d",c,b,a);
        }

}

else if (c<a && a>b)
{
        printf("le chiffre le plus grand est A\n");

        if (c>b)
{
        printf("ordre croissant : %d %d %d",b,a,c);
        }
}

else if (b<c && c>a)
{
        printf("Le chiffre le plus grand est C\n");
}

getch();

return 0;

}


Pour afficher le chiffre le plus grand, aucun soucis.

Par contre je n'arrive pas à permettre à classer par ordre croissant les nombres entrés au clavier.

Une petite idée s'il vous plaît ?

Merci.
  • Partager sur Facebook
  • Partager sur Twitter
29 septembre 2010 à 22:23:48

Indice : Il faut utiliser une variable intermédiaire.


do
{
    if(a>b)
    {
        e=a;
        a=b;
        b=e;
    }
    else if(b>c)
    {
        e=b;
        b=c;
        c=e;
    }
}while(!((a<b)&&(a<c)&&(b<c)));

printf("Les nombres sont maintenant dans l'ordre croissant : %d %d %d", a, b, c);


Cependant, tu remarqueras que ce programme peut être amélioré (pour un nombre différent de 3, il faut rajouter des conditions). Il faut utiliser des algorithmes de tris.
L'utilisation d'un tableau de plusieurs entiers est préférable pour le tri et l'affichage de nombreux nombres.

int a,b,c;

De plus, tu peux aussi écrire ta déclaration de variables comme ci-dessus.
  • Partager sur Facebook
  • Partager sur Twitter
23 octobre 2019 à 20:51:55

écrire un programme en JavaScript qui déclare un tableau de 10 nombres et les classes dans l'ordre croissant
  • Partager sur Facebook
  • Partager sur Twitter
23 octobre 2019 à 21:14:35

Bonjour,

- Ligne 14 à 20, tu es bien dans la où B est plus grand. Alors la liste croissante se termine par B, il y a 2 possibilités : A C B ou bien C A B. Il suffit de faire le bon test pour distinguer et choisir parmi ces 2 cas.
- Idem lignes 25 à 30 pour A plus grand, et choix B C A ou C B A.
- Idem lignes 35 pour C plus grand, et choix A B C ou B A C.

Attention : si 2 ou 3 nombres saisis sont égaux ta méthode ne va pas du tout fonctionner.

  • Partager sur Facebook
  • Partager sur Twitter

En recherche d'emploi.

23 octobre 2019 à 21:18:19

Bonjour,

Déterrage

Citation des règles générales du forum :

Avant de poster un message, vérifiez la date du sujet dans lequel vous comptiez intervenir.

Si le dernier message sur le sujet date de plus de deux mois, mieux vaut ne pas répondre.
En effet, le déterrage d'un sujet nuit au bon fonctionnement du forum, et l'informatique pouvant grandement changer en quelques mois il n'est donc que rarement pertinent de déterrer un vieux sujet.

Au lieu de déterrer un sujet il est préférable :

  • soit de contacter directement le membre voulu par messagerie privée en cliquant sur son pseudonyme pour accéder à sa page profil, puis sur le lien "Ecrire un message"
  • soit de créer un nouveau sujet décrivant votre propre contexte
  • ne pas répondre à un déterrage et le signaler à la modération

Je ferme ce sujet. En cas de désaccord, me contacter par MP.

  • Partager sur Facebook
  • Partager sur Twitter