Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 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 | | Calendrier |
|
|
| LEVER ET COUCHER DU SOLEIL | |
| | Auteur | Message |
---|
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: LEVER ET COUCHER DU SOLEIL Mar 22 Jan 2013 - 4:26 | |
| Salut tout le monde. Je me suis inspiré du calendrier de JL35 que je salue (j’ai même copié plusieurs morceaux de son code) pour créer mon programme. Il s’agit de calculer les heures des levers et des couchers du soleil pour n’importe quelle ville dans le monde et pour une année donnée. Tel quel, le programme affiche les heures du lever et du coucher pour la ville de PARIS durant l’année 2013. Pour une autre ville, il suffit de modifier les données de la ligne 119 en précisant la ville et ses coordonnées (latitude et longitude). Il est à signaler que pour une longitude à l’OUEST la valeur doit être NEGATIVE, tandis que pour une longitude à l’EST, la valeur est positive. Quelques villes Françaises sont données dans le code à titre d’exemple. La précision des calculs est acceptable : elle est de une ou deux minutes. Normalement les heures sont calculées en GMT. Mais comme la France et la Tunisie sont en GMT + 1, les calculs sont donc faits en GMT + 1 Vous pouvez modifier ce comportement en modifiant les lignes 168 et 178 - Code:
-
' ****************************************************************************** ' Lever_Coucher_soleil.bas ' LEVER ET COUCHER DU SOLEIL ' PAR PAPYDALL ' Calcul du lever et coucher du soleil n'importe quand et n'importe où. ' Il suffit de modifier la ville et ses coordonnées dans la SUB SunRise_SunSet(month,day) ' La précision des calculs est de une à deux minutes, trois au maximum. ' ça reste toujours acceptable. ' ****************************************************************************** Go() end ' ****************************************************************************** SUB Go() Init() : Grille() END_SUB ' ****************************************************************************** SUB Init() LABEL NeSeLevePas,NeSeCouchePas,Change_Date,Quit DIM wg%, hg%, wc%, hr%, wf%, rf%, i%, j%, ms$(12), js$(7), lm%(12), a$, b$, c%, r% DIM Annee, Mois, Jour DIM lev$,couch$ FOR i% = 1 TO 12: READ ms$(i%) : NEXT i% FOR i% = 0 TO 6: READ js$(i%) : NEXT i% FOR i% = 1 TO 12: READ lm%(i%) : NEXT i% wc% = 115 : wf% = 22 : hr% = 25 : rf% = 20 wg% = wf% + 12*wc%+35 : hg% = rf% + 31*hr%+2*hr%-15 END_SUB ' ****************************************************************************** SUB Grille() GRID 1: WIDTH 1,wg%: HEIGHT 1,hg% WIDTH 0,WIDTH(1)+16: HEIGHT 0,HEIGHT(1)+60: BORDER_SMALL 0: COLOR 0,128,255,255 GRID_COLUMN 1,13 : GRID_ROW 1,32 GRID_COLUMN_WIDTH 1,wc%: GRID_ONE_COLUMN_WIDTH 1,1,wf% GRID_ROW_HEIGHT 1,hr%: GRID_ONE_ROW_HEIGHT 1,1,rf% GRID_FIXED_COLOR 1,255,255,190 FONT_NAME 1,"Consolas": FONT_SIZE 1,11 BUTTON 2: TOP 2,HEIGHT(0)-60: LEFT 2,WIDTH(1)/2-150: WIDTH 2,140: HEIGHT 2,20 CAPTION 2,"<- Année précédente": FONT_BOLD 2 BUTTON 3: TOP 3,TOP(2): LEFT 3,LEFT(2)+WIDTH(2)+10: WIDTH 3,140: HEIGHT 3,HEIGHT(2) CAPTION 3,"Année suivante ->" : FONT_BOLD 3 ON_CLICK 2, Change_Date: ON_CLICK 3, Change_Date BUTTON 4 : TOP 4,TOP(3): LEFT 4,LEFT(3)+WIDTH(3)+10: WIDTH 4,140: HEIGHT 4,HEIGHT(3) CAPTION 4," Quitter " : FONT_BOLD 4 : ON_CLICK 4,Quit FOR i% = 1 TO 31 GRID_WRITE 1,i%+1,1,STR$(i%) NEXT i% FOR i% = 1 TO 12 a$ = ms$(i%): j% = (10-LEN(a$))/2 IF LEN(a$)<9 THEN a$ = STRING$(j%," ") + a$ GRID_WRITE 1,1,i%+1,a$ NEXT i% Annee = VAL(RIGHT$(DATE$,4)) Calcul() END_SUB ' ****************************************************************************** SUB Calcul() Bisex(Annee): IF rs_bi% = 1 THEN lm%(2) = 29 inactive 2 : inactive 3 FOR Mois = 1 TO 12 c% = Mois+1 FOR Jour = 1 TO lm%(Mois) Jmq(Annee,Mois,Jour) SunRise_SunSet(mois,jour) GRID_WRITE 1,Jour+1,c%,lev$ + " / "+ couch$ NEXT Jour NEXT Mois if rs_bi% = 0 then grid_write 1,30,3,"" active 2 : active 3 END_SUB ' ****************************************************************************** Change_Date: IF CLICKED(2) = 1 then Annee = Annee - 1 : ELSE : Annee = Annee + 1 Calcul() RETURN ' ****************************************************************************** SUB Bisex(Annee) IF VARIABLE("rs_bi%") = 0 THEN DIM rs_bi% rs_bi% = 0 IF (FRAC(Annee/4)=0 AND FRAC(Annee/100)>0) OR FRAC(Annee/400)=0 THEN rs_bi% = 1 END_SUB ' ------------------------------------------------------------------------------ Quit: TERMINATE RETURN ' ------------------------------------------------------------------------------ SUB Jmq(Annee,Mois,Jour) DIM_LOCAL Jm_Q, Jm_m IF VARIABLE("rs_qa%") = 0 THEN DIM rs_qa% Jm_Q = 0 IF Mois > 1 FOR Jm_m = 1 TO Mois - 1 SELECT Jm_m CASE 1: Jm_Q = Jm_Q+31 CASE 2: Jm_Q = Jm_Q+28 IF (FRAC(Annee/4)=0 AND FRAC(Annee/100)>0) OR FRAC(Annee/400)=0 THEN Jm_Q=Jm_Q+1 CASE 3: Jm_Q = Jm_Q+31 CASE 4: Jm_Q = Jm_Q+30 CASE 5: Jm_Q = Jm_Q+31 CASE 6: Jm_Q = Jm_Q+30 CASE 7: Jm_Q = Jm_Q+31 CASE 8: Jm_Q = Jm_Q+31 CASE 9: Jm_Q = Jm_Q+30 CASE 10: Jm_Q = Jm_Q+31 CASE 11: Jm_Q = Jm_Q+30 END_SELECT NEXT Jm_m END_IF rs_qa% = Jm_Q+Jour END_SUB ' ****************************************************************************** ' * Calcul du lever et coucher du soleil n'importe quand et n'importe où. ' * Il suffit de modifier la ville et ses coordonnées SUB SunRise_SunSet(month,day) dim_local k,jm,jl,e,ob,pi dim_local tex$ dim_local dr,hr,ht,La,Lo,mois,jour,h,j,m,L,s,x,y,z,R,rx,ry,ET,DC,cs,ah,pm,hs,fh dim_local CalculSol$,ville$,hs$,pm$ ' Fuseau horaire et coordonnées géographiques k = 0.0172024 : jm = 308.67 : jl = 21.55 : e = 0.0167 : ob = 0.4091 PI= 3.1415926536 mois = month : jour = day ' La = Latitude ( positive à l'hémisphère Nord et négative à l'hémisphère Sud) ' Lo = Longitude ( positive à l'EST et négative à l'OUEST ) ' ' Ville$ = "MOKNINE" : La = 35.550 : Lo = 10.833 : ' C'est ma ville de Tunisie ' Ville$ = "Stockholm" : La = 59.333 : Lo = 18.083 ' Ville$ = "xxxxx" : La = 88.000 : Lo = 0.000 ville$ = "PARIS" : La = 48.833 : Lo = 2.333 ' ------------------------------------------------------------------------------ ' Voici les coordonnées des quelques villes Françaises ' ville$ = "TOULOUSE" : La = 43.617 : Lo = 1.450 ' Ville$ = "STASBOURG" : La = 48.583 : Lo = 7.750 ' Ville$ = "MARSEILLE" : La = 43.300 : Lo = 5.367 ' Ville$ = "GRENOBLE" : La = 45.183 : Lo = 5.717 ' Ville$ = "CHERBOURG" : La = 49.633 : Lo = 0-1.617 ' Ville$ = "BORDEAUX" : La = 44.833 : Lo = 0-0.567 ' Ville$ = "BREST" : La = 48.383 : Lo = 0-4.500 ' Ville$ = "LILLE" : La = 50.650 : Lo = 3.083 ' Ville$ = "CLERMONT-FERRAND" :La = 45.783 : Lo = 3.083 ' ------------------------------------------------------------------------------ tex$ = "LEVER ET COUCHER DU SOLEIL PAR PAYDALL - VILLE : " + Ville$ tex$ = tex$ + " - ANNÉE " + STR$(Annee) + " -" CAPTION 0,tex$ ' Hauteur du soleil au lever et au coucher dr = PI/ 180 : hr = PI/ 12 : ht = (-40 / 60) : ht = ht * dr La = La * dr : Lo = 0-Lo * dr ' Date IF (mois < 3) then mois = mois + 12 ' Heure TU du milieu de la journée h = 12 + (Lo / hr) ' Nombre de jours écoulés depuis le 1 Mars O h TU J = int(30.61 * (mois + 1)) + jour + (h / 24) - 123 ' Anomalie et longitude moyenne M = k * (J - jm) : L = k * (J - jl) ' Longitude vraie S =L + 2 * e * Sin(M) + 1.25 * e * e * Sin(2 * M) ' Coordonnées rectangulaires du soleil dans le repère équatorial X = Cos(S) : Y = Cos(ob) * Sin(S) : Z = Sin(ob) * Sin(S) ' Equation du temps et déclinaison R = L : rx = Cos(R) * X + Sin(R) * Y : ry = 0-Sin(R) * X + Cos(R) * Y X = rx : Y = ry : ET = atn(Y / X) : DC = atn(Z / Sqr(1 - Z * Z)) ' Angle horaire au lever et au coucher cs = (Sin(ht) - Sin(La) * Sin(DC)) / Cos(La) / Cos(DC) IF (cs > 1) then CalculSol$ = "Ne se lève pas" : goto NeSeLevePas IF (cs < -1) then CalculSol$ = "Ne se couche pas" : goto NeSeCouchePas IF (cs = 0) then ah = PI / 2 : ELSE : ah = atn(Sqr(1 - cs * cs) / cs) IF (cs < 0) then ah = ah + PI ' Lever du soleil Pm = h + fh + (ET - ah) / hr IF (Pm < 0) then Pm = Pm + 24 IF (Pm > 24) then Pm = Pm - 24 hs = int(Pm) : Pm = int(60 * (Pm - hs)) : hs = hs + 1 : ' GMT +1 à modifier éventuellement hs$ = str$(hs) : pm$ = str$(pm)
IF len(str$(hs)) < 2 then hs$ = "0" + str$(hs) IF len(str$(Pm)) < 2 then Pm$ = "0" + str$(Pm) NeSeLevePas: IF CalculSol$ = "" then lev$ = hs$ + ":" +Pm$ :ELSE : lev$ = "-----" ' Coucher du soleil Pm = h + fh + (ET + ah) /hr IF Pm > 24 then Pm = Pm - 24 IF Pm < 0 then Pm = Pm + 24 hs = int(Pm) : Pm = int(60 * (Pm - hs)) : hs = hs + 1 : ' GMT +1 à modifier éventuellement hs$ = str$(hs) : pm$ = str$(pm)
IF len(str$(hs)) < 2 then hs$ = "0" + str$(hs) IF len(str$(Pm)) < 2 then Pm$ = "0" + str$(Pm) NeSeCouchePas: IF CalculSol$ = "" then couch$ = hs$ + ":" + Pm$ : ELSE : couch$ = "-----" display
END_SUB ' ****************************************************************************** DATA "JANVIER","FÉVRIER","MARS","AVRIL","MAI","JUIN" DATA "JUILLET","AOÛT","SEPTEMBRE","OCTOBRE","NOVEMBRE","DÉCEMBRE" DATA "Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi" DATA 31,28,31,30,31,30,31,31,30,31,30,31 ' ******************************************************************************
EDITVoici une liste des villes que vous pouvez incorporer dans le programme. Les latitudes et longitudes doivent être données en décimal. Exemple pour Abbeville 50.100 50° 5'N 1.850 1° 51'E entrez respectivement 50.100 et 1.850 - Code:
-
AUTRES VILLES DE FRANCE Latitude Longitude ' ****************************************************************************** Abbeville 50.100 50° 5'N 1.850 1° 51'E Agen 44.200 44° 12'N 0.633 0° 38'E Ajaccio 41.917 41° 55'N 8.717 8° 43'E Albi 43.933 43° 56'N 2.144 2° 08'E Alençon 48.417 48° 25'N 0.083 0° 05'E Amiens 49.900 49° 54'N 2.300 2° 17'E Angers 47.483 47° 28'N -0.533 0° 31'W Angouleme 45.667 45° 40'N 0.167 0° 10'E Annecy 45.900 45° 54'N 6.117 6° 07'E Arras 50.283 50° 17'N 2.767 2° 46'E Auch 43.500 43° 30'N 0.600 0° 36'E Aurillac 44.933 44° 55'N 2.433 2° 25'E Auxerre 47.800 47° 48'N 3.583 3° 35'E Avallon 47.500 47° 30'N 3.900 3° 54'E Avignon 43.933 43° 55'N 4.800 4° 48'E Bar-le-Duc 48.767 48° 46'N 5.167 5° 10'E Bastia 42.683 42° 41'N 9.433 9° 26'E Bayonne 43.500 43° 30'N -1.467 1° 28'W Beauvais 49.433 49° 26'N 2.083 2° 05'E Belfort 47.633 47° 38'N 6.867 6° 52'E Besancon 47.250 47° 15'N 5.983 5° 58'E Blois 47.600 47° 36'N 1.333 1° 20'E Bobigny 48.917 48° 55'N 2.450 2° 27'E Bordeaux 44.833 44° 49'N -0.567 0° 34'W Bourg 46.200 46° 12'N 5.217 5° 13'E Bourges 47.083 47° 05'N 2.383 2° 23'E Brest 48.383 48° 22'N -4.500 4° 30'W Caen 49.183 49° 10'N -0.367 0° 22'W Cahors 44.467 44° 28'N 0.433 0° 26'E Cannes 43.550 43° 32'N 7.000 7° 0'E Carcassonne 43.217 43° 13'N 2.350 2° 21'E Chalons-S-Marne 48.967 48° 58'N 4.367 4° 22'E Chambéry 45.567 45° 34'N 5.917 5° 55'E Chartres 48.450 48° 27'N 1.500 1° 30'E Chateauroux 46.817 46° 49'N 1.683 1° 41'E Chaumont 48.117 48° 07'N 5.133 5° 08'E Cherbourg 49.633 49° 37'N -1.617 1° 37'W Clermont-Ferrand 45.783 45° 47'N 3.083 3° 05'E Colmar 48.083 48° 05'N 7.350 7° 21'E Créteil 48.783 48° 47'N 2.467 2° 28'E Dieppe 49.917 49° 55'N 1.083 1° 4'E Digne 44.083 44° 05'N 6.233 6° 14'E Dijon 47.333 47° 19'N 5.033 5° 1'E Dunkerque 51.033 51° 1'N 2.383 2° 22'E Epinal 48.167 48° 10'N 6.467 6° 28'E Evreux 49.050 49° 03'N 1.183 1° 11'E Evry 48.633 48° 38'N 2.567 2° 34'E Foix 42.950 42° 57'N 1.583 1° 35'E Gap 44.550 44° 33'N 6.083 6° 05'E Grenoble 45.183 45° 10'N 5.717 5° 43'E Gueret 46.167 46° 10'N 1.866 1° 52'E La Rochelle 46.167 46° 10'N -1.167 1° 10'W Laon 49.567 49° 34'N 3.617 3° 37'E La-Roche-sur-Yon 46.633 46° 38'N -1.500 1° 30'W Laval 48.067 48° 4'N -0.750 0° 45'W Le Havre 49.500 49° 30'N 0.100 0° 6'E Le Mans 48.000 48° 0'N 0.200 0° 12'E Le Puy 45.050 45° 03'N 3.883 3° 53'E Lens 50.433 50° 25'N 2.833 2° 49'E Lille 50.650 50° 39'N 3.083 3° 4'E Limoges 45.833 45° 49'N 1.250 1° 15'E Lons-le-Saunier 46.683 46° 41'N 5.550 5° 33'E Lorient 47.750 47° 45'N -3.350 3° 20'W Lyon 45.767 45° 46'N 4.833 4° 50'E Macon 45.300 46° 18'N 4.833 4° 50'E Marseille 43.300 43° 17'N 5.367 5° 22'E Melun 48.533 48° 32'N 2.557 2° 40'E Mende 44.533 44° 32'N 3.500 3° 30'E Metz 49.117 49° 7'N 6.183 6° 10'E Mezières 49.767 49° 46'N 4.733 4° 44'E Montauban 44.017 44° 01'N 1.333 1° 20'E Mont-de-Marsan 43.900 43° 54'N -0.500 0° 30'W Montlucon 46.333 46° 19'N 2.600 2° 35'E Montpellier 43.600 43° 35'N 3.883 3° 52'E Moulins 46.567 46° 34'N 3.333 3° 20'E Mulhouse 47.750 47° 45'N 7.350 7° 20'E Nancy 48.700 48° 42'N 6.200 6° 11'E Nanterre 48.883 48° 53'N 2.217 2° 13'E Nantes 47.233 47° 13'N -1.583 1° 34'W Nevers 47.000 47° 00'N 3.150 3° 09'E Nice 43.700 43° 42'N 7.267 7° 16'E Nimes 43.500 43° 50'N 4.350 4° 21'E Niort 46.317 46° 19'N -0.450 0° 27'W Observatoire SIRENE 44.000 44° 0'N 5.333 5° 19'E Orleans 47.900 47° 54'N 1.900 1° 53'E Paris 48.833 48° 49'N 2.333 2° 19'E Pau 43.300 43° 17'N -0.367 0° 22'W Perigueux 45.200 45° 12'N 0.733 0° 44'E Perpignan 42.700 42° 42'N 2.900 2° 54'E Poitiers 46.583 46° 34'N 0.333 0° 19'E Pontoise 49.050 49° 03'N 2.083 2° 05'E Privas 44.733 44° 44'N 4.600 4° 36'E Quimper 48.000 48° 00'N -4.100 4° 06'W Reims 49.250 49° 15'N 4.033 4° 1'E Rennes 48.100 48° 5'N -1.667 1° 40'W Roanne 46.033 46° 1'N 4.083 4° 4'E Rodez 44.350 44° 20'N 2.567 2° 34'E Rouen 49.433 49° 25'N 1.083 1° 4'E St Nazaire 47.283 47° 16'N -2.200 2° 12'W St-Brieuc 48.517 48° 31'N -2.750 2° 45'W St-Etienne 45.433 45° 25'N 4.383 4° 22'E St-Lo 49.117 49° 07'N -1.083 1° 05'W Strasbourg 48.583 48° 35'N 7.750 7° 45'E Tarbes 43.233 43° 14'N 0.083 0° 05'E Toulon 43.117 43° 7'N 5.917 5° 55'E Toulouse 43.617 43° 37'N 1.450 1° 27'E Tours 47.383 47° 22'N 0.700 0° 41'E Troyes 48.300 48° 17'N 4.083 4° 4'E Tulle 45.267 45° 16'N 1.767 1° 46'E Valence 44.933 44° 55'N 4.900 4° 54'E Vannes 47.667 47° 40'N -2.733 2° 44'W Versailles 48.800 48° 48'N 2.133 2° 08'E Vesoul 47.633 47° 38'N 6.150 6° 09'E Vierzon 47.233 47° 13'N 2.050 2° 2'E ' ******************************************************************************
Dernière édition par papydall le Mar 22 Jan 2013 - 15:50, édité 1 fois (Raison : Prise en charge des villes où le soleil ne se lève ou ne se couche pas) | |
| | | bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: LEVER ET COUCHER DU SOLEIL Mar 22 Jan 2013 - 7:36 | |
| Bonjour Papydall, Alors là, c'est vraiment le top! Ya plus qu'à mettre un combo avec une sélection des villes. et un bouton inverseur calendrier-agenda de JL35 et lever-coucher soleil de Papydall! Où peut-on trouver toutes les coordonnées des villes? J'espère que ton programme fonctionne pour toutes les villes du monde en n'importe quel point du globe. A+ | |
| | | Invité Invité
| Sujet: Re: LEVER ET COUCHER DU SOLEIL Mar 22 Jan 2013 - 12:07 | |
| Bonjour, Bien Papydell. J'ai juste modifié fonte_size à 9, pour voir l'heure avec les mn du coucher. Les autres paramètres sont en rapport avec l'écran, donc j'en parle pas. Mais Et la lune? Penses-tu aux rêveurs qui aiment la regarder? |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: LEVER ET COUCHER DU SOLEIL Mar 22 Jan 2013 - 12:39 | |
| Bien joué Très bonne idée. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mar 22 Jan 2013 - 13:10 | |
| Tiens voilà ma petite ville Carhaix Plouguer (Bretagne-Finistère) La 48.276 (48° 16'33" Nord) Lo -3.572 (03°34'28" Ouest) Bon vous saurez pour le prochain festival des "Vieilles Charrues" PS : Tiens tu compte de la connerie humaine ? ( décalages heure d'été / heure d'hiver ) PS : Même remarque que pour le caalendrier, la hauteur du Form 0 est trop importante, le bas est masqué par la bar windows | |
| | | bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: LEVER ET COUCHER DU SOLEIL Mar 22 Jan 2013 - 13:53 | |
| Bonjour Ygeronimi, Moi aussi j'ai trouvé que la hauteur du form 0 était trop importante. Comme je suis en résolution 1600x900, j'ai juste modifié hr%=25 en hr%=24 à la ligne 24, et tout est rentré dans l'ordre. Maintenant si ta résolution en hauteur est inférieure à 900, alors là, il faut que tu changes tous les paramêtres (font, taille font, hauteur cellules, etc...) A+ | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mar 22 Jan 2013 - 13:57 | |
| @ Bignono, C' est ce que j'ai fait, je le signalais juste pour la forme. On a tous tendance à oublier parfois de standardiser la taille des interfaces. | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: LEVER ET COUCHER DU SOLEIL Mar 22 Jan 2013 - 14:42 | |
| Bon, je vais apporter mon grain de sel ! Papydall, quand je passe d'une année sur l'autre, il semble qu'il y ait bien réaffichage, mais exactement des mêmes valeurs ? Admettons. Mais, beaucoup plus curieux, quand je suis sur une année bissextile, des valeurs s'affichent bien pour le 29 février, mais intermédiaires entre les deux autres, je m'explique: - Code:
-
2011 2012 28/2 7:35/18:30 7:35/18:30 29/2 7:34/18:32 1/3 7:33/18:32 7:33/18:32
Il y a en gros à cette époque de l'année 2 minutes d'écart d'un jour à l'autre, et le fait qu'il y ait un jour de plus en février ne change rien ??? bizarre... le soleil en tient compte et se dépêche de se lever un peu plus tôt que d'habitude... | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: LEVER ET COUCHER DU SOLEIL Mar 22 Jan 2013 - 16:03 | |
| Salut tout le monde. @Tous Merci pour vos réactions. J’ai édité mon programme Lever_Coucher_Soleil.bas pour prendre en charge les villes où le soleil ne se lève pas et / ou ne se couche pas. Dans ce cas l’affichage des heures est remplacé par ----- @bignono et les autres Vous trouvez à l’adresse suivante les latitudes et les longitudes des principales villes du monde classées par continent / pays http://pgj.pagesperso-orange.fr/latlong.htm#Latitude et Longitude @Cosmos Je vais voir si j’arriverais à faire le lever/coucher de la lune. @Jl35 Les calculs ne tiennent pas compte de l’année : pour un endroit donné, il n’y a pas de changement d’heures d’une année à l’autre. Pour le 29 Février j’avais remarqué ce que tus as remarqué. C’est peut être dû à des arrondis lors des calculs. @Ygeronimi Le programme ne tiens pas compte de l’heure été / heure hiver. Le mieux est de laisser les calculs en temps universel GMT. Et chacun saura comment interpréter les heures selon son fuseau horaire. Pour cela enlevez hs = hs + 1 en lignes 172 et 183 . Cette instruction hs = hs +1 est valable pour la Tunisie où on a abandonné la connerie ( ?) du passage de l’heure d’été à l’heure d’hivers. | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: LEVER ET COUCHER DU SOLEIL Mar 22 Jan 2013 - 16:27 | |
| Pour l'heure d'été/hiver, ça vous avez bien raison, ça embête tout le monde et à mon avis ça ne rapporte pas grand'chose; Tout de même je ne suis pas convaincu pour le 29 février des années bissextiles, comme il y a un jour de plus intercalé, toutes les heures des jours suivants devraient être décalées de 2 minutes par rapport à l'année précédente ? le 29 février prend la place du 1er mars précédent et ainsi de suite, ou alors quelque chose m'échappe... Le lever (et coucher) se décale tous les jours de 2 minutes, et le 29 février fait 24 heures comme tout le monde. PS J'ai regardé sur plusieurs sites et ce n'est pas toujours très clair, pour un même lieu et une même date les heures diffèrent parfois de 2 ou 3 minutes,, et j'observe le même phénomène d'année bissextile, un jour supplémentaire ne semble pas affecter les jours suivants , les valeurs sont quasiment les mêmes d'une année sur l'autre... je renonce à comprendre... | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: LEVER ET COUCHER DU SOLEIL Mar 22 Jan 2013 - 20:25 | |
| | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mer 23 Jan 2013 - 16:15 | |
| avec une autre interface : - Code:
-
Dim Ville$,La,Lo,Mois%,Jours%,Annee%,lev$,couch$ Label Clic,NeSeLevePas,NeSeCouchePas ' CREATION FICHIER VILLES Creat_Fiche_Ville() ' FORM INTERFACE Objets("Form",0,1,0,0,350,200,0,"Lever/Coucher du Soleil") Text_Objets_Attribut(0,"Arial",8,0,0,0,"","") Objets("Alpha",1,1,10,10,0,0,0,"Date :") Objets("Edit",2,1,25,10,60,0,0,"") hint 2,"format jj/mm/aaaa" Objets("Alpha",3,1,50,10,0,0,0,"Ville :") Objets("Combo",4,1,65,10,0,150,0,"") Remp_Objet(4) Objets("Button",5,1,65,165,20,20,0,"+") hint 5,"Ajouter une ville" Objets("Button",6,1,135,255,0,0,0,"Visualiser") Objets("Alpha",7,1,110,10,0,0,0,"Lever :") Objets("Alpha",8,1,130,10,0,0,0,"Coucher :") Objets("Alpha",9,1,110,70,0,0,0,"") Text_Objets_Attribut(9,"Arial",8,0,0,0,"0,0,255","") Objets("Alpha",10,1,130,70,0,0,0,"") Text_Objets_Attribut(10,"Arial",8,0,0,0,"0,0,255","") ' FORM AJOUT VILLE Objets("Form",11,0,0,0,350,200,0,"Ajouter une ville") Text_Objets_Attribut(11,"Arial",8,0,0,0,"","") Objets("Alpha",12,1,10,10,0,0,11,"Nom de la ville :") Objets("Edit",13,1,25,10,150,0,11,"") Objets("Alpha",14,1,50,10,0,0,11,"Latitude") Objets("Edit",15,1,65,10,90,0,11,"") Objets("Alpha",16,1,90,10,0,0,11,"Longitude") Objets("Edit",17,1,105,10,90,0,11,"") Objets("Button",18,1,135,255,0,0,11,"Enregistrer") ' CLICS on_click 5,Clic :on_click 6,Clic :on_click 18,Clic end ' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤ ' ¤ Creation du fichier "villes" initial ¤ ' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤ Sub Creat_Fiche_Ville() dim_local x%,a$ if file_exists("Villes.inf")=0 file_open_write 100,"Villes.inf" for x%=1 to 10 Read a$ file_writeln 100,a$ next x% file_close 100 end_if End_Sub ' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤ ' ¤ INTERFACE ¤ ' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤ SUB Objets(obj$,No%,V%,T%,L%,W%,H%,P%,C$) DIM_LOCAL indx% ' Création de l'objet IF VARIABLE("T_obj$") = 0 DIM T_obj$ T_obj$="01SCENE3D;02BUTTON;03EDIT;04MEMO;05COMBO;06ALPHA;07FORM;08LIST;09PICTURE;" T_obj$=T_obj$+"10CHECK;11OPTION;12MAIN_MENU;13SUB_MENU;14SOUND;15MOVIE;16TRACK_BAR;" T_obj$=T_obj$+"17OPEN_DIALOG;18SAVE_DIALOG;19SCROLL_BAR;20PROGRESS_BAR;21SPIN;" T_obj$=T_obj$+"22GRID;23CONTAINER;24;25;26DLIST;27SCENE2D;28TIMER;29;30;31;" T_obj$=T_obj$+"32CONTAINER_OPTION;33;34;35;36;37;38;39;40;41IMAGE;" END_IF indx% = INSTR(T_obj$,UPPER$(obj$)+";"): indx% = VAL(MID$(T_obj$,indx%-2,2)) if indx%<>7 and NO%=0 then NO%=NO%+1 SELECT indx% CASE 1: SCENE3D No% CASE 2: BUTTON No% :Caption No%,C$:cursor_point No% CASE 3: EDIT No% CASE 4: MEMO No% CASE 5: COMBO No% CASE 6: ALPHA No% :Caption No%,C$ CASE 7: IF No%>0:FORM No% :Caption No%,C$:else:Caption No%,C$:end_if CASE 8: LIST No% CASE 9: PICTURE No% CASE 10: CHECK No% :Caption No%,C$ CASE 11: OPTION No% :Caption No%,C$ CASE 12: MAIN_MENU No% CASE 13: SUB_MENU No% :Caption No%,C$ CASE 14: SOUND No% CASE 15: MOVIE No% CASE 16: TRACK_BAR No% CASE 17: OPEN_DIALOG No% CASE 18: SAVE_DIALOG No% CASE 19: SCROLL_BAR No% CASE 20: PROGRESS_BAR No% CASE 21: SPIN No% CASE 22: GRID No% CASE 23: CONTAINER No% :Caption No%,C$ CASE 26: DLIST No% CASE 27: SCENE2D No% CASE 28: TIMER No% CASE 32: CONTAINER_OPTION No% :Caption No%,C$ CASE 41: IMAGE No% END_SELECT ' Visibilité If V% = 0 Then hide NO% ' Dimensions If H% > 0 Then Height NO%,H% If W% > 0 Then Width NO%,W% ' Placement If indx% = 7 If T% > 0 : Top NO%,T% : Else : Top NO%,(Screen_y-H%)/2 : End_If If L% > 0 : Left NO%,L%: Else : Left NO%,(Screen_x-W%)/2: End_If Else If T% > 0 then Top NO%,T% If L% > 0 then Left NO%,L% End_If ' filiation If P% > 0 then Parent NO%,P% END_SUB ' ------------------------------------------------------------------------------ Sub Text_Objets_Attribut(No%,F$,FS%,B%,I%,U%,CF$,CO$) Dim_Local RF%,GF%,BF%,RO%,GO%,BO%,Sep%,ch$ ' définition de la police If F$ <>"" then Font_name No%,F$ ' définition de la taille de la police if FS% > 0 then Font_Size No%,FS% ' définition de la couleur de fond de l'objet if CO$ <> "" sep%=instr(CO$,",") RO%=Val(left$(CO$,sep%-1)) ch$=right$(CO$,len(CO$)-sep%) sep%=instr(ch$,",") GO%=val(left$(ch$,sep%-1)) BO%=val(right$(ch$,len(ch$)-sep%)) Color No%,RO%,GO%,BO% end_if ' définition de la couleur du texte de l'objet if CF$ <> "" sep%=instr(CF$,",") RF%=Val(left$(CF$,sep%-1)) ch$=right$(CF$,len(CF$)-sep%) sep%=instr(ch$,",") GF%=val(left$(ch$,sep%-1)) BF%=val(right$(ch$,len(ch$)-sep%)) Font_Color No%,RF%,GF%,BF% end_if ' Gras ou pas If B%=1 then Font_Bold No% ' Italique ou pas if I%=1 then Font_Italic No% ' Souligné ou pas if U%=1 then Font_Underline No% End_sub ' ------------------------------------------------------------------------------ Sub Remp_Objet(No%) dim_local a$,sep% If file_exists("Villes.inf")=1 file_open_read 100,"Villes.inf" file_readln 100,a$ sep%=instr(a$,"/") item_add No%,left$(a$,sep%-1) while a$<>"" file_readln 100,a$ sep%=instr(a$,"/") if a$<>"" then item_add No%,left$(a$,sep%-1) end_while file_close 100 end_if End_Sub ' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤ ' ¤ SELECTION CLIC ¤ ' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤ Clic: if variable("Clic%")=0 then Dim Clic% Clic%=Number_click Select Clic% case 5:show 11 case 6:Affichage() case 18:AjoutVille() end_select return ' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤ ' ¤ AFFICHAGE ¤ ' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤ Sub Affichage() dim_local x%,a$,sep%,ligne$ ' initialisation des variables globales La et Lo Ville$=text$(4) file_open_read 100,"Villes.inf" for x%=1 to count(4) file_readln 100,a$ sep%=instr(a$,"/") if left$(a$,sep%-1)=Ville$ ligne$=right$(a$,len(a$)-sep%) sep%=instr(ligne$,"/") La=val(left$(ligne$,sep%-1)) Lo=val(right$(ligne$,len(ligne$)-sep%)) exit_for end_if next x% file_close 100 ' initialisation des variables de date a$=text$(2) Jours%=val(left$(a$,2)):Mois%=val(mid$(a$,4,2)):Annee%=val(right$(a$,4)) SunRise_SunSet(Mois%,Jours%) End_Sub ' ------------------------------------------------------------------------------ SUB SunRise_SunSet(month,day) dim_local k,jm,jl,e,ob,pi dim_local dr,hr,ht,La,Lo,mois,jour,h,j,m,L,s,x,y,z,R,rx,ry,ET,DC,cs,ah,pm,hs,fh dim_local CalculSol$,hs$,pm$ ' Fuseau horaire et coordonnées géographiques k = 0.0172024 : jm = 308.67 : jl = 21.55 : e = 0.0167 : ob = 0.4091 PI= 3.1415926536 mois = month : jour = day ' Hauteur du soleil au lever et au coucher dr = PI/ 180 : hr = PI/ 12 : ht = (-40 / 60) : ht = ht * dr La = La * dr : Lo = 0-Lo * dr ' Date IF (mois < 3) then mois = mois + 12 ' Heure TU du milieu de la journée h = 12 + (Lo / hr) ' Nombre de jours écoulés depuis le 1 Mars O h TU J = int(30.61 * (mois + 1)) + jour + (h / 24) - 123 ' Anomalie et longitude moyenne M = k * (J - jm) : L = k * (J - jl) ' Longitude vraie S =L + 2 * e * Sin(M) + 1.25 * e * e * Sin(2 * M) ' Coordonnées rectangulaires du soleil dans le repère équatorial X = Cos(S) : Y = Cos(ob) * Sin(S) : Z = Sin(ob) * Sin(S) ' Equation du temps et déclinaison R = L : rx = Cos(R) * X + Sin(R) * Y : ry = 0-Sin(R) * X + Cos(R) * Y X = rx : Y = ry : ET = atn(Y / X) : DC = atn(Z / Sqr(1 - Z * Z)) ' Angle horaire au lever et au coucher cs = (Sin(ht) - Sin(La) * Sin(DC)) / Cos(La) / Cos(DC) IF (cs > 1) then CalculSol$ = "Ne se lève pas" : goto NeSeLevePas IF (cs < -1) then CalculSol$ = "Ne se couche pas" : goto NeSeCouchePas IF (cs = 0) then ah = PI / 2 : ELSE : ah = atn(Sqr(1 - cs * cs) / cs) IF (cs < 0) then ah = ah + PI ' Lever du soleil Pm = h + fh + (ET - ah) / hr IF (Pm < 0) then Pm = Pm + 24 IF (Pm > 24) then Pm = Pm - 24 hs = int(Pm) : Pm = int(60 * (Pm - hs)) : hs = hs + 1 : ' GMT +1 à modifier éventuellement hs$ = str$(hs) : pm$ = str$(pm)
IF len(str$(hs)) < 2 then hs$ = "0" + str$(hs) IF len(str$(Pm)) < 2 then Pm$ = "0" + str$(Pm) NeSeLevePas: IF CalculSol$ = "" then lev$ = hs$ + ":" +Pm$ :ELSE : lev$ = "-----" caption 9,lev$ ' Coucher du soleil Pm = h + fh + (ET + ah) /hr IF Pm > 24 then Pm = Pm - 24 IF Pm < 0 then Pm = Pm + 24 hs = int(Pm) : Pm = int(60 * (Pm - hs)) : hs = hs + 1 : ' GMT +1 à modifier éventuellement hs$ = str$(hs) : pm$ = str$(pm)
IF len(str$(hs)) < 2 then hs$ = "0" + str$(hs) IF len(str$(Pm)) < 2 then Pm$ = "0" + str$(Pm) NeSeCouchePas: IF CalculSol$ = "" then couch$ = hs$ + ":" + Pm$ : ELSE : couch$ = "-----" display caption 10,couch$ END_SUB ' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤ ' ¤ AJOUT VILLE ¤ ' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤ Sub AjoutVille() file_open_append 100,"Villes.inf" file_writeln 100,text$(13)+"/"+text$(15)+"/"+text$(17) file_close 100 Clear 4 Remp_Objet(4) Text 13,"":text 15,"":text 17,"" if message_information_yes_no("Voulez vous enregistrer une autre ville ?")<>1 then hide 11 End_Sub ' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤ ' ¤ DATAS ¤ ' ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤ data "Abbeville/50.100/1.850" data "Agen/44.200/0.633" data "Ajaccio/41.917/8.717" data "Albi/43.933/2.144" data "Alençon/48.417/0.083" data "Amiens/49.900/2.300" data "Angers/47.483/-0.533" data "Angouleme/45.667/0.167" data "Annecy/45.900/6.117" data "Arras/50.283/2.767"
Dernière édition par ygeronimi le Mer 23 Jan 2013 - 16:38, édité 1 fois (Raison : correction orthographique) | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mer 23 Jan 2013 - 16:25 | |
| Une bricole...
l' appli me donne un lever du soleil pour ce jours 23/01/2013 à 07:08 et un coucher à 19:14 hors en regardant google je vois 08:53 et 17:59 CET
quelqu'un sait il ce que ce que sait que CET et celà joue t il sur l'écart ? | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: LEVER ET COUCHER DU SOLEIL Mer 23 Jan 2013 - 16:34 | |
| D'accord ygeronimi, en regardant google, mais moi en regardant dehors je n'ai rien vu du tout à l'heure indiquée ! | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mer 23 Jan 2013 - 16:51 | |
| | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: LEVER ET COUCHER DU SOLEIL Mer 23 Jan 2013 - 17:22 | |
| Salut Ygeronimi
Le problème est que les variables La et Lo (latitude et longitude) sont déclarées locales dans la SUB SunRise_SunSet(Month,Day) et que tu les as déclarées aussi comme globales !
Supprime La et Lo dans la ligne Dim_local de la SUB SunRise_SunSet et ça marchera ! Sinon tous les calculs se feront avec La = 0 et Lo = 0.
| |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| | | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Jeu 24 Jan 2013 - 19:09 | |
| En revoyant la chose, je me dis que tu aurais pu inclure le fuseau horaire dans les paramètres à transmettre en même temps que la latitude et la longitude... | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: LEVER ET COUCHER DU SOLEIL Mar 29 Jan 2013 - 0:23 | |
| J’ai essayé de faire les phases de la lune. J’ai fouillé un peu (et même beaucoup sur internet) : le mouvement de la lune est trop complexe ! Beaucoup plus que celui du soleil. Je me suis armé de plusieurs formules de calcul et de correction et d’une dose de patience (somme toute, assez modeste). Après une éternité à martyriser le clavier et un océan de café ingurgité, le résultat de mon programme s’est avéré décevant ! Donc je ne poste pas mon programme, mais je vous livre un lien très intéressant (pour les amateurs passionnés) http://olravet.fr/index.phpIl y a des choses pour tous les goûts ! Visitez particulièrement la rubrique Astronomie. La page des programmes d’astronomie | |
| | | Invité Invité
| Sujet: Re: LEVER ET COUCHER DU SOLEIL Mar 29 Jan 2013 - 0:54 | |
| Si c'était pour moi, Papydall, c'était une plaisanterie. Te rends tu compte que les Mayas sans ordinateur, ont fait mieux que toi! Décevant! Il est évident que je plaisante. Je le précise au cas où!. Il faut dire si je me souviens bien que les prévisions d'un météorologue (il me semble bien que c'était ton métier), ne valent pas celles d'un astronome! Mais peut-être mieux que celle d'un astrologue. Aller bof, j'envoie avant d'effacer. |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: LEVER ET COUCHER DU SOLEIL Mar 29 Jan 2013 - 3:05 | |
| Oh oh oh , tu dis trop bien les choses ! Mais comment es-tu sûr que les Mayas n’avaient pas d’ordinateur ? Ils avaient peut-être ce que notre civilisation n’a pas encore réinventé ! Oses-tu avouer que tu ne regardes pas, avec intérêt, la météo à la télé ? Et tu y croix parce qu’elle est crédible ! Voila je t'offre ce code : - Code:
-
' ****************************************************************************** ' Date de Pâques ' Paques.bas ' Par Papydall ' ****************************************************************************** dim paques,mois$,annee% width 0,600 : height 0,850 alpha 1 : top 1,50 : left 1,100 : font_size 1,16: font_bold 1 : font_color 1,255,0,0 caption 1,"Date de Pâques de 2001 à 2100" list 2 : top 2,100 : left 2,100 : height 2,680 list 3 : top 3,100 : left 3,300 : height 3,680 ' ------------------------------------------------------------------------------ for annee% = 2001 to 2100 if annee% < 2051 then print_target_is 2 : else : print_target_is 3 Paques(annee%) if paques < 10 print annee%;" 0" ; paques ; " "; mois$ else print annee%;" " ; paques ; " "; mois$ end_if next annee% end ' ****************************************************************************** SUB Paques(annee%) dim_local a,b,c,d,e,p,n a = mod(annee%,19) : b = mod(annee%,4) : c = mod(annee%,7) d = mod((19*a+24),30) : e = mod((2*b+4*c+6*d+5),7) if d+e > 9 paques = d+e-9 : mois$ = "Avril" else paques = 22+d+e : mois$ = "Mars" end_if if mois$ = "Avril" and paques > 25 then paques = paques - 7 END_SUB ' ******************************************************************************
| |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mar 29 Jan 2013 - 18:33 | |
| Je suis tombé là dessus pour la lune : books.google.fr/books?isbn=2868839363 peut être l' as tu déjà vu ... | |
| | | Contenu sponsorisé
| Sujet: Re: LEVER ET COUCHER DU SOLEIL | |
| |
| | | | LEVER ET COUCHER DU SOLEIL | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |