#include <stdio.h>
int main()
{
printf("Hello World\n");
getchar();
return 0;
}
#include <stdio.h>
int main()
{
return 0;
printf("Hello World\n");
getchar();
}
Sim tens razao. Mas agora gostaria que me explicasses isso... O and no pascal neste caso iria fazer com que o programa so saisse caso a escolha fosse 's' e 'n' ao mesmo tempo. Aqui é diferente pk? Acho que nao faz muito sentido. Com o ou seria ou num caso, ou no outro o programa iria sair.(escolha1!='s') || (escolha1!='n')
Esta tua condição deveria ser um and (&&) em vez de um or (||).
Sim tens razao. Mas agora gostaria que me explicasses isso... O and no pascal neste caso iria fazer com que o programa so saisse caso a escolha fosse 's' e 'n' ao mesmo tempo. Aqui é diferente pk? Acho que nao faz muito sentido. Com o ou seria ou num caso, ou no outro o programa iria sair.
Cumpz
Pois a logica é diferente da logica d pascal. E com os ifs como é que isso funciona?
if (foo != max)
foo++;
Nao era bem essa a resposta que queria. Tipo, imagina que tinha isto:nos ifs as condições determinam se corres o ciclo ou não.
Código:if (foo != max) foo++;
se foo fosse 4 e max fosse 5, o ciclo if era executado e foo passava a ser 5.
se foo fosse 5 e max tb o ciclo não era executado.
Nao era bem essa a resposta que queria. Tipo, imagina que tinha isto:
if ((tabela==0) || (tabela==1)
Neste caso qual o comportamento do programa? É que se for como o ciclo while, entao dado a tabela so poder ter 1 valor vai ser impossivel entrar nesse if. Cumpz
Entao, mas se (escolha1=='s') && (escolha1=='n') é impossivel, porque é que quando meti assim resolveu o problema?A lógica no Pascal é igual à do C. É algebra booleana. O que tu tinhas,
(escolha1!='s') || (escolha1!='n')
é equivalente a (pelas leis de Morgan):
!((escolha1=='s') && (escolha1=='n'))
E se reparares, (escolha1=='s') && (escolha1=='n') é impossível, porque escolha1 nunca pode ser 's' e 'n' ao mesmo tempo. Logo, a expressão daria sempre true, nunca saindo do ciclo.
Quanto à tua passagem do Pascal, estás a fazer confusão.
Entao, mas se (escolha1=='s') && (escolha1=='n') é impossivel, porque é que quando meti assim resolveu o problema?
Ok ja vi a falha looooooool n tinha os "!". Duvida idiota. Btw percebe alguma coisa de listas? Nao consigo perceber isso. CUmpznão pode ter resolvido....