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 :

appeler une méthode dans un message ou sur la meme ligne que se message


Sujet :

C#

  1. #1
    Invité
    Invité(e)
    Par défaut appeler une méthode dans un message ou sur la meme ligne que se message
    Bonjour je suis en train de créer un programme qui consiste a dire l'heure la date le jour et le moment de la journée, seulement je n'arrive pas appeller une méthode au bon endroit. Voici mon code:
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
     
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
     
    namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                if (DateTime.Now.DayOfWeek == DayOfWeek.Saturday || DateTime.Now.DayOfWeek == DayOfWeek.Sunday)
                {
                    // nous sommes le week-end
                    Bonjour();
                    Date();
                    AfficherJourEtHeure();
                    MatinOuApresMidi();
                    AfficherBonWeekEnd();
                }
                else
                {
                    // nous sommes en semaine
     
                    if (DateTime.Now.DayOfWeek == DayOfWeek.Monday && DateTime.Now.Hour < 9)
                    {
                        // nous sommes le lundi matin
                        Bonjour();
                        Date();
                        AfficherJourEtHeure();
                        MatinOuApresMidi();
                        AfficherBonWeekEnd();
                    }
                    else
                    {
                        if (DateTime.Now.Hour >= 9 && DateTime.Now.Hour < 18)
                        {
                            // nous sommes dans la journée
                            Bonjour();
                            Date();
                            AfficherJourEtHeure();
                            MatinOuApresMidi();
                            AfficherBonjour();
                        }
                        else
                        {
                            // nous sommes en soirée
     
                            if (DateTime.Now.DayOfWeek == DayOfWeek.Friday && DateTime.Now.Hour >= 18)
                            {
                                // nous sommes le vendredi soir
                                Bonjour();
                                Date();
                                AfficherJourEtHeure();
                                MatinOuApresMidi();
                                AfficherBonWeekEnd();
                            }
                            else
                            {
                                Bonjour();
                                Date();
                                AfficherJourEtHeure();
                                MatinOuApresMidi();
                                AfficherBonsoir();
                            }
                        }
                    }
                }
            }
     
            static void AfficherBonWeekEnd()
            {
                Console.WriteLine("Bon week-end " + Environment.UserName);
            }
     
            static void AfficherBonjour()
            {
                Console.WriteLine("Bonjour " + Environment.UserName);
            }
     
            static void AfficherBonsoir()
            {
                Console.WriteLine("Aurevoir " + Environment.UserName);  
            }
     
            static void AfficherJourEtHeure()
            {
                Console.WriteLine("Et nous sommes " + DateTime.Now.DayOfWeek);
            }
     
            static void Date()
            {
                Console.WriteLine("Ajourd'hui nous  sommes le " + DateTime.Now);
            }
     
            static void Bonjour()
            {
                Console.WriteLine("Bonjour " + Environment.UserName + ".");
            }
     
            static void MatinOuApresMidi()
            {
                if (DateTime.Now.Hour >= 6 && DateTime.Now.Hour <= 12)
                {
                    Console.WriteLine(" Matin");
                }
                else
                {
                    if (DateTime.Now.Hour > 12 && DateTime.Now.Hour <= 17)
                    {
                        Console.WriteLine(" Après-midi");
                    }
                    else
                    {
                        Console.WriteLine(" Soir");
                    }
                }
            }
        }
    }
    J'aimerai donc appeler la méthode MatinOuApresMidi dans la méthode AfficherJourEtHeure aprés DateTime.now.DayOfWeek ou du moins sur la même ligne.

    Merci d'avance.

  2. #2
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2008
    Messages : 231
    Par défaut
    Je trouve ton code très complexe, personnellement.

    Pourquoi pas décomposer ton code de la manière suivante:
    1. Bonjour() => "Bonjour"
    2. AfficherHeure() "Il est 09:24"
    3. AfficherDate() ", Dimanche 29 Septembre"
    4. AfficherMoment() " et nous sommes le matin"


    Je trouve que tu es entrain de mettre beaucoup de complexité dans ta methode Main qui normalement doit juste appeler les fonctions simples (voir une méthode, une instance ou autre qui déclenche ton horloge)

    En faite dans ce que je suis entrain de te dire, c'est décompose pour mieux régner. Plus tu vas décomposer ton code plus facile sera la possibilité de le réutiliser. Et la justement tu es dans le cas, ou tu peux dire je dois afficher de manière certaine 4 grands types d'information ... Donc j'ai 4 sous parties de code.

    C'est un avis personnel, et il ne tient uniquement à toi d'en prendre note ou pas.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Merci pour tes conseils morgand mais le problème étant que je n'arrive pas a afficher leur sans la date, ni a afficher le jour en français, ni a afficher le moment de la journée sur la même ligne que le jour, j'aimerai qu'on me conseil pour pouvoir obtenir se résultat sur la console windows:

    Bonjour utilisateur
    Aujourd'hui nous sommes le jj/mm/aa et il est hh:mm
    Nous sommes un dimanche,lundi,... matin,après-midi,...
    Au revoir utilisateur !!!

    Voila j'espère que tu pourras m'aider pour l'instant j'essaie de décomposer mon code.

    Merci, et au revoir

  4. #4
    Membre émérite
    Homme Profil pro
    Architecte technique
    Inscrit en
    Septembre 2005
    Messages
    462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 462
    Par défaut
    Pour écrire sur une ligne utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Console.Write("Le texte début ")
    Console.Write("le texte fin."
    Pour le jour en français :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string jour = DateTime.Now.ToString("dddd"),new System.Globalization.CultureInfo("fr-FR"));
    Pour la date sans l'heure :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string date = DateTime.Now.ToShortDateString()
    Pour l'heure sans la date :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string heure = DateTime.Now.ToShortTimeString()
    Tu peut aussi regarder aussi ...ToLong...String().

  5. #5
    Invité
    Invité(e)
    Par défaut
    D'accord . Merci katkiller pour ton aide

Discussions similaires

  1. Réponses: 1
    Dernier message: 17/01/2011, 19h24
  2. appeler une méthode dans une autre méthode
    Par yacin87 dans le forum Débuter avec Java
    Réponses: 1
    Dernier message: 11/04/2010, 13h29
  3. MVVM : Appeler une méthode dans Window à partir d'une vue
    Par tom741 dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 09/02/2010, 12h24
  4. Réponses: 3
    Dernier message: 15/09/2006, 14h01
  5. appeller une méthode dans le nom est dans un String
    Par fxjtarga dans le forum Langage
    Réponses: 2
    Dernier message: 24/02/2006, 16h06

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