FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» StratégoV8 et V9
par Minibug Aujourd'hui à 1:10

» Rotation d'une image d'un angle quelconque
par JL35 Hier à 23:02

» GRID_LOAD
par Jean Claude Hier à 21:04

» HVIEWER
par Yannick Hier à 20:31

» KGF_dll - nouvelles versions
par Klaus Mar 16 Jan 2018 - 21:28

» Déformation d'image en trapèze
par mindstorm Mar 16 Jan 2018 - 21:06

» Mah-Jong américain
par Jean Claude Lun 15 Jan 2018 - 19:37

» Problème avec Deepl
par Klaus Lun 15 Jan 2018 - 0:34

» Quelques nouvelles ...
par Jean Claude Ven 12 Jan 2018 - 22:40

» Renommer les instructions ITEM_... ?
par Jicehel Ven 12 Jan 2018 - 18:56

» Ludothèque Panoramic
par jjn4 Ven 12 Jan 2018 - 18:11

» sous-programmes et fonctions
par Jack Ven 12 Jan 2018 - 17:51

» Mah-Jong français
par Jean Claude Jeu 11 Jan 2018 - 22:15

» panoramic 0.9.28
par gigi75 Ven 5 Jan 2018 - 14:06

» Un jeu qui va vous énerver!
par Jean Claude Jeu 4 Jan 2018 - 22:05

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Janvier 2018
LunMarMerJeuVenSamDim
1234567
891011121314
15161718192021
22232425262728
293031    
CalendrierCalendrier

Partagez | 
 

 Théorème de Pick

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
papydall

avatar

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

MessageSujet: Théorème de Pick   Dim 12 Juil 2015 - 0:10

Salut tout le monde.

Savez-vous comment calculer l’aire d’un polygone construit sur une grille de points équidistants (des points de coordonnées entières) tel que tous ses sommets soient des  points de la grille ?
Le théorème de Pick est là pour vous donnez la réponse.
Soit I le nombre de points intérieurs du polygone
Soit B le nombre de points du bord du polygone
Le théorème de Pick pour calculer l'aire A de ce polygone :
A = I + B/2 -1

Le théorème de Pick s'applique aussi bien sûr sur des polygones dont on connait la formule du calcul (un rectangle par exemple).

Code:

rem ============================================================================
rem               Théorème de Pick
rem ============================================================================
rem Soit un polygone construit sur une grille de points équidistants
rem (des points de coordonnées entières) tel que tous ses sommets soient des
rem points de la grille.
rem Soit I le nombre de points intérieurs du polygone (en rouge sur la figure)
rem Soit B le nombre de points du bord du polygone (en bleu sur la figure)
rem Le théorème de Pick pour calculer l aire A de ce polygone :
rem A = I + B/2 -1
rem ============================================================================
dim A,w : w = 20
dim bleu, rouge ,t$
width 0,800 : height 0,450 : caption 0,"Théorème de Pick"
alpha 10 : top 10,050 : left 10,620 : font_bold 10
alpha 20 : top 20,250 : left 20,620 : font_bold 20
Grille()
2d_pen_width 2
Polygone_1()
A = rouge + bleu/2 -1
t$ = "L'aire du polygone vaut "+chr$(13) + str$(A) + " unités de surface"+chr$(13) + "A = rouge + bleu/2 -1"
t$ = t$ + chr$(13) + "A = 109 + 24/2 - 1 = 120"
caption 20,t$
Polygone_2()
A = rouge + bleu/2 -1
t$ = "L'aire du rectangle vaut "+chr$(13) + str$(A) + " unités de surface"+chr$(13) + "A = rouge + bleu/2 -1"
t$ = t$ + chr$(13) + "A = 14 + 22/2 - 1 = 24"
t$ = t$ + chr$(13) + "On peut vérifier que " + chr$(13)
t$ = t$ + "les dimensions de" + chr$(13) +"ce rectangle sont :" +chr$(13)
t$ = t$ + "8 cases * 3 cases" + chr$(13)
t$ = t$ + "La surface est :" +chr$(13)
t$ = t$ + "8*3 = 24 cases²"
caption 10,t$
end
rem ============================================================================
SUB Grille()
    dim_local i
    for i = 1 to 3*w/2
        2d_line w,w*i,3*w*w/2,w*i
        2d_line w*i,w,w*i,w*w
    next i
END_SUB
rem ============================================================================
SUB Polygone_1()
    dim_local i
    rouge = 0 : bleu = 0
    2d_fill_on : 2d_fill_color 0,0,255
    2d_poly_from 4*w,16*w : 2d_circle 4*w,16*w,4 : bleu = bleu + 1
    2d_poly_to   8*w,4*w  : 2d_circle 8*w,4*w,4  : bleu = bleu + 1
    2d_circle 5*w,13*w,4  : 2d_circle 6*w,10*w,4  : 2d_circle 7*w,7*w,4
    bleu = bleu + 3
    2d_poly_to 14*w,10*w
    for i = 1 to 6 : 2d_circle (8+i)*w,(4+i)*w,4 : next i : bleu = bleu + 6
    2d_poly_to 16*w,8*w : 2d_circle 16*w,8*w,4 :  2d_circle 15*w,9*w,4
    bleu = bleu + 2
    2d_poly_to 20*w,12*w
    for i = 1 to 4 : 2d_circle (16+i)*w,(8+i)*w,4 : next i : bleu = bleu + 4
    2d_poly_to 14*w,18*w
    for i = 1 to 6 : 2d_circle (20-i)*w,(12+i)*w,4 : next i : bleu = bleu + 6
    2d_poly_to 4*w,16*w : 2d_circle 9*w,17*w,4 : bleu = bleu + 1
    2d_fill_color 255,0,0
    for i = 1 to 3  : 2d_circle 5*w,(13+i)*w,4 : next i : rouge = rouge + 3
    for i = 1 to 6  : 2d_circle 6*w,(10+i)*w,4 : next i : rouge = rouge + 6
    for i = 1 to 9  : 2d_circle 7*w,(7+i)*w,4  : next i : rouge = rouge + 9
    for i = 1 to 12 : 2d_circle 8*w,(4+i)*w,4  : next i : rouge = rouge + 12
    for i = 1 to 11 : 2d_circle 9*w,(5+i)*w,4  : next i : rouge = rouge + 11
    for i = 1 to 11 : 2d_circle 10*w,(6+i)*w,4 : next i : rouge = rouge + 11
    for i = 1 to 10 : 2d_circle 11*w,(7+i)*w,4 : next i : rouge = rouge + 10
    for i = 1 to 9  : 2d_circle 12*w,(8+i)*w,4 : next i : rouge = rouge + 9
    for i = 1 to 8  : 2d_circle 13*w,(9+i)*w,4 : next i : rouge = rouge + 8
    for i = 1 to 7  : 2d_circle 14*w,(10+i)*w,4: next i : rouge = rouge + 7
    for i = 1 to 7  : 2d_circle 15*w,(9+i)*w,4 : next i : rouge = rouge + 7
    for i = 1 to 7  : 2d_circle 16*w,(8+i)*w,4 : next i : rouge = rouge + 7
    for i = 1 to 5  : 2d_circle 17*w,(9+i)*w,4 : next i : rouge = rouge + 5
    for i = 1 to 3  : 2d_circle 18*w,(10+i)*w,4: next i : rouge = rouge + 3
    2d_circle 19*w,12*w,4 : rouge = rouge + 1
END_SUB
rem ============================================================================
SUB Polygone_2()
    dim_local i
    rouge = 0 : bleu = 0
    2d_fill_on : 2d_fill_color 0,0,255
    2d_poly_from 20*w,2*w : 2d_poly_to 28*w,2*w
    for i = 1 to 9 : 2d_circle (19+i)*w,2*w,4 : bleu = bleu + 1 : next i
    2d_poly_to 28*w,5*w
    for i = 1 to 3 : 2d_circle 28*w,(2+i)*w,4 : bleu = bleu + 1 : next i
    2d_poly_to 20*w,5*w
    for i = 1 to 8 : 2d_circle (28-i)*w,5*w,4 : bleu = bleu + 1 : next i
    2d_poly_to 20*w,2*w
    for i = 1 to 2 : 2d_circle 20*w,(5-i)*w,4 : bleu = bleu + 1 : next i
    2d_fill_color 255,0,0
    
    for i = 1 to 7 : 2d_circle (20+i)*w,3*w,4 : rouge = rouge + 1 : next i
    for i = 1 to 7 : 2d_circle (20+i)*w,4*w,4 : rouge = rouge + 1 : next i

END_SUB
rem ============================================================================
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
mindstorm

avatar

Nombre de messages : 545
Age : 48
Localisation : charente
Date d'inscription : 13/02/2013

MessageSujet: Re: Théorème de Pick   Jeu 16 Juil 2015 - 20:21

bonsoir Papydall
tu dit que les points doivent être équidistant .
Peut ont considérer qu'ils le sont toujours si l'échelle est bien choisi?
Ou peut être y a t il une limite
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

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

MessageSujet: Re: Théorème de Pick   Jeu 16 Juil 2015 - 21:28

Tu auras une bonne idée en visitant ce site ou ce PDF
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Contenu sponsorisé




MessageSujet: Re: Théorème de Pick   

Revenir en haut Aller en bas
 
Théorème de Pick
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» pick-up (Ford Ranger Double Cabine XLT Limited 2.5 TDCi)
» pick-up Toyota
» Mitsubishi Offres spéciales « Sport Black »
» Juva customisé
» Théorème de Pick

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: