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
» Je teste PANORAMIC V 1 beta 1
Défi pour les frimas à venir = dessiner des carrés  Emptypar papydall Aujourd'hui à 2:48

» bouton dans autre form que 0
Défi pour les frimas à venir = dessiner des carrés  Emptypar leclode Hier à 13:59

» KGF_dll - nouvelles versions
Défi pour les frimas à venir = dessiner des carrés  Emptypar Klaus Hier à 11:41

» Gestion d'un système client-serveur.
Défi pour les frimas à venir = dessiner des carrés  Emptypar Klaus Hier à 10:23

» PANORAMIC V 1
Défi pour les frimas à venir = dessiner des carrés  Emptypar papydall Sam 4 Mai 2024 - 3:43

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
Défi pour les frimas à venir = dessiner des carrés  Emptypar Froggy One Jeu 2 Mai 2024 - 11:16

» @Jack
Défi pour les frimas à venir = dessiner des carrés  Emptypar Jack Mar 30 Avr 2024 - 20:40

» trop de fichiers en cours
Défi pour les frimas à venir = dessiner des carrés  Emptypar papydall Lun 29 Avr 2024 - 23:39

» Une calculatrice en une ligne de programme
Défi pour les frimas à venir = dessiner des carrés  Emptypar jean_debord Dim 28 Avr 2024 - 8:47

» Form(résolu)
Défi pour les frimas à venir = dessiner des carrés  Emptypar leclode Sam 27 Avr 2024 - 17:59

» Bataille navale SM
Défi pour les frimas à venir = dessiner des carrés  Emptypar jjn4 Ven 26 Avr 2024 - 17:39

» Les maths du crocodile
Défi pour les frimas à venir = dessiner des carrés  Emptypar jean_debord Jeu 25 Avr 2024 - 10:37

» Naissance de Crocodile Basic
Défi pour les frimas à venir = dessiner des carrés  Emptypar jean_debord Jeu 25 Avr 2024 - 8:45

» Dessine-moi une galaxie
Défi pour les frimas à venir = dessiner des carrés  Emptypar jjn4 Lun 22 Avr 2024 - 13:47

» Erreur END_SUB
Défi pour les frimas à venir = dessiner des carrés  Emptypar jjn4 Lun 22 Avr 2024 - 13:43

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Mai 2024
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
2728293031  
CalendrierCalendrier
-20%
Le deal à ne pas rater :
Ecran PC GIGABYTE 28″ LED M28U 4K ( IPS, 1 ms, 144 Hz, FreeSync ...
399 € 499 €
Voir le deal

 

 Défi pour les frimas à venir = dessiner des carrés

Aller en bas 
+3
Yannick
jean_debord
Ouf_ca_passe
7 participants
AuteurMessage
Ouf_ca_passe




Nombre de messages : 285
Age : 75
Localisation : Villeneuve d'Ascq (59-Dpt du NORD) France
Date d'inscription : 21/12/2015

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: Défi pour les frimas à venir = dessiner des carrés    Défi pour les frimas à venir = dessiner des carrés  EmptyVen 18 Oct 2019 - 8:43

Bonjour les Panoramicien(ne)s, FBPanistes et autres FBCrocodilien(ne)s

(Inspiré d’un test donné à « la pîscine » de « l’école 42 »)

Soit une grille de 12 x 12 cellules carrées dans lesquelles on dispose 12 points.
Il y a donc 144 possibilités de positionner un point.
Créer un programme pour relier 4 points entre eux pour former
1) le plus grand carré
2) le plus petit carré
possibles.
Il se peut qu’il n’y ait aucun carré à tracer.
Vous avez toute la durée des frimas pour trouver une ou des solutions.

Rien ne vous interdit de créer un autre programme pour disposer aléatoirement des points
puis, dans un deuxième temps chercher à les relier.

Bon courage

NB. Bien évidemment, vous pouvez changer la dimension de la grille et le nombre de points à y disposer si ça vous dit.
Revenir en haut Aller en bas
jean_debord

jean_debord


Nombre de messages : 1250
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: Re: Défi pour les frimas à venir = dessiner des carrés    Défi pour les frimas à venir = dessiner des carrés  EmptyVen 18 Oct 2019 - 10:59

Bonjour Ouf_ça_passe,

C'est un bon défi !

Première difficulté : comment tirer 12 points tous différents ?

C'est une question classique. Je vous laisse chercher Smile
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
Ouf_ca_passe




Nombre de messages : 285
Age : 75
Localisation : Villeneuve d'Ascq (59-Dpt du NORD) France
Date d'inscription : 21/12/2015

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: Classique, classique   Défi pour les frimas à venir = dessiner des carrés  EmptyVen 18 Oct 2019 - 11:12

pour toi oui, Jean.
J'espérais appâter Papydall aussi.

Papydall.
Où es-tu Question
Revenir en haut Aller en bas
Yannick




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

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: re   Défi pour les frimas à venir = dessiner des carrés  EmptyVen 18 Oct 2019 - 15:23

Ouf_ca_passe a écrit:
Soit une grille de 12 x 12 cellules carrées dans lesquelles on dispose 12 points.
Il y a donc 144 possibilités de positionner un point.

C'est pas tout à fait vrai...
...à moins de pouvoir placer plusieurs point dans la même case.
Wink
Revenir en haut Aller en bas
silverman

silverman


Nombre de messages : 968
Age : 51
Localisation : Picardie
Date d'inscription : 18/03/2015

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: Re: Défi pour les frimas à venir = dessiner des carrés    Défi pour les frimas à venir = dessiner des carrés  EmptyVen 18 Oct 2019 - 16:19

J'aime bien ce genre de défi aussi Very Happy

@yannick
La grille comporte 144 emplacements, donc 144 possibilités de placer des points. Même si tu place 2 points au même emplacement dans la grille, la grille comportera toujours 144 cases, donc 144 possibilités tongue

Pour ma part, je suis la logique de jean_debord, à savoir 1 point par case.
ma solution à : comment tirer 12 points tous différents:

Ca, c'était facile, par contre, déterminer si 4 points forme un carré, le + petit, le + grand, ça ne me saute pas aux yeux quant à la manière de procéder scratch
J'y réfléchi drunken
Revenir en haut Aller en bas
Ouf_ca_passe




Nombre de messages : 285
Age : 75
Localisation : Villeneuve d'Ascq (59-Dpt du NORD) France
Date d'inscription : 21/12/2015

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: Si si   Défi pour les frimas à venir = dessiner des carrés  EmptyVen 18 Oct 2019 - 16:26

@ Yannick

Tu peux agrandir la grille si tu veux.
Par ex. 16 x 16 font 256 possibilités de marquer un point si je ne m’abuse comme dirait le docteur du même nom. Very Happy
Revenir en haut Aller en bas
Yannick




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

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: re   Défi pour les frimas à venir = dessiner des carrés  EmptyVen 18 Oct 2019 - 17:31

Si vous avez 144 cases vous avez au premier point 144 possibilités
au deuxième point, à moins de pouvoir remettre un point sur la case ou se trouve le premier, 
vous n' avez plus que 143 possibilités et ainsi de suite...
Twisted Evil
Revenir en haut Aller en bas
jean_debord

jean_debord


Nombre de messages : 1250
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: Re: Défi pour les frimas à venir = dessiner des carrés    Défi pour les frimas à venir = dessiner des carrés  EmptyVen 18 Oct 2019 - 19:39

Voici une solution en FBPano pour le tirage au sort :

Code:

const NG = 12       ' Taille de la grille
const NP = 12       ' Nb de points a tirer

dim x%(NP), y%(NP)  ' Coordonnees des points
dim t%(NG, NG)      ' Tableau memorisant les points trouves
dim xi%, yi%        ' Valeurs tirees  
dim i%              ' Variable de boucle

randomize timer

for i = 1 to NP
  repeat
    xi = int(rnd * NG) + 1
    yi = int(rnd * NG) + 1
  until t(xi, yi) = 0
  t(xi, yi) = 1
  x(i) = xi
  y(i) = yi
  ? i, x(i), y(i)
next i

N.B. Les tableaux commencent à l'indice 1 !

Pour les carrés, je proposerais l'algorithme suivant :

1. Prendre 2 points pour définir le côté du carré
2. Chercher s'il existe un troisième point
3. Si oui chercher un quatrième point

Il faut tester toutes les combinaisons possibles de 2 points. Il y en a 12 * 11 / 2 = 66
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
silverman

silverman


Nombre de messages : 968
Age : 51
Localisation : Picardie
Date d'inscription : 18/03/2015

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: Re: Défi pour les frimas à venir = dessiner des carrés    Défi pour les frimas à venir = dessiner des carrés  EmptySam 19 Oct 2019 - 12:57

Les chance d'obtenir 2 carrés dans la grille ne sont pas bien épaisses!
Voici un test, pressez la barre d'espace pour voir un nouveau tirage:
test:
Revenir en haut Aller en bas
papydall

papydall


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

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: Re: Défi pour les frimas à venir = dessiner des carrés    Défi pour les frimas à venir = dessiner des carrés  EmptyDim 20 Oct 2019 - 17:23

Ouf_ça_passe _ou_ça_ casse a écrit:
j'espérais appâter Papydall aussi.

Merci pour avoir pensé à moi.
Voilà bientôt deux longs mois que je ne suivais pas le forum à cause de mon état de santé (je vous épargne les détails).
Il me faut, sans doute du temps pour que ma mécanique se mette à tourner !


silvermann a écrit:
…  par contre, déterminer si 4 points forme un carré, le + petit, le + grand, ça ne me saute pas aux yeux quant à la manière de procéder  


Soit 4 points A(xa,ya), B(xb,yb), C(xc,yc), D(xd,yd)
Pour prouver que ces 4 points forment un carré, on peut procéder comme suit :
• Commencer par démontrer que le quadrilatère est un losange en déterminant les longueurs de ses côtés AB, BD, DC et CA et en vérifiant qu’ils sont tous égaux.
• Puis prouver que ce losange est un carré en calculant la longueur des 2 diagonales AD et BC et en vérifiant qu’elles ont même longueur.

Rappel : pour calculer la distance entre 2 points A(xa,ya) et B(xb,yb)
Distance = Racine carrée de [(xb-xa)² + (yb-ya)²]


A+

EDIT : Il faut aussi prendre en considération qu’il ne s’agit pas d’un quadrilatère dégénéré : 3 (ou 4) points ne doivent pas être alignés !
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Jack
Admin
Jack


Nombre de messages : 2386
Date d'inscription : 28/05/2007

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: Re: Défi pour les frimas à venir = dessiner des carrés    Défi pour les frimas à venir = dessiner des carrés  EmptyDim 20 Oct 2019 - 18:31

Je suis content de te revoir sur le forum, Papydall, et j'espère que tu vas te remettre très vite.

_________________
Défi pour les frimas à venir = dessiner des carrés  Webdav username : panoramic@jack-panoramic password : panoramic123
Revenir en haut Aller en bas
https://panoramic.1fr1.net
JL35




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

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: Re: Défi pour les frimas à venir = dessiner des carrés    Défi pour les frimas à venir = dessiner des carrés  EmptyDim 20 Oct 2019 - 20:51

Content moi aussi papydall, tu commençais à nous inquiéter...
Bon courage pour la suite !
Revenir en haut Aller en bas
Yannick




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

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: re   Défi pour les frimas à venir = dessiner des carrés  EmptyDim 20 Oct 2019 - 23:09

Content de te revoir parmis nous Papydall !
cheers
Revenir en haut Aller en bas
papydall

papydall


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

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: Re: Défi pour les frimas à venir = dessiner des carrés    Défi pour les frimas à venir = dessiner des carrés  EmptyLun 21 Oct 2019 - 0:49

Merci les amis.
Voici une fonction qui détermine si les 4 points A, B ,C, D de coordonnées    xa,ya ; xb,yb ; xc,yc ; xd,yd  est un carré

Code:

rem ============================================================================
rem   Fonction pour déterminer si le quadrilatère ABCD de coordonnées
rem   xa,ya ; xb,yb ; xc,yc ; xd,yd  est un carré
rem ============================================================================
                          '        carré avec côtés // aux axes          __              
message Carree_ABCD(100,100,300,100,300,300,100,300) : ' <--- 1  carrée |__|

                        ' carré avec côtés // aux bissectrices des axes  /\                
message Carree_ABCD(300,100,500,300,300,500,100,300) : ' <--- 1  carrée  \/

message Carree_ABCD(100,100,100,100,200,100,300,250) : ' <--- 0 ce n'est pas un carré

end
rem ============================================================================
' Déterminer la distance entre deux points de coordonnées x1,y1 et x2,y2
FNC Distance_AB(x1,y1,x2,y2)
    result sqr((x2-x1)*(x2-x1) + (y2-y1)*(y2-y1))
END_FNC
rem ============================================================================
' Déterminer si le quadrilatère ABCD de coordonnées xa,ya ; xb,yb ; xc,yc ; xd,yd
' est un carré
' Retourne 1 si c'est un carré, 0 sinon
' Si les 4 côtés sont égaux, il s'agit d'un losange.
' Si en plus les 2 diagonales sont égales, il s'agit d'un carré.
FNC Carree_ABCD(xa,ya,xb,yb,xc,yc,xd,yd)
    dim_local d1,d2,d3,d4,d5,d6
    d1 = Distance_AB(xa,ya,xb,yb) : ' côté 1
    d2 = Distance_AB(xb,yb,xc,yc) : ' côté 2
    d3 = Distance_AB(xc,yc,xd,yd) : ' côté 3
    d4 = Distance_AB(xd,yd,xa,ya) : ' côté 4
    d5 = Distance_AB(xa,ya,xc,yc) : ' diagonale 1
    d6 = Distance_AB(xb,yb,xd,yd) : ' diagonale 2
    
    if (d1 = d2) and (d1 = d3) and (d1 = d4) and (d5 = d6)
        result 1
    else
        result 0
    end_if
END_FNC
rem ============================================================================
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Ouf_ca_passe




Nombre de messages : 285
Age : 75
Localisation : Villeneuve d'Ascq (59-Dpt du NORD) France
Date d'inscription : 21/12/2015

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: Orientation   Défi pour les frimas à venir = dessiner des carrés  EmptyLun 21 Oct 2019 - 8:09

Je suis content d’avoir intéressé 4 seniors des PANO et j’espère que d’autres suivront.

Vous avez tou(te)s compris que les carrés pouvaient être en diagonale aussi ou autres orientations.

Je pense que certains d’entre vous pourraient aussi en faire un jeu à condition d’intégrer obligatoirement au moins 1 carré à dessiner sinon le jeu aurait peu d’intérêt. Donc hors tirage des autres points.

@ Papydall
Je te souhaite un bon retour par minous (Euh, je me suis trompé, je voulais écrire "parmi nous").
Tes précieux conseils nous ont manqué.

Votre Ouf_ca_passe_ou_ca_casse
Revenir en haut Aller en bas
silverman

silverman


Nombre de messages : 968
Age : 51
Localisation : Picardie
Date d'inscription : 18/03/2015

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: Re: Défi pour les frimas à venir = dessiner des carrés    Défi pour les frimas à venir = dessiner des carrés  EmptyLun 21 Oct 2019 - 9:22

Merci pour ton aide Papydall, mais j'y ai réfléchi depuis et je ne pensais pas à une méthode purement mathématique Wink

Je compte lire les points en partant du haut à gauche(ordonnée à l'origine) et faire ceci:
idée:

cela va me permettre de tester toutes les combinaisons, et m'affranchir de l'angle d'inclinaisons du carré


Dernière édition par silverman le Mar 22 Oct 2019 - 9:41, édité 1 fois
Revenir en haut Aller en bas
silverman

silverman


Nombre de messages : 968
Age : 51
Localisation : Picardie
Date d'inscription : 18/03/2015

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: Re: Défi pour les frimas à venir = dessiner des carrés    Défi pour les frimas à venir = dessiner des carrés  EmptyLun 21 Oct 2019 - 20:30

La réalisation... Very Happy
ma solution finale:
Revenir en haut Aller en bas
papydall

papydall


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

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: Re: Défi pour les frimas à venir = dessiner des carrés    Défi pour les frimas à venir = dessiner des carrés  EmptyLun 21 Oct 2019 - 22:34

BRAVO l’homme d’argent !  king
Solution élégante malgré les 2 GOTO que je n’aime pas trop ! Mais ça c’est une question de goût. Wink
Tu as gagné le titre … heu Ouf_ça_passe, quel est le prix à gagner déjà ?

@Ouf_ça_passe cette fois-ci ça a passé et ça n’a pas cassé.
Merci d’avoir proposé ce défi : ça a fait réveiller le forum.
Si tu as d’autres défis …
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
silverman

silverman


Nombre de messages : 968
Age : 51
Localisation : Picardie
Date d'inscription : 18/03/2015

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: Re: Défi pour les frimas à venir = dessiner des carrés    Défi pour les frimas à venir = dessiner des carrés  EmptyMar 22 Oct 2019 - 9:51

Papydall a écrit:
...malgré les 2 GOTO que je n’aime pas trop...
cheers  cheers  cheers
C'est fait exprès pour les anti-gotoïste lol!

Le défi c'est que chacun propose une solution. Je suis curieux de voir d'autres algorithmes, comment les autres ont fait... geek
Allez, allez, à vos claviers! Very Happy
Revenir en haut Aller en bas
Ouf_ca_passe




Nombre de messages : 285
Age : 75
Localisation : Villeneuve d'Ascq (59-Dpt du NORD) France
Date d'inscription : 21/12/2015

Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: Bravo Sllverman   Défi pour les frimas à venir = dessiner des carrés  EmptyMar 22 Oct 2019 - 11:24

Ainsi il n’a pas fallu attendre la fin des frimas pour obtenir une réponse de Silverman.
Qu’il soit récompensé par l’expression de ma profonde considération (et c’est déjà beaucoup).
Cela ne doit pas décourager les autres à persévérer pour proposer d’autres solutions.
Il doit y en avoir.
Et chez les seniors des PANO, c’est comme chez les marines américains, il y a les premiers arrivés mais il ne faut jamais perdre un membre de la mission.

Bonne réflexion
Revenir en haut Aller en bas
Contenu sponsorisé





Défi pour les frimas à venir = dessiner des carrés  Empty
MessageSujet: Re: Défi pour les frimas à venir = dessiner des carrés    Défi pour les frimas à venir = dessiner des carrés  Empty

Revenir en haut Aller en bas
 
Défi pour les frimas à venir = dessiner des carrés
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Une formule pour les dessiner tous
» Sauriez-vous compter les carrés ?
» Nouveau défi pour les spécialistes
» Carrés disséqués
» Défi2 = les moindres carrés

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Les inutilitaires-
Sauter vers: