CoddyRun

Parcours Le jeu des paires Étape 1

Étape 1 sur 6

Une grille de seize cartes

Dessiner seize cartes face cachée en 4 × 4, à partir de deux fonctions qui calculent la position de chaque carte.

Notions :fonctionmodarrondi_inferieurrectangle_arrondi

Le résultat final du parcours : Le jeu des paires
Le résultat final du projet
Ce qu'il faut savoir

Les cartes sont numérotées de 0 à 15, ligne par ligne. Leur position se calcule à partir du numéro :

fonction carteX(c)
    retourne 15 + (c mod 4) * 80
fin fonction
  • c mod 4, le reste de la division par 4, donne la colonne (0 à 3) ;
  • arrondi_inferieur(c / 4) donne la ligne (0 à 3).

Chaque carte fait 70 pixels, et on avance de 80 : il reste 10 pixels d'écart entre deux cartes.

Le dos des cartes

Un rectangle aux coins arrondis violet, avec un rond plus clair au milieu : le milieu d'une carte est à carteX(c) + 35, la moitié de 70.

Ces deux fonctions serviront aussi à savoir quelle carte a été cliquée.

Code de départ

Ouvrez CoddyRun et partez d'un programme vide : tout commence ici.

Pas encore CoddyRun ?

Il te faut le logiciel pour faire cette étape. Il est gratuit : crée ton compte pour le télécharger, puis reviens ici, ta place t'attend.

Créer mon compte et télécharger
Besoin d'aide ?
Indice 1

La toile fait 340 × 400 pixels : il faut de la place en haut pour le score et en bas pour les messages.

Indice 2

rectangle_arrondi(table, x, y, 70, 70, 10, #6C5CE7) : le 10 est le rayon des coins.

Indice 3

La carte n° 15 est en colonne 3 et ligne 3 : x = 255 et y = 300.

Voir la solution complète

Essayez d'abord par vous-même : c'est en cherchant qu'on apprend. La solution sert à vérifier ou à se débloquer.

@ Les déclarations
table est une toile

@ La position des cartes
fonction carteX(c)
    retourne 15 + (c mod 4) * 80
fin fonction

fonction carteY(c)
    retourne 60 + arrondi_inferieur(c / 4) * 80
fin fonction

@ Programme principal
dimension(table, 340, 400)
remplir(table, #2D2A4A)
pour c de 0 à 15
    rectangle_arrondi(table, carteX(c), carteY(c), 70, 70, 10, #6C5CE7)
    cercle(table, carteX(c) + 35, carteY(c) + 35, 12, #A29BFE)
fin pour
affiche table

Ce parcours te plaît ?

Crée ton compte gratuit et construis le projet en entier, étape par étape.

Créer mon compte gratuit J'ai déjà un compte