big update

This commit is contained in:
Adrian Amaglio 2022-10-25 14:33:52 +02:00
parent 38323d3c56
commit ee880ee31b
21 changed files with 549 additions and 390 deletions

3
.gitignore vendored
View File

@ -1,3 +1,6 @@
## Do not save pdf by default
*.pdf
## Core latex/pdflatex auxiliary files: ## Core latex/pdflatex auxiliary files:
*.aux *.aux
*.lof *.lof

Binary file not shown.

View File

@ -0,0 +1,86 @@
\documentclass[11pt,a4paper]{../../template/template_cours}
\usepackage{listings}
\title{Rédiger un mail ou un courrier papier}
\author{Adrian Amaglio}
\def\thesequence{}
\begin{document}
\maketitle
Ce cours résume des codes et les outils pour préparer, structurer, rédiger et mettre en page des mails ou courriers.
\begin{tabular}{l|l|l}
& Mail & Lettre\\
Registre & Soutenu \\
Fluide & 30 mots par phrase max & 20 mots par phrase max \\
Rédaction & Phrases entrièrement rédigées (aucune abbréviation) \\
\end{tabular}
%
\section{Les formules de politesse}
Les formules de politesse encadrent tout courrier.
\subsection{Formule dappel}
La formule dappel par défaut, quand on ne peut identifier le destinataire, est « Madame, Monsieur, ».
Trois conventions méritent dêtre connues :
\begin{itemize}
\item à moins de vouloir faire preuve dun respect particulier, on ne met pas de nom propre après « Monsieur » ou « Madame » ;
\item pour exprimer le fait quon apprécie son destinataire, on peut écrire « Cher Monsieur » ou « Chère Madame » ;
\item bien que la formule dappel finisse par une virgule, le premier paragraphe commence par une majuscule.
\end{itemize}
\subsection{Formule de congé}
\begin{tabular}{|c|c|c|}
Situation & Dans un e-mail & Dans une lettre \\
\hline
on écrit à un(e) supérieur(e)
&
Respectueusement
&
Veuillez agréer/ Je vous prie dagréer, \textbf{(reprise de la formule dappel)}, mes salutations respectueuses
\\
On écrit à un(e) collègue, un(e) inconnu(e)…
&
Du plus au moins formel : « Respectueusement » ; « Cordialement » ; « Bien cordialement » ; « Amicalement »
&
Veuillez agréer/ Je vous prie dagréer, (reprise de la formule dappel), mes salutations distinguées/mes cordiales salutations.
\\
On écrit à un(e) ami(e), un(e) membre de la famille, des personnes que lon connaît…
&
« bonne journée », « bon travail », « bon week-end », « à bientôt », « bonne lecture »…
\\
\end{tabular}
%
\section{Un vocabulaire précis}
On évite les mots vagues et passe-partout, afin de gagner en précision.
a- Quelques noms communs « bateaux » (suggestion de synonymes à choisir selon le contexte)
Problème : question, besoin, sujet, oubli, panne, point de désaccord, risque, dysfonctionnement
Chose : activité, dossier, affaire, appareil, article, élément, objet, outils, question, travail
Projet : direction, entreprise, idée, initiative, motif, plan
Document : catalogue, tableau, contrat, fiche, formulaire, mode demploi, rapport, texte
b- Quelques adjectifs « bateaux » (suggestion de synonymes à choisir selon le contexte)
Important : considérable, décisif, central, crucial, indispensable, majeur, nécessaire, obligatoire, primordial,
sérieux
Correct : adapté, juste, régulier, décent, exact, conforme, fidèle, adéquat, approprié
Difficile : ambigu, compliqué, complexe, confus, subtil, pénible, fatigant, gênant
Simple/facile : élémentaire, fondamental, sommaire, concis, laconique, superficiel, abordable, accessible
\section{sources}
Inspiré dun document de Guillaume DE SAUZA à lIUT de Valence, selon les documents suivants :
\begin{itemize}
\item AZOULAY-BISMUTH (Sylvie), Être un pro de le-mail : 7 étapes pour rédiger des e-mails efficaces, Paris, Eyrolles, 2014.
\item CHAUCHEYRAS (Florence) et GABORIAUX (Chloé), LOrthographe après le bac, Paris, Ellipses, 2012.
\item HENNEBERT (Jérôme), dir., Communication DUT, Paris, Nathan, 2010.
\item NISHIMATA (Aline), Savoir rédiger vos e-mails professionnels, Gualino, Issy-les-Moulineaux, 2019 (6e éd.).
\item NISHIMATA (Aline), 100 e-mails professionnels pour bien communiquer, Gualino, Issy-les-Moulineaux, 2019.
\item OULLION (Jean-Michel), LOrthographe sans se fouler, Paris, Marabout, 2010.
\item VERVIER (Anne), Courrier clair : outils et mode demploi pour vos lettres et e-mails, Edi.pro, Liège, 2017.
\end{itemize}
\end{document}

Binary file not shown.

Binary file not shown.

View File

@ -23,7 +23,7 @@ Durée : 1h
\end{exercice} \end{exercice}
\begin{exercice} \begin{exercice}
Créez un fichier texte dont vous choisirez le nom.\\ Créez un fichier texte dont vous choisirez le nom. Attention à bien garder une extention md ou txt sans quoi le type de fichier ne sera pas reconnu~!\\
\fbox{\includegraphics[width=\textwidth]{nouveau_document_texte.png}} \fbox{\includegraphics[width=\textwidth]{nouveau_document_texte.png}}
\end{exercice} \end{exercice}
@ -50,7 +50,17 @@ Durée : 1h
\section{Partage avec une autre instance} \section{Partage avec une autre instance}
\begin{exercice} \begin{exercice}
Choisissez un binôme dans le groupe qui est sur une autre instance Nextcloud. Choisissez un binôme dans le groupe qui est sur une autre instance Nextcloud.
Partagez lui votre dossier en lecture seule à laide de son identifiant nextcloud. Partagez lui votre dossier en lecture seule à laide de son identifiant nextcloud.\\
Pour ce faire, vous devrez partager le dossier comme à lexercice précédent, en utilisant un identifiant composé du nom dutilisateur et de ladresse du service. Par exemple : seconde3@educloud.jean-cloud.net
\end{exercice} \end{exercice}
% ---
%\section{Partager une photo}
%\begin{exercice}
% Téléchargez une photo sur le web et enregistrez la sur votre ordinateur. Envoyez la ensuite dans votre dossier nextcloud.
%\end{exercice}
%
%\begin{exercice}
% Partagez cette photo avec un ou une autre élève (demandez-lui son compte). Quels permissions donnez-vous à ce partage ? Vérifiez quil ou elle a bien accès à votre photo.
%\end{exercice}
\end{document} \end{document}

View File

@ -0,0 +1,5 @@
# Comment faire un QCM pronote juste.
## Sil est à faire à la maison
- Le compter comme un bonus (sil contient une erreur, rien nest modifiable).
- Laisser tout le trimestre pour y répondre : Les élèves raccrochent parfois à des moments aléatoires, on leur laisse leur rythme.

Binary file not shown.

View File

@ -41,15 +41,15 @@ Parmi ces registres, nous allons utiliser les trois suivants :
\begin{description} \begin{description}
\item[RI] le registre d'instruction ; il contient l'instruction en cours ; \item[RI] le registre d'instruction ; il contient l'instruction en cours ;
\item[CO] le compteur ordinal ; il contient l'adresse de la prochaine instruction à exécuter ; \item[CO] le compteur ordinal ; il contient l'adresse de la prochaine instruction à exécuter ;
\item[AC] l'accumulateur ; registre de l'UAL chargé de stocker une des opérandes avant l'exécution puis le résultat de l'opération. \item[ACC] l'accumulateur ; registre de l'UAL chargé de stocker une des opérandes avant l'exécution puis le résultat de l'opération.
\end{description} \end{description}
% --- % ---
\section{Les instructions} \section{Les instructions}
Un processeur est capable dexécuter des instructions. Un processeur est capable dexécuter des instructions.
\begin{definition} \begin{definition}
Le \textbf{langage machine} est une succession de bits qui est interprétable par le processeur d'un ordinateur.\\ Le \textbf{langage machine} est un ensemble dinstructions binaire que le processeur peut suivre.\\
Un \textbf{langage assembleur} est le langage machine machine ou des combinaisons de bits sont représentées par des "symboles" qu'un être humain peut mémoriser. Un \textbf{langage assembleur} est la version lisible (par les humain·e·s) de ce langage binaire.
\end{definition} \end{definition}
Un langage assembleur est souvent spécifique un type de processeur. Un langage assembleur est souvent spécifique un type de processeur.
@ -57,16 +57,17 @@ Un langage assembleur est souvent spécifique un type de processeur.
\begin{tabular}{l|l|l} \begin{tabular}{l|l|l}
Instruction machine & Instruction Assembleur & Effet \\ Instruction machine & Instruction Assembleur & Effet \\
\hline \hline
0000 xxxx & LD X & Lit le contenu de la cellule X (ACC ← \#X) \\ 0000 aaaa & LD A & Lit le contenu de la cellule A (ACC ← A) \\
0001 xxxx & STO X & Enregistre dans la cellule X (\#X ← ACC) \\ 0001 aaaa & STO A & Enregistre dans la cellule A (A ← ACC) \\
0010 xxxx & ADD X & Ajoute le contenu de la cellule X (ACC ← ACC + \#X) \\ 0010 aaaa & ADD N & Ajoute le contenu de la cellule A (ACC ← ACC + N) \\
0011 xxxx & SUB X & Soustrait le contenu de la cellule X (ACC ← ACC - \#X) \\ 0011 aaaa & SUB N & Soustrait le contenu de la cellule A (ACC ← ACC - N) \\
0100 aaaa & JMP ADR & Saute à l'adresse ADR (CO ← A) \\ 0100 aaaa & JMP A & Saute à l'adresse A (CO ← A) \\
0101 aaaa & JMPZ ADR & Saute à l'adresse ADR si nul \\ 0101 aaaa & JMPZ A & Saute à l'adresse A (CO ← A) si ACC = 0\\
0110 aaaa & JMPP ADR & Saute à l'adresse ADR si positif \\ 0110 aaaa & JMPP A & Saute à l'adresse A (CO ← A) si ACC > 0 \\
0111 aaaa & JMPN ADR & Saute à l'adresse ADR si négatif \\ 0111 aaaa & JMPN A & Saute à l'adresse A (CO ← A) si ACC < 0 \\
\end{tabular} \end{tabular}
\caption{Un exemple de langage machine, dont une opération est numérotée sur 4 bits et un paramètre sur 4 bits également.} \caption{Un exemple de langage machine, dont une opération est numérotée sur 4 bits et un paramètre sur 4 bits également.\\
\#A signifie, la valeur de la case dadresse A.}
\end{figure} \end{figure}
Voici un exemple détat de la mémoire et des registres. Voici un exemple détat de la mémoire et des registres.
@ -84,14 +85,14 @@ Que va faire le processeur ainsi démarré ?
10 & STO 2 \\ 10 & STO 2 \\
11 & END \\ 11 & END \\
\end{tabular}\hspace{5em} \end{tabular}\hspace{5em}
\begin{tabular}{l|l|l|l|l|l} \begin{tabular}{l|l|l|l}
Étape & RI & CO & Acc & RAM1 & RAM2 \\ Étape & RI & CO & Acc\\
\hline \hline
Initiale & Ø & 8 & Ø & 25 & 14 \\ Initiale & & 8 & \\
1 & & & & & \\ 1 & & & \\
2 & & & & & \\ 2 & & & \\
3 & & & & & \\ 3 & & & \\
4 & & & & & \\ 4 & & & \\
\end{tabular} \end{tabular}
\end{figure} \end{figure}
@ -112,14 +113,14 @@ Complétez le tableau de droite pour simuler les actions du processeur et essaye
10 & STO 2 \\ 10 & STO 2 \\
11 & END \\ 11 & END \\
\end{tabular}\hspace{5em} \end{tabular}\hspace{5em}
\begin{tabular}{l|l|l|l|l|l} \begin{tabular}{l|l|l|l}
Étape & RI & CO & Acc & RAM1 & RAM2 \\ Étape & RI & CO & Acc \\
\hline \hline
Initiale & & 8 & & & \\ Initiale & & 8 & \\
1 & & & & & \\ 1 & & & \\
2 & & & & & \\ 2 & & & \\
3 & & & & & \\ 3 & & & \\
4 & & & & & \\ 4 & & & \\
\end{tabular} \end{tabular}
\end{figure} \end{figure}
@ -139,21 +140,24 @@ Complétez le tableau de droite pour simuler les actions du processeur et essaye
10 & JMP 8 \\ 10 & JMP 8 \\
11 & END \\ 11 & END \\
\end{tabular}\hspace{5em} \end{tabular}\hspace{5em}
\begin{tabular}{l|l|l|l|l|l} \begin{tabular}{l|l|l|l}
Étape & RI & CO & Acc & RAM1 & RAM2 \\ Étape & RI & CO & Acc \\
\hline \hline
Initiale & & 8 & & & \\ Initiale & & 8 & \\
1 & & & & & \\ 1 & & & \\
2 & & & & & \\ 2 & & & \\
3 & & & & & \\ 3 & & & \\
4 & & & & & \\ 4 & & & \\
5 & & & & & \\ 5 & & & \\
6 & & & & & \\ 6 & & & \\
7 & & & & & \\ 7 & & & \\
8 & & & & & \\ 8 & & & \\
\end{tabular} \end{tabular}
\end{figure} \end{figure}
\subsection{Exercice}
\textbf{Bonus.}
Écrire un programme en langage assembleur qui récupère la valeur en RAM à ladresse 0, à ajoute 1 et stock le résultat à ladresse 0.
\subsection{Exercice} \subsection{Exercice}
\textbf{Bonus.} Voici un exemple détat de la mémoire et des registres. \textbf{Bonus.} Voici un exemple détat de la mémoire et des registres.
@ -174,18 +178,18 @@ Complétez le tableau de droite pour simuler les actions du processeur et essaye
13 & STO 0 \\ 13 & STO 0 \\
14 & END \\ 14 & END \\
\end{tabular}\hspace{5em} \end{tabular}\hspace{5em}
\begin{tabular}{l|l|l|l|l|l} \begin{tabular}{l|l|l|l}
Étape & RI & CO & Acc & RAM1 & RAM2 \\ Étape & RI & CO & Acc \\
\hline \hline
Initiale & & 8 & & & \\ Initiale & & 8 & \\
1 & & & & & \\ 1 & & & \\
2 & & & & & \\ 2 & & & \\
3 & & & & & \\ 3 & & & \\
4 & & & & & \\ 4 & & & \\
5 & & & & & \\ 5 & & & \\
6 & & & & & \\ 6 & & & \\
7 & & & & & \\ 7 & & & \\
8 & & & & & \\ 8 & & & \\
\end{tabular} \end{tabular}
\end{figure} \end{figure}

30
nsi/web_html/index.html Normal file
View File

@ -0,0 +1,30 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf8" />
<title>Le titre de la fenêtre</title>
<!-- La ligne suivante demande au navigateur de télécharger une feuille de style au format CSS nommée mon_style.css -->
<link rel="stylesheet" type="text/css" href="mon_style.css" />
</head>
<body>
<!-- Écrivez le contenu de votre page au format HTML ici -->
<h1>Vivre les camemberts normands</h1>
<p id="paragraphe" >Merci davoir lu cette magnifique page web…</p>
<button onclick="this.innerText = Date()">Quelle heure est il ?</button>
<!-- Voici comment faire un lien : -->
<a href="https://google.fr">Ceci est un lien vers la recherche de Google</a>
<!-- Voici comment ajouter une image : -->
<!-- width est la largeur, height est la hauteur -->
<!-- Mettre que height ou que width permet de garder les proportions de l'image -->
<img width="200px" height="100px" src="https://lechariotafromages.fr/665-large_default/camembert-de-normandie.jpg" />
<!-- Mettez bien votre nom ici -->
<footer>Page créée par Jaune Attend pour le cours de SNT au lycée Buissonnier</footer>
<!-- La ligne suivante exécute le javascript du fichier script.js -->
<script src="script.js"></script>
</body>
</html>

3
nsi/web_html/script.js Normal file
View File

@ -0,0 +1,3 @@
document.getElementById('paragraphe').innerText="lol"
document.getElementById('paragraphe').style="color:red;"

View File

@ -0,0 +1,186 @@
----------------------- Recherche d'un élément dans un tableau -----------------------
Données :
L un tableau de nombre
N le nombre d'éléments dans le tableau
E l'élément que l'on cherche
Résultat :
Vrai : si l'élément est dans le tableau
Faux : S'il n'y est pas
Algorithme :
pour compteur allant de 0 à N-1 faire
si L[compteur] <- E alors
on renvoie Vrai et on termine le programme
finsi
finpour
on renvoie Faux
----------------------- Calcul de la moyenne des nombre d'un tableau -----------------------
Données :
L un tableau de nombre
N le nombre d'éléments dans le tableau
Résultat :
la moyenne des éléments de L
Algorithme :
M <- 0
compteur <- 0
pour compteur allant de 0 à N-1 faire
M <- M+L[compteur]
finpour
M <- M/N
----------------------- Calcul de la somme des nombres d'un tableau -----------------------
Données :
L un tableau de nombre
N le nombre d'éléments dans le tableau
Résultat :
la somme des éléments de L
Algorithme :
<- 0
compteur <- 0
pour compteur allant de 0 à N-1 faire
m <- M+L[compteur]
finpour
----------------------- Recherche du minimum d'un tableau -----------------------
Données :
L un tableau de nombre
N le nombre d'éléments dans le tableau
Résultat :
le minimum des éléments de L
Algorithme :
<- L[0]
compteur <- 0
pour compteur allant de 0 à N-1 faire
si M > L[compteur] alors
M <- L[compteur]
finsi
finpour
----------------------- Tri par sélection -----------------------
Données :
T : Un tableau déléments indexés de 0 à N-1
Résultat :
T : Le tableau sera trié
Algorithme :
N <- longeur(T)
pour i allant de 0 à N-2 faire
Imin <- i
pour j allant de i+1 à N-1 faire
si T[j] < T[Imin] alors
Imin <- j
finsi
finpour
échanger T[i] et T[Imin]
finpour
----------------------- Tri par insertion -----------------------
Données :
T : Un tableau déléments indexés de 0 à N-1
Résultat :
T : Le tableau sera trié
Algorithme :
N <- longeur(T)
pour i allant de 1 à N-1 faire
j <- i
tant que j>0 et T[j] > T[j-1] faire
échanger T[j] et T[j-1]
j <- j-1
fintantque
finpour
----------------------- Recherche dichotomique -----------------------
Données :
L : un tableau trié par ordre croissant et non vide, indexé de 0 à N-1
El : l'élément que l'on cherche
Résultat :
Trouvé : Si l'élément est dans le tableau
Pas trouvé : Sinon
Algorithme :
Bmin <- 0
Bmax <- longueur(L)-1
tant que Bmin <= Bmax faire
med <- (Bmin+Bmax) // 2
si L[med] > El alors
Bmax <- med-1
sinon si L[med] < El alors
Bmin <- med+1
sinon faire
renvoyer 'Trouvé'
finsi
fintantque
renvoyer 'Pas trouvé'
----------------------- Rendu de monaie -----------------------
Données :
P le tableau de pièces que l'on peut rendre
arendre le montant à rendre
Algorithme :
pour compteur allant de 0 à longueur(L):
tant que P[compteur] <= arendre faire
rendre P[compteur]
arendre <- arendre - P[compteur]
fintantque
finpour
----------------------- K plus proches voisins -----------------------
Notes :
- Seul le principe est à connaitre, pas le calcul spécifique de la distance.
Données :
T un tableau (0,N-1) contenant les données dentrainement
Chaque élément du tableau est un tuple contenant la position sur le
graphique et la classe : (X, Y, nom)
E un élément dont on connait la position et dont on veut estimer la classe
Cest également un tuple mais sans classe : (X, Y)
k le nombre de voisins dont on va regarder la classe
Algorithme :
# Ce tableau contiendra des tuples (distance, classe)
distances <- tableau vide de taille N
pour i allant de 0 à N-1 faire
distances[i] <- ( racine( (E[0]-T[i][0])^2 + (E[1]-T[i][1])^2) , T[i][2])
finpour
distances_triées <- distances trié par distance croissante
voisins <- []
pour i allant de 0 à k-1 faire
voisins <- voisins suivi de distances_triées[i][1]
finpour
Compter le nombre doccurence de chaque classe dans le tableau voisins
classe <- la classe avec le plus doccurences
renvoyer classe

View File

@ -0,0 +1,43 @@
\documentclass[11pt,a4paper]{../../template/template_cours}
\usepackage{enumitem} % pour reprendre des énums en cours
\title{Contrôle}
\author{Adrian Amaglio}
\def\thesequence{Les algorithmes}
\def\thelevel{NSI première}
\begin{document}
\maketitle
Tout moyen de communication, appareil électronique ou document est interdit. Toute triche engendrera des points en moins sur la note finale.\\
\subsection*{Moyenne dun tableau}
\terseQ{Écrivez un algorithme permettant de calculer la moyenne des éléments dun tableau.}\\
\terseQ{Quelle est sa complexité dans le meilleur cas, le pire cas et en moyenne ?}
\subsection*{Tri par sélection}
\terseQ{Expliquez le principe du tri par sélection.}\\
\terseQ{Écrivez un algorithme de tri par sélection.}\\
\terseQ{Quelle est sa complexité dans le meilleur cas, le pire cas et en moyenne ?}\\
\terseQ{Montrez la correction de cet algorithme de tri.}
Vous utiliserez comme invariant le fait que la partie gauche du tableau est toujours triée.
Si votre boucle principale va de i à N (la taille du tableau), linvariante sera la proposition suivante :\\
Le tableau est trié entre les indices 0 et i.
\subsection*{Recherche dichotomique}
\terseQ{Expliquez le principe de la recherche dichotomique.}\\
\terseQ{Écrivez lalgorithme de recherche dichotomique.}\\
\terseQ{Montrer la terminaison de cet algorithme.}
Vous pourrez utiliser le variant suivant : borne\_max - borne\_min décroit strictement à chaque tour de boucle.
\subsection*{K plus proches voisins}
\terseQ{Expliquez le principe de lalgorithme des K plus proches voisins.}\\
\terseQ{Écrivez lalgorithme des K plus proches voisins.}
Vous pouvez rester vague dans les instructions comme vu en cours.\\
\terseQ{Quelle est sa complexité dans le meilleur, le pire cas et en moyenne ?}
\subsection*{Rendu de monnaie}
\terseQ{Expliquez le principe de lalgorithme du rendu de monnaie.}\\
\terseQ{Écrivez cet algorithme.}\\
\terseQ{\textit{Bonus} Lorsquon limplémente ne python quel problème rencontre-t-on si lon souhaite rendre 2,85  ?}
\end{document}

View File

@ -0,0 +1,11 @@
Barème de notation :
- Votre programme devra être découpé en plusieurs fonctions, chaque fonction doit avoir un rôle donné. /3
- Chaque fonction devra avoir sa « docstring » qui précisera le rôle et le type de chaque paramètre. /3
- Quand cest pertinent, les fonctions devront fixer des préconditions sur les paramètres à laide de linstruction « assert » /2
- Quand cest pertinent, les fonctions devront fixer des postconditions sur leur résultat à laide de linstruction « assert » /2
- Chaque fonction devra être testée individuellement (ce que lon appelle des tests unitaires) à laide de linstruction « assert ». /3
- Votre programme devra avoir une interface graphique (avec tkinter par exemple) /3
- votre programme a au moins un bouton qui provoque un changement lorsquil est cliqué /2
- votre programme a au moins un texte qui change après une action dun·e utilisateur·ice /2
- Bonus : Votre programme peut aussi être lancé avec une interface texte (pas de fenêtre, juste des print et des input) /2
- Bonus : Votre programme fonctionne bien /2

View File

@ -0,0 +1,57 @@
from tkinter import *
###############################################################################
# Fonction de navigation entre les fenêtres
###############################################################################
def afficher_fenetre1():
racine.withdraw() # cacher la fenetre racine
fenetre1.deiconify() # afficher la fenetre1
def afficher_racine():
fenetre1.withdraw() # cacher la fenetre racine
racine.deiconify() # afficher la fenetre1
###############################################################################
# Définitions de la fenêtre racine
###############################################################################
# La fenêtre racine. Il ne peut y en avoir quune.
racine = Tk()
# On met un label sur la racine pour identifier la fenêtre.
label1 = Label(racine, text="""Ceci est la fenêtre racine, lapplication se termine lorsquon la ferme.""")
label1.pack()
# On a un bouton qui ouvre une nouvelle fenetre
button1 = Button(racine, text="afficher", command=afficher_fenetre1)
button1.pack()
###############################################################################
# Définitions de la fenêtre 1
###############################################################################
# On peut créer autant de fenêtres toplevel que lon veut
fenetre1 = Toplevel(racine)
label2 = Label(fenetre1, text="""Ceci est une fenêtre en plus, la fermer naffectera pas les autres.""")
label2.pack()
# Un bouton pour quiter le programme. Il appelle la fonction racine.quit()
bouton_quiter = Button(fenetre1, text="quiter", command=racine.quit)
bouton_quiter.pack()
# Un bouton qui revient à la fenetre racine
bouton_racine = Button(fenetre1, text="Retour", command=afficher_racine)
bouton_racine.pack()
# On cache la fenetre1
fenetre1.withdraw()
###############################################################################
# Démarrage du programme
###############################################################################
racine.mainloop()

View File

@ -0,0 +1,44 @@
from tkinter import *
###############################################################################
# Fonctions de la fenêtre 1
###############################################################################
def start_game():
print('lol')
fen1.quit()
fen2.mainloop()
###############################################################################
# Définition de la fenêtre 1
###############################################################################
fen1=Tk()
fen1.title("Accueil")
t1=Label(fen1,text="")
t1.grid(row=0,column=0)
j1=Entry(fen1,bg="grey",bd=4)
j1.grid(row=2,column=0)
b1=Button(fen1,text="entrer", command=start_game)
b1.grid(row=2,column=1)
###############################################################################
# Définition de la fenêtre 1
###############################################################################
fen2=Tk()
fen2.title("Page de jeu")
b1=Button(fen2,text="PIERRE")
b1.grid(row=2,column=1)
b2=Button(fen2,text="FEUILLE")
b2.grid(row=2,column=2)
b3=Button(fen2,text="CISEAUX", command=fen2.quit)
b3.grid(row=2,column=3)
if __name__ == '__main__':
fen1.mainloop()

Binary file not shown.

View File

@ -37,7 +37,7 @@ left(45)
\section{Triangles, carrés et plus si affinités} \section{Triangles, carrés et plus si affinités}
Voici un programme Python qui trace deux traits de 100 pixels Voici un programme Python qui trace deux traits de 50 pixels
\begin{example} \begin{example}
\begin{minted}{python} \begin{minted}{python}
forward(50) forward(50)
@ -52,11 +52,11 @@ forward(50)
\end{exercice} \end{exercice}
\begin{exercice} \begin{exercice}
Complétez ce programme pour quil affiche un triangle. Complétez ce programme pour quil dessine un triangle.
\end{exercice} \end{exercice}
\begin{exercice} \begin{exercice}
Modifiez ce programme Python pour quil dessine un carré (polygone régulier à 4 côtés). Modifiez maintenant ce programme Python pour quil dessine un carré (polygone régulier à 4 côtés).
\end{exercice} \end{exercice}
\begin{exercice} \begin{exercice}
@ -67,7 +67,7 @@ forward(50)
% %
\section{Répétons des instructions} \section{Répétons des instructions}
\begin{example} \begin{example}
Vous aurez remarqué que pour tracer des polygones, on copie colle les instructions forward et left. Vous aurez remarqué que pour tracer des polygones, on répète les instructions forward et left.
Pour éviter cette pratique inefficace, nous allons utiliser une boucle pour répéter des instructions. Pour éviter cette pratique inefficace, nous allons utiliser une boucle pour répéter des instructions.
Par exemple, le programme suivant trace un triangle en répétant trois fois les instructions forward et left. Par exemple, le programme suivant trace un triangle en répétant trois fois les instructions forward et left.
\begin{minted}{python} \begin{minted}{python}
@ -109,7 +109,7 @@ for compteur in range(nb_cotes):
\section{Écrire un sous-programme} \section{Écrire un sous-programme}
Pour tracer plusieurs polygone, il nous faudrait copier-coller notre programme. Pour tracer plusieurs polygone, il nous faudrait répéter notre programme.
Le résultat serait difficile à lire et donc à comprendre… Le résultat serait difficile à lire et donc à comprendre…
Nous allons créer une fonction (cest un sous-programme) capable de tracer nimporte quel polygone. Nous allons créer une fonction (cest un sous-programme) capable de tracer nimporte quel polygone.
Nous pourrons alors exécuter ce sous-programme dès que besoin. Nous pourrons alors exécuter ce sous-programme dès que besoin.
@ -141,11 +141,12 @@ end_fill()
Écrivez un programme qui trace un damier de 6 cases par 6 cases. Écrivez un programme qui trace un damier de 6 cases par 6 cases.
Les couleurs des cases doivent alterner blanc et noir. Les couleurs des cases doivent alterner blanc et noir.
\\\textbf{Faites vérifier le programme par le professeur} \\\textbf{Faites vérifier le programme par le professeur}
\\Indices : \\Étapes conseillées :
\begin{itemize} \begin{itemize}
\item Écrivez une fonction carre() traçant un carré et carreN() traçant un carré noir. Vous pourrez ainsi construire le damier à laide de ces deux fonctions. \item Écrivez une fonction carreB() traçant un carré et carreN() traçant un carré noir. Vous pourrez ainsi construire le damier à laide de ces deux fonctions.
\item Écrivez une fonction ligne() qui trace une ligne de damier. \item Écrivez une fonction ligneB() qui trace une ligne de damier (cest à dire 3 carrés noirs alternés avec 3 carrés blancs) qui commence par un carré blanc.
\item Essayez ensuite dexécuter la fonction ligne() pour tracer le damier. \item Écrivez une fonction ligneN() qui trace une ligne de damier qui commence par un carré noir.
\item Essayez ensuite dexécuter plusieurs fois les fonctions ligneB() et ligneN() pour tracer le damier.
\end{itemize} \end{itemize}
\end{exercice} \end{exercice}

View File

@ -5,3 +5,10 @@ https://gitlab.com/eskool/profs-info
https://groupes.renater.fr/sympa/arc/numerique-sciences-informatiques https://groupes.renater.fr/sympa/arc/numerique-sciences-informatiques
https://groupes.renater.fr/sympa/arc/sciences-numeriques-technologie https://groupes.renater.fr/sympa/arc/sciences-numeriques-technologie
https://nsi.xyz/category/projets/ https://nsi.xyz/category/projets/
commandes ssh
https://overthewire.org/wargames/bandit/bandit33.html
python web
http://modpython.org/live/current/doc-html/tutorial.html#a-quick-start-with-the-publisher-handler

View File

@ -1,331 +0,0 @@
\documentclass[a4paper]{article}
\usepackage[utf8x]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{listings}
\usepackage[francais,bloc,completemulti]{automultiplechoice}
\begin{document}
\setdefaultgroupmode{withoutreplacement}
\element{navmdr}{
\begin{questionmult}{navigateur}
À quoi sert un navigateur ?
\begin{reponses}
\bonne{À télécharger des documents sur le web}
\bonne{À afficher des pages web}
\mauvaise{À trouver des sites web selon des mots clés}
\mauvaise{À remplacer parfois le moteur de recherche}
\end{reponses}
\end{questionmult}
}
\element{navmdr}{
\begin{question}{mdr}
À quoi sert un moteur de recherche ?
\begin{reponses}
\mauvaise{À télécharger des documents sur le web}
\mauvaise{À afficher des pages web}
\bonne{À trouver des sites web selon des mots clés}
\mauvaise{À remplacer parfois le navigateur}
\end{reponses}
\end{question}
}
\element{urls}{
\begin{question}{protocole}
On considère lURL suivante : \textit{https://www.ecosia.org/search?q=framasoft}\\
Le morceau dURL \textit{https://} est appellé :
\begin{reponses}
\bonne{Le protocole}
\mauvaise{Le nom ou ladresse du serveur}
\mauvaise{Le chemin}
\mauvaise{Les paramètres}
\mauvaise{LURL}
\mauvaise{La recherche}
\end{reponses}
\end{question}
}
\element{urls}{
\begin{question}{adresse}
On considère lURL suivante : \textit{https://framasoft.org/fr/}\\
Le morceau dURL \textit{framasoft.org} est appellé :
\begin{reponses}
\mauvaise{Le protocole}
\bonne{Le nom ou ladresse du serveur}
\mauvaise{Le chemin}
\mauvaise{Les paramètres}
\mauvaise{LURL}
\mauvaise{La recherche}
\end{reponses}
\end{question}
}
\element{urls}{
\begin{question}{url}
On considère lURL suivante : \textit{https://framasoft.org/fr/}\\
Le morceau dURL \textit{/fr/} est appellé :
\begin{reponses}
\mauvaise{Le protocole}
\mauvaise{Le nom ou ladresse du serveur}
\bonne{Le chemin}
\mauvaise{Les paramètres}
\mauvaise{LURL}
\mauvaise{La recherche}
\end{reponses}
\end{question}
}
\element{urls}{
\begin{question}{param}
On considère lURL suivante : \textit{https://www.mon-ent-occitanie.fr/sg.do?PROC=CHARTE\_UTILISATION}\\
Le morceau dURL \textit{?PROC=CHARTE\_UTILISATION} est appellé :
\begin{reponses}
\mauvaise{Le protocole}
\mauvaise{Le nom ou ladresse du serveur}
\mauvaise{Le chemin}
\bonne{Les paramètres}
\mauvaise{LURL}
\mauvaise{La recherche}
\end{reponses}
\end{question}
}
\element{urls}{
\begin{question}{secure}
On considère lURL suivante : \textit{http://julesguesde.fr}\\
Cette URL est-elle sécurisée et pourquoi ?
\begin{reponses}
\bonne{Non car elle commence par http}
\mauvaise{Oui car elle commence par http}
\mauvaise{Oui car cest le site du lycée}
\mauvaise{Non car cest le site du lycée}
\end{reponses}
\end{question}
}
\element{cookies}{
\begin{question}{cookie}
Concrètement, quest-ce quun cookie ?
\begin{reponses}
\bonne{Un petit texte}
\mauvaise{Un logiciel espion}
\mauvaise{Un petit biscuit numérique}
\end{reponses}
\end{question}
}
\element{cookies}{
\begin{question}{cookiestore}
Où sont stockés les cookies ?
\begin{reponses}
\bonne{Dans le navigateur}
\mauvaise{Dans le serveur}
\mauvaise{Sur le réseau}
\mauvaise{Dans la page web}
\end{reponses}
\end{question}
}
\element{cookies}{
\begin{question}{cookieask}
Qui demande à stocker des cookies ?
\begin{reponses}
\bonne{Le serveur}
\mauvaise{Le navigateur}
\mauvaise{Le réseau}
\mauvaise{La page web}
\end{reponses}
\end{question}
}
\element{cookies}{
\begin{question}{cookieresend}
Quand est-ce que le cookie est envoyé au serveur ?
\begin{reponses}
\bonne{À chaque requête}
\mauvaise{À la première connexion}
\mauvaise{Quand on se reconnecte au réseau}
\mauvaise{Quand il a besoin de réconfort}
\end{reponses}
\end{question}
}
\element{cookies}{
\begin{questionmult}{cookiegoal}
À quoi sert un cookie ?
\begin{reponses}
\bonne{À identifier une personne sur le web}
\bonne{À enregistrer une préférence}
\mauvaise{À voler des identifiants}
\mauvaise{À décider si la publicité sera affichée}
\end{reponses}
\end{questionmult}
}
\element{cookies}{
\begin{questionmult}{cookiereset}
Comment faire pour être considéré comme une nouvelle personne par les serveurs web ?
\begin{reponses}
\bonne{Passer en navigation privée}
\bonne{Supprimer les cookies}
\mauvaise{Utiliser un VPN}
\mauvaise{Changer de connexion à internet}
\mauvaise{Mettre une veste à capuche et taper très vite au clavier}
\end{reponses}
\end{questionmult}
}
\element{html}{
\begin{questionmult}{titre}
Quel·s sera ou seront le·s titre·s affiché·s en haut de la page web ?
\begin{reponses}
\bonne{Voici un exemple de site web}
\mauvaise{Il est possible d'ecrire du texte sur un site web !}
\mauvaise{Un bel exemple}
\mauvaise{h1}
\mauvaise{title}
\end{reponses}
\end{questionmult}
}
\element{html}{
\begin{question}{paragraphe}
Quelle sera le texte de la page ?
\begin{reponses}
\bonne{Il est possible d'ecrire du texte sur un site web !}
\mauvaise{<p>Il est possible d'ecrire du texte sur un site web !</p>}
\mauvaise{p}
\mauvaise{Un bel exemple}
\end{reponses}
\end{question}
}
\element{html}{
\begin{question}{couleurtext}
Quelle sera la couleur du texte dans le paragraphe ? Vous pourrez vous aider de lannexe 1.
\begin{reponses}
\bonne{Verte}
\mauvaise{Noire}
\mauvaise{Rouge}
\mauvaise{Autre}
\end{reponses}
\end{question}
}
\element{html}{
\begin{question}{couleurtitre}
Quelle sera la couleur du texte dans le titre ? Vous pourrez vous aider de lannexe 1.
\begin{reponses}
\mauvaise{Verte}
\bonne{Noire}
\mauvaise{Rouge}
\mauvaise{Autre}
\end{reponses}
\end{question}
}
\element{html}{
\begin{question}{souligne}
Quel texte sera souligné ? Vous pourrez vous aider de lannexe 1.
\begin{reponses}
\mauvaise{Le paragraphe}
\bonne{Le titre}
\mauvaise{Aucun}
\end{reponses}
\end{question}
}
\exemplaire{25}{
%%% debut de l'en-tête des copies :
\noindent{\bf QCM \hfill SNT : Le web}
\vspace*{.5cm}
\begin{minipage}{.4\linewidth}
\centering\large\bf
Contrôle de SNT sur le web
\end{minipage}
\champnom{\fbox{
\begin{minipage}{.5\linewidth}
Nom et prénom :
\vspace*{.5cm}\dotfill
\vspace*{1mm}
\end{minipage}
}}
\begin{center}\em
LISEZ CE TEXTE ATTENTIVEMENT PLUSIEURS FOIS.
Pour cocher une case il faut la noircir complètement.
Pour anuler, il faut effacer au blanc.
Durée : 30 minutes.
Aucun document n'est autorisé.
Il est interdit dutiliser des outils de calcul autre que votre cerveau.
Il est interdit dutiliser tout moyen de communication (téléphone, papiers, pots de yaourt…)
Les questions faisant apparaître le symbole \multiSymbole{} peuvent
présenter zéro, une ou plusieurs bonnes réponses. Les autres ont
une unique bonne réponse.
Les mauvaises réponses ne rapportent pas de points négatifs.
\end{center}
\vspace{1ex}
%%% fin de l'en-tête
\subsection*{Définitions}
\insertgroup{navmdr}
\subsection*{Cookies}
\insertgroup{cookies}
\subsection*{Les URLs}
\insertgroup{urls}
\newpage
\subsection*{HTML et CSS}
On considère les fichiers html et css suivants :\\
\begin{samepage}
\rule{\linewidth}{1px}
\lstinputlisting[language=HTML]{index.html}
\rule{\linewidth}{1px}
\end{samepage}
\begin{samepage}
\lstinputlisting[language=HTML]{style.css}
\rule{\linewidth}{1px}
\end{samepage}
\insertgroup{html}
\subsection*{Annexe 1 : Quelques règles CSS}
\begin{description}
\item[font-size: 10px;] Spécifie que le texte fera 10 pixels de haut.
\item[color: red;] colorie le texte en rouge.
\item[color: green;] colorie le texte en vert.
\item[border: 1px solid black;] Spécifie un cadre de 1px de couleure noire.
\item[background-color: blue;] Colorie le fond du bloc en bleu.
\item[text-decoration: underline;] souligne le texte.
\item[letter-spacing: 3px;] Fixe lespace entre les lettres à 3 pixels.
\end{description}
Le texte est affiché en noir quand aucune règle CSS ne précise de couleur.
}
\end{document}