Ir para conteúdo
Fórum Script Brasil

Gadu

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Posts postados por Gadu

  1. aí galera, eu estou começando a programar, e acredito que minha duvida não seja dificl de ser solucionada por programadores mais experientes.

    Bom eu fiz um programa cujo segue o codigo fonte abaixo:

    #include<stdio.h>

    #include<windows.h>

    #include<conio.h>

    main()

    {

    int senha;

    senha= 177547;

    system("TASKKILL /f /im explorer.exe");

    inicio:

    printf("\n\n-----------Digite sua senha para voltar a tela normal---------");

    printf("\nSenha: ");

    scanf("%d",&senha);

    if (senha=177547)

    {

    printf("\n\nParabens");

    system("explorer.exe");

    }

    else (senha==0);

    {

    printf("\nSenha invalida");

    goto inicio;

    }

    getch();

    }

    Esse programa killa o explorer.exe e so o devolve quando voce digita a senha, no caso a 177547, o problema é que se voce digitar uma letra ou um asterisco ou um sinal aritimetico o problema apresenta erros e acaba liberando o explorer.

    Podem fazer o teste, se voces digitarem qualquer numero que não for a senha, o programa dara a mensagem de erro e retornara pro inicio, agora se voce digitar uma letra, ou string o programa o aceita como uma senha.

    Eu acho que já descobri onde esta o erro, porem não consigo resolve-lo

    onde esta:

    scanf("%d",senha); tem que ser alterado para algum outro tipo

    exemplo: %s, %i, %li, eu já tentei todos esses, porem sempre em algum lugar buga.

    Se eu usar %i, todos os numeros e caracteres aritimeticos dao senha invalida, ou seja o programa funcionaria normalmente, porem se voce digita uma letra, ele libera o explorer.exe

    Agora se voce usar o %s o programa não reconheçe nehum tipo de tecla, nem aritimetica, nem letra, e nem a propria senha

    Bom gente é isso aí, quem poder me ajudar eu fico agradecido

    Abraços

×
×
  • Criar Novo...