Ir para conteúdo
Fórum Script Brasil
  • 0

Tem como criar um if dinâmico em tempo de execução?


Ricardo Martins

Pergunta

Vamos supor que o usuário tenha as seguintes opções:

1 ( ) 2 ( ) 3 ( )

4 ( ) 5 ( ) 6 ( )

7 ( ) 8 ( ) 9 ( )

Inicialmente, esse quadro de seleções começa em branco e a partir daí o usuário escolhe algum(ns) número(s). Pode ser nenhum, um, vários, todos, enfim, qualquer combinação possível.

O que eu quero fazer é um if no qual só vai ser possível saber a sentença dentro dos parenteses dele em tempo de execução.

Vamos supor que o usuário escolheu esses números:

1 ( x ) 2 ( ) 3 ( )

4 ( ) 5 ( x ) 6 ( )

7 ( ) 8 ( x ) 9 ( )

Nesse caso o if ficaria assim:

if (a== 1 || e== 5 || h== 8)
Vamos supor que o usuário escolheu outros números: 1 ( ) 2 ( x ) 3 ( ) 4 ( x ) 5 ( x ) 6 ( x ) 7 ( ) 8 ( x ) 9 ( ) Nesse caso o if ficaria assim:
if (b== 2 || c== 4 || d== 5 || e== 6 || g== 8)
Caso ele não tenha selecionado nenhum ficaria assim:
if (TRUE)
E caso ele tenha selecionado todos ficaria assim:
if (FALSE)

O que eu quero é um if no qual a sentença dentro dele depende dos dados de entrada do usuário.

Como podem ver, o número de possibilidades de combinações é muito grande, sendo assim, é totalmente inviável criar um if pra cada uma dessas possibilidades.

Eu sei que tem um jeito diferente e talvez até mais fácil de fazer o que o programa se propõe, mas independente disso eu quero aprender coisas diferentes pra serem usadas futuramente em outros programas.

Perguntei pra um amigo meu e ele me disse que em Clipper é possível guardar uma sentença dentro de uma variável. Depois é só colocar essa variável no if que fica como se a sentença estivesse lá.

É possível fazer isso ou algo parecido em C?

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Olá Ricardo,

Se você colocar uma expressão numa variável string e passar pra um if em C , ele sempre vai te retornar verdadeiro independente do conteúdo.

Além do mais, no exemplo que você postou uma matriz, um for e um if resolve o teste de todas as possibilidades mencionadas.

Uma coisa interessante é você trabalhar com funções que tratam um numero variável de parâmetros.

Abs

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...