Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

thiago_php

[Resolvido] exercicio

Recommended Posts

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

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>";


?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

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 ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

é 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 ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

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>";


?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

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/

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.