FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
LEVER ET COUCHER DU SOLEIL Emptypar Pedro Aujourd'hui à 10:37

» Un autre pense-bête...
LEVER ET COUCHER DU SOLEIL Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
LEVER ET COUCHER DU SOLEIL Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
LEVER ET COUCHER DU SOLEIL Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
LEVER ET COUCHER DU SOLEIL Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
LEVER ET COUCHER DU SOLEIL Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
LEVER ET COUCHER DU SOLEIL Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
LEVER ET COUCHER DU SOLEIL Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
LEVER ET COUCHER DU SOLEIL Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
LEVER ET COUCHER DU SOLEIL Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
LEVER ET COUCHER DU SOLEIL Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
LEVER ET COUCHER DU SOLEIL Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
LEVER ET COUCHER DU SOLEIL Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
LEVER ET COUCHER DU SOLEIL Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
LEVER ET COUCHER DU SOLEIL Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
Le Deal du moment :
Smartphone Xiaomi 14 – 512 Go- 6,36″ 5G ...
Voir le deal
599 €

 

 LEVER ET COUCHER DU SOLEIL

Aller en bas 
+2
bignono
papydall
6 participants
AuteurMessage
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: LEVER ET COUCHER DU SOLEIL   LEVER ET COUCHER DU SOLEIL EmptyMar 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
' ******************************************************************************

EDIT
Voici 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)
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
bignono

bignono


Nombre de messages : 1127
Age : 67
Localisation : Val de Marne
Date d'inscription : 13/11/2011

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: Re: LEVER ET COUCHER DU SOLEIL   LEVER ET COUCHER DU SOLEIL EmptyMar 22 Jan 2013 - 7:36

Bonjour Papydall, Smile
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+ Wink Wink Wink
Revenir en haut Aller en bas
Invité
Invité




LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: Re: LEVER ET COUCHER DU SOLEIL   LEVER ET COUCHER DU SOLEIL EmptyMar 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? Razz
Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 52
Localisation : 77500
Date d'inscription : 18/04/2011

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: Re: LEVER ET COUCHER DU SOLEIL   LEVER ET COUCHER DU SOLEIL EmptyMar 22 Jan 2013 - 12:39

Bien joué Wink Très bonne idée.
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: re   LEVER ET COUCHER DU SOLEIL EmptyMar 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" Laughing

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
Revenir en haut Aller en bas
bignono

bignono


Nombre de messages : 1127
Age : 67
Localisation : Val de Marne
Date d'inscription : 13/11/2011

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: Re: LEVER ET COUCHER DU SOLEIL   LEVER ET COUCHER DU SOLEIL EmptyMar 22 Jan 2013 - 13:53

Bonjour Ygeronimi, Smile
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+ Wink
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: re   LEVER ET COUCHER DU SOLEIL EmptyMar 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. Laughing
Revenir en haut Aller en bas
JL35




Nombre de messages : 7112
Localisation : 77
Date d'inscription : 29/11/2007

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: Re: LEVER ET COUCHER DU SOLEIL   LEVER ET COUCHER DU SOLEIL EmptyMar 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...
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: Re: LEVER ET COUCHER DU SOLEIL   LEVER ET COUCHER DU SOLEIL EmptyMar 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.

Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
JL35




Nombre de messages : 7112
Localisation : 77
Date d'inscription : 29/11/2007

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: Re: LEVER ET COUCHER DU SOLEIL   LEVER ET COUCHER DU SOLEIL EmptyMar 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... scratch je renonce à comprendre...
Revenir en haut Aller en bas
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 70
Localisation : 83 Var
Date d'inscription : 07/05/2009

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: Re: LEVER ET COUCHER DU SOLEIL   LEVER ET COUCHER DU SOLEIL EmptyMar 22 Jan 2013 - 20:25

@Papydall.

Bon çà discute, mais c'est pas loin de la vérité

Voir ici => http://www.calendrier-365.fr/calendrier/2013/janvier.html

A+

Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: re   LEVER ET COUCHER DU SOLEIL EmptyMer 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"

lol!


Dernière édition par ygeronimi le Mer 23 Jan 2013 - 16:38, édité 1 fois (Raison : correction orthographique)
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: re   LEVER ET COUCHER DU SOLEIL EmptyMer 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 ?
Revenir en haut Aller en bas
JL35




Nombre de messages : 7112
Localisation : 77
Date d'inscription : 29/11/2007

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: Re: LEVER ET COUCHER DU SOLEIL   LEVER ET COUCHER DU SOLEIL EmptyMer 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 !
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: re   LEVER ET COUCHER DU SOLEIL EmptyMer 23 Jan 2013 - 16:51

lol! lol! lol! lol! lol!

j'ai du louper une variable quelque part....
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: Re: LEVER ET COUCHER DU SOLEIL   LEVER ET COUCHER DU SOLEIL EmptyMer 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.
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: re   LEVER ET COUCHER DU SOLEIL EmptyMer 23 Jan 2013 - 18:02

Il me semblait bien que j'avais loupé une variable quelque part ... Laughing
mais là, c'est 2 variables... Laughing Laughing
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: re   LEVER ET COUCHER DU SOLEIL EmptyJeu 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... Wink
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: Re: LEVER ET COUCHER DU SOLEIL   LEVER ET COUCHER DU SOLEIL EmptyMar 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 ! Sad LEVER ET COUCHER DU SOLEIL J_sad Sad
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.php

Il y a des choses pour tous les goûts !
Visitez particulièrement la rubrique Astronomie. La page des programmes d’astronomie
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Invité
Invité




LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: Re: LEVER ET COUCHER DU SOLEIL   LEVER ET COUCHER DU SOLEIL EmptyMar 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! Mad
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. bom
Aller bof, j'envoie avant d'effacer.
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7017
Age : 74
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: Re: LEVER ET COUCHER DU SOLEIL   LEVER ET COUCHER DU SOLEIL EmptyMar 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é ! LEVER ET COUCHER DU SOLEIL U_THIN%7E1

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
' ******************************************************************************

sunny sunny sunny sunny sunny sunny sunny sunny sunny sunny sunny sunny sunny sunny sunny sunny
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Yannick




Nombre de messages : 8635
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: re   LEVER ET COUCHER DU SOLEIL EmptyMar 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 ...
Revenir en haut Aller en bas
Contenu sponsorisé





LEVER ET COUCHER DU SOLEIL Empty
MessageSujet: Re: LEVER ET COUCHER DU SOLEIL   LEVER ET COUCHER DU SOLEIL Empty

Revenir en haut Aller en bas
 
LEVER ET COUCHER DU SOLEIL
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Lever/coucher du soleil
» Heures de passage au méridien / lever / coucher du soleil
» Lever les restrictions sur la fonction String$

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos sources, vos utilitaires à partager-
Sauter vers: