Algorithme Zeller
Résolu/Fermé
A voir également:
- Formule de zeller
- Formule excel - Guide
- Formule de politesse mail anglais - Guide
- Le fichier contient le nombre de voyageurs dans 3 gares. dans la cellule b5, saisissez une formule qui calcule le total et se met à jour si on change une valeur du tableau. quel total obtenez-vous ? quelle formule avez-vous saisie ? ✓ - Forum Excel
- Clémence souhaite faire calculer automatiquement les prix de 30 produits dans trois devises. elle a déjà saisi une formule de calcul pour le tarif du premier produit dans la première devise. corrigez sa formule afin que recopiée vers le bas puis vers la droite, elle remplisse correctement tout le tableau. - Forum Excel
- Formule excel si contient texte alors texte ✓ - Forum Excel
2 réponses
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 816
31 oct. 2015 à 19:35
31 oct. 2015 à 19:35
Une petite erreur de code :
}while ((j<=1)&&(j>=31));
Ce n'est pas un && qu'il faut mettre mais un ||.
Je te laisse corriger les autres while.
N'oublie pas d'afficher un '\n' avant la fin de ton programme pour forcer l'affichage.
Sinon au niveau de l'algorithme, il est correct. Juste que la convention est :
Mars=1, ..., Janvier=11, Février=12.
Cdlt,
}while ((j<=1)&&(j>=31));
Ce n'est pas un && qu'il faut mettre mais un ||.
Je te laisse corriger les autres while.
N'oublie pas d'afficher un '\n' avant la fin de ton programme pour forcer l'affichage.
Sinon au niveau de l'algorithme, il est correct. Juste que la convention est :
Mars=1, ..., Janvier=11, Février=12.
Cdlt,
Modifié par Whismeril le 1/11/2015 à 01:13
#include <stdio.h> #include <stdlib.h> int main() { int j,m,a,r,q,jo,f; do { printf("\n donner le nbre de jour svp: \n"); scanf("%d",&j); }while ((j<=1)||(j>=31)); do { printf("\n donner le mois svp: \n"); scanf("%d",&m); }while ((m<=1)||(m>=12)); do { printf("\n donner l'annee svp: \n"); scanf("%d",&a); }while (a<=1900); if(m>3){ m=m-2; } else { m=m+10; a=a-1; r=a%100; q=a/100; } f= ((j + r) - (2*q) + (q/4) + (r/4)) + (((26 * m) - 2) / 10); printf("\n%d",f); jo=f%7; switch (jo){ case 1:printf(" c est lundi"); break; case 2:printf("c est mardi"); break; case 3:printf("c est mercredi"); break; case 4:printf("c est jeudi"); break; case 5:printf("c est vendredi"); break; case 6:printf("c est samedi"); break; case 7:printf("c est dimanche"); break; default :printf("erreur"); } return 0; }encore un probléme j lai affiché deja le f pour e tester il é d trés grand valeur comme 136 :/ et resultat est fausse de mm
1 nov. 2015 à 01:14
Explications disponibles ICI
Merci d'y penser dans tes prochains messages.