Différences entre versions de « Php algo td6 »
Aller à la navigation
Aller à la recherche
(Page créée avec « = Sujet = Sujet_TD6.pdf = Partie A = <div class="toccolours mw-collapsible mw-collapsed" style="width:700px"> <big>Exercice 1</big> <sou... ») |
|||
Ligne 128 : | Ligne 128 : | ||
− | <div class="toccolours mw-collapsible mw-collapsed" style="width: | + | <div class="toccolours mw-collapsible mw-collapsed" style="width:750px"> |
<big>Exercice 7</big> | <big>Exercice 7</big> | ||
<source lang="php" style="border:1px solid black;font-size:130%" class="mw-collapsible-content"> | <source lang="php" style="border:1px solid black;font-size:130%" class="mw-collapsible-content"> |
Version actuelle datée du 27 juin 2014 à 09:07
Sujet
Partie A
Exercice 1
FONCTION ecrire_matrice(MAT)
VAR:
i,j : entiers
POUR i = 0 JUSQU'A i < len(MAT) {PAR PAS DE 1} FAIRE
affiche("[")
POUR j = 0 JUSQU'A j < len(MAT[i]) {PAR PAS DE 1} FAIRE
affiche(MAT[i][j])
SI j != len(MAT[i] - 1) ALORS
affiche(",")
FIN SI
FIN POUR
affiche("]\n")
FIN POUR
FIN FONCTION
Exercice 2
FONCTION luminosite(MAT)
VAR:
i,j,somme, num : entiers
somme <-- 0
num <-- 0
POUR i = 0 JUSQU'A i < len(MAT) {PAR PAS DE 1} FAIRE
POUR j = 0 JUSQU'A j < len(MAT[i]) {PAR PAS DE 1} FAIRE
somme <-- somme + MAT[i][j]
num++
FIN POUR
FIN POUR
RETOURNE somme / num
FIN FONCTION
Exercice 3
FONCTION contraste(MAT, luminosite)
VAR:
i,j : entiers
POUR i = 0 JUSQU'A i < len(MAT) {PAR PAS DE 1} FAIRE
POUR j = 0 JUSQU'A j < len(MAT[i]) {PAR PAS DE 1} FAIRE
SI MAT[i][j] >= luminosite ALORS
SI MAT[i][j]*2 > 100 ALORS
MAT[i][j] <-- 100
SINON
MAT[i][j] <-- MAT[i][j] * 2
FIN SI
SINON
MAT[i][j] <-- MAT[i][j] / 2
FIN SI
FIN POUR
FIN POUR
RETOURNE MAT
FIN FONCTION
Partie B
Exercice 4
function ecrire_matrice($MAT) {
for($i = 0; $i < sizeof ( $MAT ); $i ++) {
print("[");
for($j = 0; $j < sizeof ( $MAT[$i] ); $j ++) {
print($MAT[$i][$j]);
if($j != sizeof($MAT[$i])-1){
print(",");
}
}
print("]\n");
}
}
Exercice 5
function luminosite($MAT){
$luminosite = 0;
$num = 0;
for($i = 0; $i < sizeof ( $MAT ); $i ++) {
for($j = 0; $j < sizeof ( $MAT[$i] ); $j ++) {
$luminosite += $MAT[$i][$j];
$num++;
}
}
return $luminosite / $num;
}
Exercice 6
function contraste($MAT, $luminosite){
for($i = 0; $i < sizeof ( $MAT ); $i ++) {
for($j = 0; $j < sizeof ( $MAT[$i] ); $j ++) {
if($MAT[$i][$j] >= $luminosite){
$MAT[$i][$j] = $MAT[$i][$j] *2;
if($MAT[$i][$j] > 100){
$MAT[$i][$j] = 100;
}
}else{
$MAT[$i][$j] = $MAT[$i][$j] /2;
}
}
}
return $MAT;
}
Exercice 7 <source lang="php" style="border:1px solid black;font-size:130%" class="mw-collapsible-content"> <?php function ecrire_matrice($MAT) {
for($i = 0; $i < sizeof ( $MAT ); $i ++) { print("["); for($j = 0; $j < sizeof ( $MAT[$i] ); $j ++) { print($MAT[$i][$j]); if($j != sizeof($MAT[$i])-1){ print(","); } } print("]\n"); }
}
function luminosite($MAT){
$luminosite = 0; $num = 0; for($i = 0; $i < sizeof ( $MAT ); $i ++) { for($j = 0; $j < sizeof ( $MAT[$i] ); $j ++) { $luminosite += $MAT[$i][$j]; $num++; } } return $luminosite / $num;
}
function contraste($MAT, $luminosite){
for($i = 0; $i < sizeof ( $MAT ); $i ++) { for($j = 0; $j < sizeof ( $MAT[$i] ); $j ++) { if($MAT[$i][$j] >= $luminosite){ $MAT[$i][$j] = $MAT[$i][$j] *2; if($MAT[$i][$j] > 100){ $MAT[$i][$j] = 100; } }else{ $MAT[$i][$j] = $MAT[$i][$j] /2; } } } return $MAT;
}
function main(){
$MAT= array( array(0,0,100,50), array(0,0,100,100), array(20,35,50,75));
echo "La matrince MAT est: \n"; echo ecrire_matrice($MAT);
$luminosite = luminosite($MAT); echo "La luminosité de MAT est: ".$luminosite."\n";
$contraste = contraste($MAT, $luminosite); echo "La matrince constraste est: \n"; echo ecrire_matrice($contraste);
}
main();