# Test Informatique GrizzlyDev - Yanis MIOLLANY
###### tags: `stage` `2022`
## 1) Algorithmie
### Itératif :
```c
fonction Somme(n: entier):
s = 0
si n > 0:
s = (n * (n + 1)) / 2
renvoyer s
```
### Récursif :
```c
fonction Somme(n: entier):
si n < 0:
renvoyer 0
renvoyer n + Somme(n-1)
```
## 2) SQL
### a.
```sql
SELECT a.REFERENCE, qte, COUNT(v.DATEVENTE) AS "nb ventes"
FROM articles a
JOIN ventes v ON a.REFERENCE=v.REFERENCE
GROUP BY a.REFERENCE, a.CATEGORIE
```
5 lignes sont renvoyées
### b.
```sql
SELECT (SUM(prixht * qte) + SUM(totaltva)) AS "prixttc", a.CATEGORIE
FROM articles a
JOIN ventes v ON a.REFERENCE=v.REFERENCE
WHERE YEAR(v.DATEVENTE) = 2019
GROUP BY a.CATEGORIE
HAVING (SUM(prixht * qte) + SUM(totaltva)) > 100
```
1 ligne est renvoyée
### c.
```sql
SELECT MONTHNAME(v.DATEVENTE) AS "mois", (SUM(prixht * qte) + SUM(totaltva)) AS "totalprixttc"
FROM articles a
JOIN ventes v ON a.REFERENCE=v.REFERENCE
WHERE YEAR(v.DATEVENTE) = 2019
GROUP BY MONTH(v.DATEVENTE)
```
a) 3 lignes sont renvoyées<br>
b) Le mois de vente le plus élevé est février (156 euros).<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
## 3) Orthographe
### 1.
**Objet : Report de livraison**
Bonjour,
Je vous prie de m'excuser, je ne pourrais être présent pour livrer l'application, mon train a été annulé.<br>
Seriez-vous disponible le XXXX ?<br>
Cordialement,<br>
Yanis MIOLLANY<br>
entreprise XXX<br>
### 2.
**Objet : Connexion à l'application**
Bonjour,
Je comprends que vous ayez des soucis pour vous conencter à l'application.<br>
Vous trouverez la procédure à suivre via ces captures d'écran :<br>
XXX<br>
XXX<br>
XXX<br>
Merci de me retourner une capture de votre écran si ça ne fonctionne pas.<br>
Cordialement,<br>
Yanis MIOLLANY<br>
entreprise XXX<br>
## 4) Algorithmie
### a) A quoi sert fonction1 ?
La fonction1 retourne un tableau de 20 entier pris aléatoirement entre 0 et 100 inclus.
### b) A quoi sert fonction3 ?
La fonction3 génère un tableau HTML depuis un tableau ($param1) avec sur une première ligne les indices de $param1 et sur une deuxième ligne les valeurs du tableau.
### c) A quoi sert fonction2 ?
La fonction2 tri un tableau d'entier en ordre croissant en permutant chaque élement du tableau.
### d) Quel est le nom de cet algorithme ?
Ce tri est un tri à bulle.
### e) Corriger le programme pour qu'il fonctionne pleinement.
```php
function fonction3($param1, $param2) {
$str = "<TABLE>";
$lig1 = "<TR><TH>Indice</TH><TH>$param2</TH></TR>";
foreach ($param1 as $cle => $val) {
$lig1 .= "<TR><TD>$cle</TD><TD>$val</TD></TR>";
}
$str .= $lig1.$lig2."</TABLE>";
return $str;
}
```