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 :

Programme qui calcule le lendemain


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2018
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : Maroc

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2018
    Messages : 7
    Par défaut Programme qui calcule le lendemain
    voila tous marche mais j'ai un probleme en dernier cas quand j'entre le mois = 2 le programme s'arrete en DEV C++ et affiche un message (Nom : Sans titre 1.jpg
Affichages : 818
Taille : 127,1 Ko

    dans le mois 2 il ya deux cas
    29 jours pour les annee qui sont devisable sur 4 et non devisable sur 100
    sinon 28 jours
    le do while c'est pour assurer que le jour entrer et juste



    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
    #include <stdlib.h>
    #include <stdio.h>
    
    main ()
    {
    	int j,m,a;
    ;
    	printf ("entrer l'annee \n");
    	scanf ("%d",&a);
    	
    	do {printf ("entrer le mois \n");
    	scanf ("%d",&m);}
    	while ((m>12)||(m<1));
    	{
    	
    	
    	if ((m==1)||(m==3)||(m==5)||(m==7)||(m==8)||(m==10)||(m==12)) 
    	{ 
    	             do {printf ("entrer le jour \n");
    	             scanf ("%d",&j);}
    	            while ((j>31)||(j<1));
    	            {
    
    	
    	             if ((j>=1)&&(j<=30)) 
    				 printf ("le lendemain est: %d/%d/%d",j+1,m,a);
    		         else 
    	             if (j==31) 
    				     if (m==12) printf ("le lendemain est 1/1/%d",a+1);
    	             	else printf ("le lendemain est 01/%d/%d",m+1,a); 
    	             
    	           	}  
    	 }          	
    	  
    	
    	 
    	if ((m==4)||(m==6)||(m==9)||(m==11)) 
    	    
        {
    	     do {printf ("entrer le jour \n");
    	     scanf ("%d",&j);}
           	while ((j>30)||(j<1));
    	     {
    		
    	     if ((j>=1)&&(j<=29)) printf ("le lendemain est: %d/%d/%d",j+1,m,a);
    	     else
    	     printf ("le lendemain est: 01/%d/%d",m+1,a);
    	     }
    	     
    	}
    		 
    		 if (m==2)
    	    
    	{
    	   
    	    
    	     
    		if (  ((a%4)==0)  &&  ((a%100)!=0)  )
    		{
    		
    		 do {printf ("entrer le jour \n");
    	    scanf ("%d",j);}
           	while ((j>28)&&(j<1));
           	
           	{
    		  
    	      if (j==29)
    	      printf ("le lendemain est: 01/03/%d",a);
    	      else 
    	      printf ("le lendemain est %d/%d/%d",j+1,m,a); 
    		   }
    		  }
    	    else
    	    {
    		
    	     do {printf ("entrer le jour \n");
    	    scanf ("%d",j);}
    
            
           	while ((j>28)&&(j<1)) ;
           	{
    		   
    	       if (j==28) printf ("le lendemain est: 01/03/%d",a);
    	       else
    	       printf ("le lendemain est %d/%d/%d",j+1,m,a); 
    	      } 
    		   }
    	}        
    	}
    }

  2. #2
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 835
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 835
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par anassthr Voir le message
    voila tous marche mais j'ai un probleme en dernier cas quand j'entre le mois = 2 le programme s'arrete en DEV C++ et affiche un message
    Ben voilà. Donc
    1. apprend à factoriser. La saisie du jour c'est toujours la même chose. C'est juste le critère de validité qui change selon le mois. Donc te suffit de mettre ce critère de fin dans une variable particulière puis l'utiliser pour valider ta saisie du jour que tu ne codes alors qu'une seule fois ce qui t'évite cette erreur stupide.
    2. indente correctement ton code !!! A ton précédent topic j'ai rien dit parce que le truc avait 15 lignes mais là si tu arrives à relire ce pâté tu as beaucoup de chance parce que ça devient illisible. De plus, moi, quand j'indente, voilà ce que ça me donne
      Code c : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      4
      5
      6
      7
      do {
      	printf ("entrer le mois \n");
      	scanf ("%d",&m);
      } while ((m>12)||(m<1));
      {
      	if ((m==1)||(m==3)||(m==5)||(m==7)||(m==8)||(m==10)||(m==12))
      	...
      Elle sert à quoi cette accolade sous le while ???


    Et (parenthèse) main() est de type "int".

    Citation Envoyé par anassthr Voir le message
    dans le mois 2 il ya deux cas
    29 jours pour les annee qui sont devisable sur 4 et non devisable sur 100
    Ou bien pour les années qui sont divisibles par 400... (1900 n'était pas bissextile mais 2000 l'était ; et 2100 ne le sera pas mais 2400 le sera).
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. un programme qui calcule le nombre des mots
    Par komat dans le forum Débuter
    Réponses: 3
    Dernier message: 06/12/2010, 22h46
  2. erreur d'un programme qui calcule la remise
    Par maydarak1 dans le forum C
    Réponses: 3
    Dernier message: 27/01/2010, 18h06
  3. Réponses: 16
    Dernier message: 13/01/2008, 21h28
  4. comment faire un programme qui calcul la somme ?
    Par jahjouna dans le forum C++
    Réponses: 18
    Dernier message: 13/12/2006, 00h33

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