seria melhor se voce colocasse a questao aqui!   o fato de não da certo o while( num != 3 ) ou != 4, assim em diante..   é porque no seu programa, num fica oscilando entre 1 e 2, o tempo todo. logo, nunca chegará a maior do que 2 sendo assim: loop infinito   é simples, faça passo a passo no papel escrevendo os valores das variaveis em cada linha como se estivesse rodando o programa no papel que você vai notar o que acontece   isso se chama teste de mesa   particularmente, eu digo sem isso, eu não sou ninguém!