Le html
<!doctype html>
<html lang="fr">
<head>
<title>test</title>
<meta charset="utf-8" />
</head>
<body>
<h1>test</h1>
<div id="grid">
<div id="item1"></div>
<div id="item2"></div>
<div id="item3"></div>
<div id="item4"></div>
<div id="item5"></div>
<div id="item6"></div>
<div id="item7"></div>
<div id="item8"></div>
<div id="item9"></div>
</div>
</body>
</html>
Le css
#grid {
display: grid;
grid-gap: 10px;
grid-row-gap: 25px;
}
#item1 {
background-color: white;
grid-area: 1 / 1;
width: 150px;
height: 150px;
}
#item2 {
background-color: white;
grid-area: 1 / 2;
width: 150px;
height : 150px;
}
#item3 {
background-color: white;
grid-area: 1/3;
width: 150px;
height: 150px;
}
#item4 {
background-color: white;
grid-area: 2/1;
width: 150px;
height : 150px;
}
#item5 {
background-color: red;
grid-area: 2/2;
width: 150px;
height: 150px;
}
#item6 {
background-color: white;
grid-area: 2/3;
width: 150px;
height: 150px;
}
#item7 {
background-color: white;
grid-area: 3/1;
width: 150px;
height: 150px;
}
#item8 {
background-color: white;
grid-area: 3/2;
width: 150px;
height: 150px;
}
#item9 {
background-color: white;
grid-area: 3/3;
width: 150px;
height: 150px;
}
Mais quand j’utilise java pour faire « onmouseover... » pour changer la couleur du background mais ça ne marche pas
Ce que j’ai testé :
document.item1.onmouseover = function(){
document.item1.style.backgroundColor="red";};
Et
document.grid.onmouseover = function(){
document.grid.style.backgroundColor="red";};
Mon compte: Alb1pchn#2726
]]>Un algorithme de sélection peut par exemple nous permettre de sélectionner tous les éléments ( qui sont ici des entiers ) étant pairs.
]]>Il reste encore des élèves qui n'ont pas rendu leur projet et qui ne répondemt pas aux emails (prévenez-les par d'autres voies...) : Marius, Éva H., Erwan, Roméo, Paul, Albin, Antoine.
Il y avait 10 items sur 2 points + un bonus de qualité.
- compte gitlab
- documentation md
- fichier py
- organisation générale python, présence de fonctions
- code commenté
- utilisatiopn de différentes structures de données
- vidéo
- fichier py bien découpé en 3 parties
- intérêt/difficulté
- facilité de lancement
Il y a eu d'excellents projets. D'autres plus modestes mais ayant bien répondu à toutes les demandes d'organisation et de documentation
Les points négatifs :
- pas de structures/algo (une cascade de if )
- pas de documentation/vidéo
- pas de fichier py !!
- compte gitlab incohérent / privé (illisible)
- chemin des fichiers absolu au lieu de relatif => impossible de lancer. Il faut des chemmins relatifs qui correspondent à l'arborescence du dépôt git
- programme qui n'en est pas : juste une fonction. Pas de sortie.
- absence de fonctions
- programme qui ne fonctionne pas quand on le lance !!!
- projet contenant uniquement une fonction de 10 lignes faisant une action élémentaire
Cela donne une moyenne de 12,5/20 pour les projets et de 11,5/20 pour le trimestre.
]]>#POTAGER SOLO LEEK WARS
#Importations
import requests
import json
from random import randint
import time as t
#Entrée
nb_combats:int = int(input('Combien de combats voulez-vous faire ? : '))
login:str = input('Entrez votre indentifiant Leek Wars : ')
mdp:str = input('Quel est votre mot de passe ? : ')
ID:str = input('Quel est l\'ID de votre poireau ? : ')
#Traitement
#Connexion
r = requests.post('https://leekwars.com/api/farmer/login-token' , data={'login':login , 'password':mdp})
token = r.json()['token']
header = {'Content-Type':'application/json' , 'Authorization':'Bearer {}'.format(token) , 'Cookie':'PHPSESSID={}'.format(randint(0,1000))}
#Combats
for _ in range(nb_combats):
#liste des ennemis disponibles dans le potager
r = requests.get('https://leekwars.com/api/garden/get-leek-opponents/{}'.format(ID) , headers=header)
les_ennemis = r.json()['opponents']
#Obtention de l'ID du poireau avec le moins de talent
id_ennemis:list = [k['id'] for k in les_ennemis]
talent_ennemis:list = [['talent' for k in les_ennemis]]
index_min:int = talent_ennemis.index(min(talent_ennemis))
son_id:int = id_ennemis[index_min]
#Lancer le combat
r = requests.get('https://leekwars.com/api/garden/start-solo-fight/{}/{}'.format(ID , son_id) , headers=header)
#Permet de laisser le combat se générer et de ne pas surcharger les serveurs. NE PAS RÉDUIRE CE TEMPS !!!!!
t.sleep(5)
#Résultat du combat
id_combat:int = r.json()['fight']
r = requests.get('https://leekwars.com/api/fight/get/{}'.format(id_combat) , headers=header)
combat = r.json()['fight']
gagnant = combat['winner']
leek1 = str(combat['leeks1'][0]['id'])
if leek1 == ID:
moi = 1
else:
moi = 2
if gagnant == moi:
print('Gagné !')
else:
print('Perdu...')
print('Terminé')
Entre temps (entre ma question et mon retour sur le forum) j’ai trouvé cette fonction dans la documentation easygui :
fileopenbox
Mon but était de choisir quel fichier ouvrir, cela correspond mieux
]]>