Langage c

Fermé
arij - 4 mars 2012 à 17:23
Hxyp Messages postés 401 Date d'inscription vendredi 28 janvier 2011 Statut Membre Dernière intervention 27 avril 2014 - 31 août 2012 à 16:36
Bonjour,
je veus le programme de cette question: : Ecrire un programme qui demande à l'utilisateur de taper 5 entiers et qui affiche
le plus grand. Le programme ne devra utiliser que 2 variables.
aider moi svp
merci d'avance :)


A voir également:

3 réponses

Idéophage Messages postés 43 Date d'inscription mardi 21 août 2012 Statut Membre Dernière intervention 23 novembre 2013 5
Modifié par Idéophage le 24/08/2012 à 01:11
Bonjour,

Généralement, on demande aux débutants de simplement analyser leur propre raisonnement, lorsque qu'il s'agit de problèmes simples comme celui-ci.

Si on te donne 100 nombres (à l'oral), penses-tu que tu vas tous les retenir juste pour trouver le plus grand ?
Analyse ta démarche, écris la sur un bout de papier en détaillant le plus possible et essaye de coder à partir de ça.

edit : depuis le 4 mars ?! J'espère que l'OP a trouvé son bonheur...

Cordialement,
Idéophage
2
Mido1798 Messages postés 21 Date d'inscription samedi 18 août 2012 Statut Membre Dernière intervention 23 août 2012
22 août 2012 à 22:58
Voici le code de ton exo (il faut deux variable et tableau c'est obligé) :

#include <stdio.h>
#include <stdlib.h>


int main(void)
{
    int entier[5] = {0};
    int i = 0, variableTemporaire = 0;

    for (i = 0; i < 5; i++)
    {
        printf("Entre le %de entier : ", i+1);
        scanf("%d", &entier[i]);
    }

    for(i = 0; i < 4; i++) // 4 pour nous mettre dans l'intervalle du tableau
    {
        if(entier[i] > entier[i+1])
        {
            variableTemporaire = entier[i];
            entier[i] = entier[i+1];
            entier[i+1] = variableTemporaire;
        }
    }

    printf("\n\nVoici le plus grand entier des entiers que vous avez saisis : %d", entier[4]);
    return 0;
}

0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 843
Modifié par fiddy le 23/08/2012 à 00:39
Bonjour,

@ arij : merci d'éviter de demander la résolution d'exercice. C'est contraire à la politique CCM.
Dis-nous plutôt où tu bloques, ce que tu as commencé à faire etc.

@Mido1798 : je compte 7 variables (1 pour i, 5 pour le tableau, et 1 pour la variable temporaire) ;-).

Google is your friend
0
Mido1798 Messages postés 21 Date d'inscription samedi 18 août 2012 Statut Membre Dernière intervention 23 août 2012
23 août 2012 à 00:39
Je sais je l'ai signalé au début c'est la seule solution :p
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 843
23 août 2012 à 07:59
Et non, ce n'est pas la seule solution ;-).
Tu peux très bien n'utiliser véritablement que deux variables !
0
Mido1798 Messages postés 21 Date d'inscription samedi 18 août 2012 Statut Membre Dernière intervention 23 août 2012
23 août 2012 à 12:03
Tu penses aux pointeurs ?
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 843
23 août 2012 à 17:36
Non non, pas de pointeurs.
Je vois 2 variables minimum (et 1 de plus si on utilise 1 boucle).
0
Mido1798 Messages postés 21 Date d'inscription samedi 18 août 2012 Statut Membre Dernière intervention 23 août 2012
Modifié par Mido1798 le 23/08/2012 à 18:02
Donc :

int *entier = NULL; 
int nombreEntiers = 5; 
int i = 0; 

entier = malloc(sizeof(int) * nombreEntier); 
if(entier == NULL) 
{ 
         exit(0); 
} 

..... 


free(entiers) ;
0