IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Regrouper des valeurs de int


Sujet :

C#

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2018
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Février 2018
    Messages : 11
    Points : 10
    Points
    10
    Par défaut Regrouper des valeurs de int
    Bonjour,

    Je suis débutant et étudiant en programmation c#
    J'ai pour devoir de faire le programme suivant demander la saisie de 10 nombres puis d'afficher le nombre le plus grand.

    Je précise que j'en suis qu'au 5ème cours, et dans cette optique j'ai besoin d'aide de ce niveau là, je sais qu'il existe des solutions rapide mais je n'ai pas encore appris ces choses là, ça viendra pour plus tard

    En gros dans mon programme l'idée que j'ai eu c'est:
    - La saisie des 10 nombres (acquis)
    - Regrouper ces nombres (numOne à numTen) sous une seule variable par exemple "group"
    - Grace à une boucle for qui commence par la valeur maximal de int et qui va dans l'ordre décroissant des qu'elle tombe (et du coup égale à la valeur la plus haute du regroupement) d'un des 10 nombres elle affiche ce même nombre.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
                Console.WriteLine("\n Please enter 10 numbers : ");
                int numOne = int.Parse(Console.ReadLine());
                int numTwo = int.Parse(Console.ReadLine());
                int numThree = int.Parse(Console.ReadLine());
                int numFour = int.Parse(Console.ReadLine());
                int numFive = int.Parse(Console.ReadLine());
                int numSix = int.Parse(Console.ReadLine());
                int numSeven = int.Parse(Console.ReadLine());
                int numEight = int.Parse(Console.ReadLine());
                int numNine = int.Parse(Console.ReadLine());
                int numTen = int.Parse(Console.ReadLine());
     
     
                for (int i = int.MaxValue; i == (numOne); i--)
                {
                    Console.WriteLine($"The largest number is {i}");
                }
    J'ai eu l'idée de faire un tableau int[] mais c'est une galère car ça rentre pas dans une boucle for et j'ai pas encore vraiment apprit l'utilisation d'un tableau

    Bref, si vous avez une idée je prends .

    Merci à tous !

  2. #2
    Expert confirmé Avatar de ed73170
    Homme Profil pro
    Développeur indépendant
    Inscrit en
    Mai 2009
    Messages
    765
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur indépendant

    Informations forums :
    Inscription : Mai 2009
    Messages : 765
    Points : 5 522
    Points
    5 522
    Par défaut
    Bonjour,

    Il y a bien plus simple, il suffit de calculer le maximum au fur et à mesure de la saisie, quelque chose de ce genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    int number, max;
     
    for(int i = 0;i<10;i++)
    {
       Console.WriteLine("\n Please enter number " + (i+1) + " : ");
     
       number = int.Parse(Console.ReadLine());
     
       if(i == 0) max = number;
       else max = Math.Max(number, max);
    }
     
    Console.WriteLine("The largest number is " + max);

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2018
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Février 2018
    Messages : 11
    Points : 10
    Points
    10
    Par défaut
    Meric beaucoup.
    Du coup j'ai reussi en faisant comme ca


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
                int largest, number;
     
                Console.WriteLine("please enter 10 numbers");
                largest = int.Parse(Console.ReadLine());
                for (int i = 1; i < 10; i++)
                {
                    number = int.Parse(Console.ReadLine());
     
                    if (largest < number) 
                    {
                        largest = number;
                    }
                }
     
                Console.WriteLine("The largest number is {0} ", largest);

  4. #4
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Bonjour,

    Il faudrait prévoir si le nombre saisi est égal à un précédent nombre saisi......!!

  5. #5
    Membre expert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2013
    Messages
    1 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 563
    Points : 3 404
    Points
    3 404
    Par défaut
    Citation Envoyé par wallace1 Voir le message
    Il faudrait prévoir si le nombre saisi est égal à un précédent nombre saisi......!!
    Hum si 10 est égale à 10, 10 reste le nombre le plus grand. Peu importe si c'est le premier ou le dernier saisit

    Pour ma part, pour bien faire les choses, j'aurais fais une méthode "GetMax", par exemple, prenant en paramètres une liste d'entiers et retournant l'entier le plus grand. Ensuite, une boucle for..each pour récupérer la plus grande valeur.

  6. #6
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Citation Envoyé par ZenZiTone Voir le message
    Hum si 10 est égale à 10, 10 reste le nombre le plus grand. Peu importe si c'est le premier ou le dernier saisit

    Pour ma part, pour bien faire les choses, j'aurais fais une méthode "GetMax", par exemple, prenant en paramètres une liste d'entiers et retournant l'entier le plus grand. Ensuite, une boucle for..each pour récupérer la plus grande valeur.
    Ouais bah ça m'apprendra à lire en diagonal...j'avais mal lu le pb initial

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2009
    Messages : 15
    Points : 21
    Points
    21
    Par défaut Une méthode est inutile.
    Citation Envoyé par ZenZiTone Voir le message
    Pour ma part, pour bien faire les choses, j'aurais fais une méthode "GetMax", par exemple, prenant en paramètres une liste d'entiers et retournant l'entier le plus grand. Ensuite, une boucle for..each pour récupérer la plus grande valeur.
    Pourquoi faire compliqué (un méthode "GetMax") ?

  8. #8
    Membre expert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2013
    Messages
    1 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 563
    Points : 3 404
    Points
    3 404
    Par défaut
    Citation Envoyé par MicBru Voir le message
    Pourquoi faire compliqué (un méthode "GetMax") ?
    Ce n'est pas faire plus compliqué.. Le traitement est juste séparé de la saisie, ce qui te permet de le réutiliser plus facilement (pour des tests si on ne veut pas s'embêter à saisir les valeurs à la main, par exemple).

Discussions similaires

  1. regrouper des valeurs dans un tableau
    Par gg9595 dans le forum Deski
    Réponses: 5
    Dernier message: 03/07/2007, 15h15
  2. Regrouper des valeurs de différents champs
    Par Guranga dans le forum Access
    Réponses: 1
    Dernier message: 13/06/2006, 21h54
  3. Regrouper des valeurs (le sujet ce sera plus clair :-( )
    Par seb.49 dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 06/10/2005, 18h33
  4. [CSS] regrouper des valeurs communes
    Par nixonne dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 28/08/2005, 03h49
  5. Réponses: 3
    Dernier message: 11/07/2005, 15h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo