###
### Exercice 1 : Compléter le code suivant (...) pour qu'il affiche la table de 2
###

print("---- Table de ", 2, "----")
for i in range(... , ... , ...):
	print(i)

###
### Exercice 2 : Compléter le code suivant (...) pour qu'il affiche la table de 9.
### 			 Votre code sera correct si changer uniquement "table = 9" par "table = 5" vous donne la table de 5.
###

table = 9
print("---- Table de ", table, "----")
for i in range(table, ... , ...):
	print(i)

###
### Exercice 3 : Le code suivant affiche le dessin Pattern 1
###				 Modifier ce code pour qu'il affiche le dessin du Pattern 2
###


print("------------Pattern 1---------")

# Notre triangle a 5 lignes avec des étoiles + une ligne vide, on va boucher 6 fois.
# i prendra successivement les valeurs 0 1 2 3 4 5
for i in range(6):
	
	#On commence l'itération avec une chaine de charactères vide
	txt=""
	
	# On ajoute les *. On ajoute i étoiles à la i-ième itération.
	for _ in range(i):
		txt=txt+"*"
	
	#On affiche la chaine de charactères créée
	print(txt)

"""
------------Pattern 1---------

*
**
***
****
*****
"""

"""
------------Pattern 2---------
*****
****
***
**
*
"""

###
### Exercice 4 : Le code suivant affiche le dessin Pattern 3
###				 Modifer ce code pour qu'il affiche le dessin du Pattern 4
###

print("------------Pattern 3---------")

# Notre triangle a 5 lignes, on va boucher 5 fois
for i in range(5): # i va prendre successivement les valeurs 0 1 2 3 4
	
	# On commence avec une ligne vide
	txt=""
	
	# Boucle pour ajouter les espaces avant les *
	for j in range(5-i-1): 
		txt=txt+" "		 
	
	# Boucle pour ajouter les *
	for k in range(i+1):
		txt=txt+"*"	
	
	# On affiche la ligne une fois que nous l'avons complétée	
	print(txt)
	
"""
------------Pattern 3---------
    *
   **
  ***
 ****
*****
"""

"""
------------Pattern 4---------
*****
 ****
  ***
   **
    *
"""

###
### Exercice 5 : En vous inspirant des codes précédents, réalisez les patterns 5 à 8.
###

"""
------------Pattern 5---------
    *    
   ***   
  *****  
 ******* 
*********
"""

"""
------------Pattern 6---------
*********
 *******
  *****
   ***
    *
"""

"""
------------Pattern 7---------
*****
 *****
  *****
   *****
    *****
"""

"""
------------Pattern 8---------
     *****
    *****
   *****
  *****
 *****
"""

###
### Exercice 6 : Les patterns 11 à 18 sont les patterns 1 à 8 mais vide au milieu. Modifier vos précédents codes.
###				Vous pouvez vous inspirez du code de rectangle creu suivant.
###

"""
------------Pattern 11---------
*
**
* *
*  *
*****
"""


taille = 5 # 2 ou plus

print("------------Rectangle creu de taille ",taille ," ---------")

# On affiche la première ligne, elle ne contient que des étoiles
txt = ""
for i in range(taille):
	txt = txt + "*"
print(txt)

# On génére les lignes creuses
for i in range(taille - 2):
	
	# Notre ligne commence toujours par *
	txt = "*"
	
	# Les espaces sont ajoutés
	for j in range(taille-2):
		txt = txt + " "
	
	# Notre ligne se termine par *		
	txt = txt + "*"
	
	# On affiche notre ligne
	print(txt)

# La dernière ligne est comme la première
txt = ""
for i in range(taille):
	txt = txt + "*"
print(txt)

"""
*****
*   *
*   *
*   *
*****
"""

###
### Exercice 7 : En vous inspirant du code de rectangle creu, modifier vos précédents codes pour que la taille des figures soit contrôlée par une variable taille.
###				

###
### Exercice 8 : En vous inspirant des codes précédents, réalisez le pattern 20, une étoile avec des étoiles.
###

"""
------------Pattern 20---------
*    *    *
 *   *   *
  *  *  *
   * * *
    ***
***********
    ***
   * * *
  *  *  *
 *   *   *
*    *    *
"""

###
### Exercice 9 : Réaliser un programme python qui génére une liste HTML à "nb_ligne" lignes.
### Copier-coller la sortie de votre programme python dans la page HTML Generated_with_python.html pour tester votre resultat.
###

nb_ligne = 3 

print("<!-- génération automatique d'une liste html à", nb_ligne, " lignes. -->")

...

"""
<!-- génération automatique d'une liste html à 3  lignes. -->
<ul>
<li> Item  1 </li>
<li> Item  2 </li>
<li> Item  3 </li>
</ul>
"""

###
### Exercice 10 : Réaliser un programme python qui génére un tableau HTML à "nb_ligne" lignes et "nb_colonne" colonnes.
### Copier-coller la sortie de votre programme python dans la page HTML Generated_with_python.html pour tester votre resultat.
###

nb_ligne = 3 
nb_colonne = 4 

print("<!-- Génération automatique d'un tableau html à", nb_ligne, " lignes et ", nb_colonne, " colonnes. -->")

...



"""
<!-- Génération automatique d'un tableau html à 3  lignes et  4  colonnes. -->
<table>
<tr>
<th> header  1 </th>
<th> header  2 </th>
<th> header  3 </th>
<th> header  4 </th>
</tr>
<tr>
<td> row= 1 , col= 1 </td>
<td> row= 1 , col= 2 </td>
<td> row= 1 , col= 3 </td>
<td> row= 1 , col= 4 </td>
</tr>
<tr>
<td> row= 2 , col= 1 </td>
<td> row= 2 , col= 2 </td>
<td> row= 2 , col= 3 </td>
<td> row= 2 , col= 4 </td>
</tr>
<tr>
<td> row= 3 , col= 1 </td>
<td> row= 3 , col= 2 </td>
<td> row= 3 , col= 3 </td>
<td> row= 3 , col= 4 </td>
</tr>
</table>
"""
