|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre Expert
![]() ![]() Roland ChastainInscription : décembre 2011 Messages : 689 ![]() |
Bonjour !
Je vous propose un programme qui calcule la date de Pâques pour une année donnée du calendrier grégorien. Un code similaire a déjà été proposé ici mais l'algorithme utilisé n'est pas le même. NDLM : Supprimé à la demande de l'auteur
__________________
L'Art est long et le Temps est court. |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() ![]() Roland ChastainInscription : décembre 2011 Messages : 689 ![]() |
Pour améliorer mon programme, j'ai pensé y inclure une table qui permettrait une vérification automatique du résultat fourni par l'algorithme. Voici ce que j'ai fait à partir de ce document. Ce sont les dates de Pâques de 1900 à 2199.
NDLM : Supprimé à la demande de l'auteur Vos observations ou vos suggestions sont les bienvenues.
__________________
L'Art est long et le Temps est court. |
|
|
00
|
|
|
#3 | ||||||
|
Membre Expert
![]() ![]() Roland ChastainInscription : décembre 2011 Messages : 689 ![]() |
Bonjour !
J'ai remanié mon programme, qui calcule la date de Pâques pour une année donnée du calendrier grégorien. Qu'en pensez-vous ? Code :
Code :
Code :
__________________
L'Art est long et le Temps est court. |
||||||
|
|
00
|
|
|
#4 | |
|
Expert Confirmé Sénior
![]() ![]() Frédéric Ingénieur développement logiciels Inscription : février 2006 Messages : 3 496 ![]() |
Citation:
Tu fais "éditer" et dans la page qui s'affiche tu as une case "supprimer"...
__________________
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche. Tout ce qu'un individu reçoit sans rien faire pour l'obtenir, un autre individu a dû travailler pour le produire sans en tirer profit. Tout Pouvoir ne peut distribuer aux uns que ce qu'il a préalablement confisqué à d'autres car on n'accroît pas les biens en les divisant. Quand la moitié d'un peuple croit qu'il ne sert à rien de faire des efforts car l'autre moitié les fera pour elle, et quand cette dernière moitié se dit qu'il ne sert à rien d'en faire car ils bénéficieront à d'autres, cela s'appelle le déclin et la fin d'une nation. Dr. Adrian Rogers, 1931 |
|
|
|
00
|
|
|
#5 |
|
Membre Expert
![]() ![]() Roland ChastainInscription : décembre 2011 Messages : 689 ![]() |
Merci pour la réponse. Malheureusement je n'ai plus la possibilité d'éditer ces messages.
__________________
L'Art est long et le Temps est court. |
|
|
00
|
|
|
#6 | |
![]() ![]() Chercheur d'emploi Inscription : septembre 2007 Messages : 4 614 ![]() |
Citation:
Merci pour ta participation au site ! |
|
|
|
00
|
|
|
#7 |
|
Membre Expert
![]() ![]() Roland ChastainInscription : décembre 2011 Messages : 689 ![]() |
C'est parfait comme ça. Merci bien !
__________________
L'Art est long et le Temps est court. |
|
|
00
|
|
|
#8 | |||||||||
![]() ![]() R&D en systemes informatiques bas niveau Unix/Linux Inscription : mai 2004 Messages : 7 191 ![]() |
Citation:
Je prends le code "au fur et a mesure" : #include "table.c" Pas fan de l'include du .c... Surtout que ce "code" qui n'en est pas pourrait tout a fait être dans un fichier d'include. Mais bon, comme c'est juste pour la vérification, on peut passer int Resultat(int a){ Pourquoi mettre une majuscule au nom de la fonction ? Je sais que ce n'est pas faux, mais en général on ne le fait pas (la norme définit d'ailleurs que E suivi d'une lettre majuscule ou d'un chiffre peut être utilise comme macro par l’implémentation pour les erreurs (norme C99, 7.5 et 7.26.3) int G, C, C4, E, H, K, P, Q, I, B, J1, J2, R; Je vais être méchant, mais tu n'as pas trouvé plus illisible ? Je pense que A1, A2, ... serait mieux... Ou pas. Par contre, de vrais noms de variable, en minuscules, ça serait vraiment bien. Code :
Code :
Code :
Code :
Désolé, c'est peut-être un peu violent comme commentaire, mais trouve que ce code est vraiment "limite". |
|||||||||
|
|
40
|
|
|
#9 |
|
Membre Expert
![]() ![]() Roland ChastainInscription : décembre 2011 Messages : 689 ![]() |
Merci pour ces observations, dont je prends bonne note.
Pour le fichier inclus, je n'ai pas compris quelle est la solution que tu préconises. Autrement, pour remplacer ces noms de variables Code :
int G, C, C4, E, H, K, P, Q, I, B, J1, J2, R;
__________________
L'Art est long et le Temps est court. |
|
|
10
|
|
|
#10 | |
![]() ![]() R&D en systemes informatiques bas niveau Unix/Linux Inscription : mai 2004 Messages : 7 191 ![]() |
Citation:
Un fichier .c est un fichier qui contient du code, qui doit etre compilable tout seul, obtenant en sortie (au moins) un fichier objet (.o), qui pourra etre linke plus tard si besoin. Dans ton cas, le seul code que tu mets est un tableau, pas de code. Donc tu peux tout a fait faire de ce fichier un fichier d'en-tete (.h), et dans ce cas tu pourras l'inclure. C'est ce que je ferai (ou ce que je recommande, mais qui suis-je pour recommander |
|
|
|
00
|
|
|
#11 |
|
Expert Confirmé
![]() Pierre Ingénieur développement logiciels Inscription : juin 2007 Messages : 1 214 ![]() |
Il y a le problème du extern.
En fait, c'est bien un .c, parce que le tableau ne saurait être défini plusieurs fois. Par contre, il manque un en-tête contenant un extern const int table[300];
__________________
Mes principes de bases du codeur qui veut pouvoir dormir:
|
|
10
|
|
|
#12 | |
|
Expert Confirmé Sénior
![]() ![]() Ingénieur systèmes embarqués Inscription : juin 2009 Messages : 1 711 ![]() |
Citation:
EDIT : j'ai mis très longtemps à poster donc leternel m'a grillé ^^
__________________
Si Code::Blocks vous dit undefined reference to 'socket@12', cela signifie que vous avez un problème d'édition des liens. Allez dans Projects / Build Options / Linker Settings / Add et renseigner ici les .a qui vont bien. Exemple pour les sockets : C:\Program Files\CodeBlocks\MinGW\lib\libws2_32.a Pour les adeptes du langage SMS, allez ici et ramenez la traduction française ^^ Pour vos problèmes d'embarqué, utilisez le forum dédié ! |
|
|
00
|
|
|
#13 |
|
Membre Expert
![]() ![]() Roland ChastainInscription : décembre 2011 Messages : 689 ![]() |
Merci pour vos conseils. J'ai édité mon message et fait une partie des modifications suggérées.
__________________
L'Art est long et le Temps est court. |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com