Ir para conteúdo

POWERED BY:

Arquivado

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

kaamus

Desenho de X com loop

Recommended Posts

Olá pessoal beleza??

 

Um dia quando fui fazer uma prova pra uma empresa apliacaram um ex para desenhar um X com pontos..

dessa forma:

 

hoje tava pensando como fazer ele e ficou assim:

 

CODE

<?

for($i=0 ; $i<3; $i++){

 

print(".           .<br>");

 

print("   .      .<br>");

 

$i = $i + 2;

 

print("       .     <br>");

 

print("    .     .<br>");

 

print(".           .<br>");

 

}

?>

 

 

não tenho uma noção muito boa de loop por isso usei espaçamento " "

gostaria de saber se eu posso pular espaços percorrendo só com o for ao invés dos espaçamentos que eu dei pra desenhar

 

se alguém puder ajudar nisso!

é só mais uma dúvida, mais enfim.. é um bom ex pra testar raciocionio lógico ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desse jeito você ta fazendo tudo na mão né velho, ai não dá né? Olha fiz um aqui:

 

#include <stdio.h>
#define N 20

int main()
{
	int i,j;
	char m[N][N];
	for(i=0;i<N;i++)
	{	
		for(j=0;j<N;j++)
		{
			m[i][j] = 'x';
		}
	}
	for(i=0;i<N;i++)
	{
		printf("\n");
		for(j=0;j<N;j++)
		{
			printf(" ");
			if( (i == j) || (i + j == N-1) ) //Diagonal Principal e Secundaria
			{
				printf("%c",m[i][j]);
			}
		}
	}
	return(0);
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

#include <stdio.h>
int main() {
 const int M = 15;
 int i,j,k=M-1;
 for(i=0;i<M;i++) {
 for(j=0;j<M;j++) {
	if (i==j && i!=M/2) printf("\\");
	else if(M%2!=0 && j==i && i==M/2) printf("X");
	else if(M%2==0 && j==i && i==M/2) printf("\\");
	else if(j==k) printf("/");
	else printf(" ");
 }
 puts("");
 k--;
 }
}

 

P/ fazer com pontos dá pra simplificar como

 

#include <stdio.h>
int main() {
 const int M = 6;
 int i,j,k=M-1;
 for(i=0;i<M;i++) {
 for(j=0;j<M;j++) {
	if (i==j || j==k) printf(".");
	else printf(" ");
 }
 puts("");
 k--;
 }
}

 

 

O código do groove fica desconjuntado p/ N ímpar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

hahaha!.. muito legal

 

achei um em js tbm..

pô vlw.. vou começar a desenhar com pontos agora.. rsrs ;)

 

 

acho que isso é até bobagem.. mais eh legal :P

Compartilhar este post


Link para o post
Compartilhar em outros sites

A lógica é você utilizar uma matriz, "seleciona" a diagonal principal e secundária. Legal esse teu código pra pegar a diagonal secundária Isis :D

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.