Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
pessoal tentando fazer um exercicio mais nao estou conseguindo se alguem poder dar uma forca, tenho que gerar com php essa imagem
valeu galera
tentei fazer com for mas nao rolou provavelmente pq nao sei fazer rs se puder dar pelo menos uma base ajudaria
de qualquer forma valeu
Poste como tentou que a gente pode tentar te dar um caminho. Mas você precisa começar alguma coisa.
Carlos Eduardo
como nao tenho muito conhecimento em php fica mais dificil, vou ver se consigo fazer algo e postar aqui ...
entao pessoal isso foi o que consegui fazer agora travou tudo rs
<?php
$x = "+";
$y = "-";
$col = 9;
$lin = 9;
echo "<table border='1'>";
for ($i=0;$i<$lin;$i++){
echo "<tr>\n";
for($j=0; $j<$col; $j++){
echo $j;
if($i==$j){
$bgcolor="#000";
}else{
$bgcolor="#ccc";
}
if($i==4){
echo " <td bgcolor='".$bgcolor."' width='50' height='50' align='center' >".$x."</td>\n";
}else{
if($j==4){
echo " <td bgcolor='".$bgcolor."' width='50' height='50' align='center' >".$x."</td>\n";
}else{
echo " <td bgcolor='".$bgcolor."' width='50' height='50' align='center' >".$y."</td>\n";
}
}
}
echo "</tr>\n";
}
echo "</table>";
?>E ai pessoal algum pro pra ajudar comecei mas nao consegui terminar e tambem nao sei se é por este caminho se alguem poder dar um help agradeço
valeu
qual é a descrição exata do exercicio ? você tem q gerar uma imagem ? (arquivo jpg), ou tem que chegar nesse resultado com table html mesmo ?
explique melhor, além disso, é a imagem q está estranha, ou cada x e - tem uma cor (vermelho e preto) mesmo ?
William Bruno
nao tenho que gerar jpg, é com tabela html do jeito que comecei e nao consegui terminar.
tenho que gerar esse quadradro com o sinal de + e - e no meio formar um X com a cor de fundo preto, e o + e - a cor muda de vermelho e preto.
Comecei ai depois travou e nao saiu disso
valeu
é um quadrado de 9 por 9 certo ?
imagina ele assim, como uma matriz:
1,1 - 1,2 - 1,3
2,1 - 2,2 - 2,3 ..
entendeu?
o primeiro numero é a linha, e segundo é a coluna.
você já coloriu a diagonal q vai da esquerda para a direita.
[ 11, 22, 33, 44, 55, 66, 77, 88 e 99 ]
agora você tem q colorir a outra diagonal
[ 19, 28, 37, 46, 55, 64, 73, 82, 91 ]
certo ?
oque você nota desses números ?
entao fiz assim conceteza nao é a melhor forma, estou tentando simplificar, de uma forma ou de outra saiu aceito sugestao p/ melhoria
agrdeço aos que ajudaram
<?php
$x = "+";
$y = "-";
$col = 10;
$lin = 10;
$d1 = array(11, 22, 33, 44, 55, 66, 77, 88, 99, 19, 28, 37, 46, 55, 64, 73, 82, 91);
$red = array(15,19,22,35,37,44,51,53,55,57,59,64,75,77,82,95,99);
echo "<table border='0'>";
for ($i=1;$i<$lin;$i++){
echo "<tr>\n";
for($j=1; $j<$col; $j++){
if(in_array(($i.$j), $d1)){
$bgcolor="#000";
}else{
$bgcolor="#fff";
}
if(in_array(($i.$j), $red)){
$bgcolor2="red";
}else{
$bgcolor2="#000";
}
if($i==5){
echo " <td bgcolor='".$bgcolor."' style='color:".$bgcolor2.";' width='50' height='50' align='center' >".$x."</td>\n";
}else{
if($j==5){
echo " <td bgcolor='".$bgcolor."' style='color:".$bgcolor2.";' width='50' height='50' align='center' >".$x."</td>\n";
}else{
echo " <td bgcolor='".$bgcolor."' style='color:".$bgcolor2.";' width='50' height='50' align='center' >".$y."</td>\n";
}
}
}
echo "</tr>\n";
}
echo "</table>";
?>sugestão de algoritmo.
Diagonal da direita para a esquerda:
19, => 1+9 = 10
28, => 2+8 = 10
37, => 3+7 = 10
46, => 4+6 = 10
55, => 5+5 = 10
64, => 6+4 = 10
73, => 7+3 = 10
82, => 8+2 = 10
91 => 9+1 = 10
]
e se vale um desafio de verdade, que tal resolver com um único loop?:
[http://wbruno.com.br/blog/2012/01/04/primeiro-desafio-wbruno-de-php/
se do jeito que fiz ja foi chato pra fazer com um loop entao ai lasco, mas é tentando que se aprende.... valeu
Você tentou fazer? Como tentou fazer? Que resultado obteve?
Basicamente o que você vai precisar é um laço de repetição (sugiro um for), alguns ifs e pronto.
Carlos Eduardo