| Exibir mensagem anterior :: Exibir próxima mensagem | 
	
	
		| Autor | Mensagem | 
	
		| joemil Moderador
 
  
 
 Registrado: Quinta-Feira, 25 de Março de 2004
 Mensagens: 9100
 Localização: Sinop-MT
 
 | 
			
				|  Enviada: Qua Jan 04, 2017 10:26 am    Assunto: (In)Lógica Ultra Mega Super Hiper avancada |   |  
				| 
 |  
				| fala galera, o vcs me dizem de um programador q usa esta lógica: 
 
  	  | Código: |  	  | case varBool = False of True: begin
 
 { codigo aqui }
 
 end;
 
 False: begin
 
 { codigo aqui }
 
 end;
 end;
 
 | 
 
 inovador não?
 _________________
 <b>SEMPRE COLOQUE [RESOLVIDO] NO SEU POST</b>
 Enviar imagens: http://tinypic.com/
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| leo_cj Colaborador
 
  
 
 Registrado: Sábado, 26 de Março de 2011
 Mensagens: 1335
 
 
 | 
			
				|  Enviada: Qua Jan 04, 2017 10:39 am    Assunto: |   |  
				| 
 |  
				| Rapaz, nunca vi nada parecido com isso, ele provavelmente está trabalhando em algo bem avançado. 
 realmente, parece bem inovador
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| strak2012 Colaborador
 
  
  
 Registrado: Segunda-Feira, 13 de Janeiro de 2014
 Mensagens: 1518
 Localização: Maceió - AL
 
 | 
			
				|  Enviada: Qua Jan 04, 2017 11:13 am    Assunto: |   |  
				| 
 |  
				| Não entendi o que é estranho no código. Alguém pode explicar.
 _________________
 Tudo podemos quando tudo sabemos!
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| joemil Moderador
 
  
 
 Registrado: Quinta-Feira, 25 de Março de 2004
 Mensagens: 9100
 Localização: Sinop-MT
 
 | 
			
				|  Enviada: Qua Jan 04, 2017 1:51 pm    Assunto: |   |  
				| 
 |  
				| codigo original: 
 
  	  | Código: |  	  | case varBool = False of True: begin
 
 { codigo aqui }
 
 end;
 
 False: begin
 
 { codigo aqui }
 
 end;
 end;
 | 
 
 simplificando a leitura do codigo:
 
 é verdadeiro q a variavel é falsa?
 se é verdadeiro faça ...
 se é falso faça ...
 
 confuso nao??? e ainda tem varios trechos assim kakka
 _________________
 <b>SEMPRE COLOQUE [RESOLVIDO] NO SEU POST</b>
 Enviar imagens: http://tinypic.com/
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| strak2012 Colaborador
 
  
  
 Registrado: Segunda-Feira, 13 de Janeiro de 2014
 Mensagens: 1518
 Localização: Maceió - AL
 
 | 
			
				|  Enviada: Qua Jan 04, 2017 2:37 pm    Assunto: |   |  
				| 
 |  
				| O trecho é confuso a primeira vista sim, contudo explicável da seguinte forma: 
 Existe uma variável verdadeira ou falsa qual quero executar algo quando esta premissa for o inverso sem alterar o valor da variável inicialmente ou seja:
 
 
  	  | Código: |  	  | case varBool = False of // varbool é verdadeiro ou falso e quero que a mesma se mantenha assim para uso em outro ponto qualquer do codigo
 True: begin  // caso variável varbool falso reconheço que devo disparar este bloco
 { codigo aqui }
 end;
 False: begin // caso contrario este outro aqui
 { codigo aqui }
 end;
 end;
 | 
 
 Contudo isso é só forma de escrever o código que pode ser a mesma a mesma coisa que:
 
 
  	  | Código: |  	  | case not varBool of True: begin
 { codigo aqui }
 end;
 False: begin
 { codigo aqui }
 end;
 end;
 | 
 
 Concordo que quem escreveu o código poderia simplesmente fazer:
 
 
  	  | Código: |  	  | case varBool of True: begin
 // escrever aqui o código levando o valor inverso da variável
 end;
 False: begin
 // escrever aqui o código levando o valor inverso da variável
 end;
 end;
 | 
 
 
 Situação desta não é comum ser vista, mais a logica de quem programou, na cabeça de quem programa estar correta hehehehe.
 E por incrível que pareça é funcional apesar de não muito compreensível a primeira vista.
 
 Já trabalhei em códigos o qual existia casos similar o qual existia variáveis booleana o qual testava-se os valores inverso das mesma sem poder alterar seu valores para isso, neste caso o uso do not vem ser uma mão na roda, quando a situação não se dá para contornar em apenas na troca do trecho de blocos como mencionei no ultimo codigo.
 _________________
 Tudo podemos quando tudo sabemos!
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| strak2012 Colaborador
 
  
  
 Registrado: Segunda-Feira, 13 de Janeiro de 2014
 Mensagens: 1518
 Localização: Maceió - AL
 
 | 
			
				|  Enviada: Qua Jan 04, 2017 2:42 pm    Assunto: |   |  
				| 
 |  
				| Ele tb poderia desprezar o uso case e usado uma estrutura de ifs com o comando not o que deixaria as coisa mais clara. 
 
  	  | Código: |  	  | if not varBool then begin
 //
 end else
 begin
 //
 end;
 | 
 _________________
 Tudo podemos quando tudo sabemos!
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| strak2012 Colaborador
 
  
  
 Registrado: Segunda-Feira, 13 de Janeiro de 2014
 Mensagens: 1518
 Localização: Maceió - AL
 
 | 
			
				|  Enviada: Qua Jan 04, 2017 2:47 pm    Assunto: |   |  
				| 
 |  
				| Por fim, falando do programador que escreveu tal código como pedido no post, posso dizer que este programador é iniciante, pois algo do tipo só mesmo sendo iniciante, que ainda estar a conhecer logica de programação, assim escreveu um código que funcionava e não um código melhor compreensível. _________________
 Tudo podemos quando tudo sabemos!
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| joemil Moderador
 
  
 
 Registrado: Quinta-Feira, 25 de Março de 2004
 Mensagens: 9100
 Localização: Sinop-MT
 
 | 
			
				|  Enviada: Qua Jan 04, 2017 3:51 pm    Assunto: |   |  
				| 
 |  
				| eu tb usaria uma das duas formas, mas como ja esta assim. 
  	  | Código: |  	  | case varBool of True: begin
 // escrever aqui o código levando o valor inverso da variável
 end;
 False: begin
 // escrever aqui o código levando o valor inverso da variável
 end;
 end;
 | 
 
 
  	  | Código: |  	  | if not varBool then begin
 //
 end else
 begin
 //
 end;
 | 
 
 e aproveitando, o programador nao é iniciante, tvz nao seja experiente. mas nao vou mexer no codigo. ta funcionando, vai q eu mexo no codigo e da zica kakaka
 _________________
 <b>SEMPRE COLOQUE [RESOLVIDO] NO SEU POST</b>
 Enviar imagens: http://tinypic.com/
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		| joemil Moderador
 
  
 
 Registrado: Quinta-Feira, 25 de Março de 2004
 Mensagens: 9100
 Localização: Sinop-MT
 
 | 
			
				|  Enviada: Qui Jan 05, 2017 4:27 pm    Assunto: |   |  
				| 
 |  
				| to olhando o codigo e to rezando pra NÃO encontrar algo assim: 
 
  	  | Código: |  	  | case NOT(var_boolean = False) of True:
 False:
 end;
 
 | 
 
 meu coracao ja ta acelerado so de pensar huahuahua
 _________________
 <b>SEMPRE COLOQUE [RESOLVIDO] NO SEU POST</b>
 Enviar imagens: http://tinypic.com/
 |  | 
	
		| Voltar ao Topo |  | 
	
		|  | 
	
		|  |