Labirinto
Introdução
O objectivo deste exercício consiste em ler determinadas coordenadas de um ficheiro e gerar o seu output, gerando uma espécie de labirinto. O seguinte exemplo será o input:
1T1b5T
1T2b1T1b2T
1T1b1T2b2T
1T3b1T1b1T
3T3b1T
1T3b1T1b1T
5T1*1T
- 3T = TTT
- 2b = Dois espaços em branco
- 1***** = Character especial
O input poderá ser alterado, desde que seja mantida a respectiva estrutura.
Class Labirinto
Class Labirinto {
function write_lab() {
$file = "lab.in";
$fw = fopen($file, "w");
fwrite($fw, "1T1b5Tn1T2b1T1b2Tn1T1b1T2b2Tn1T3b1T1b1Tn3T3b1Tn1T3b1T1b1Tn5T1*1T");
}
function read_lab() {
$file = "lab.in";
$linhas = file($file);
for ($i = 0; $i < count($linhas); $i++) {
for ($a = 0; $a < 9; $a++) {
switch ($linhas[$i][$a]) {
case $linhas[$i][$a]:
if ($linhas[$i][$a + 1] == 'b') { // b = espaços
echo str_repeat(" ", $linhas[$i][$a]);
break;
} else if ($linhas[$i][$a + 1] == '*') { // * = Character especial
echo str_repeat("*", $linhas[$i][$a]);
break;
}
default:
echo str_repeat("T", $linhas[$i][$a]); // T = letra
break;
}
}
echo "<br>";
}
}
}