1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Coisas basica e simples em C

Discussão em 'Programação' iniciada por Earning, 25 de Maio de 2008. (Respostas: 12; Visualizações: 852)

  1. Earning

    Earning Power Member

    Boas pessoal

    Sou novo na progamação, mas apos ler alguns tutos e com alguma ajuda ja sei as bases +-..
    Fiz uma coisa simples:
    Código:
    #include <stdio.h>
    #include <string.h>
    
    
    int main()
    
    {
        char opc;
        
        int a=5, b=7, c, d=10, e, x=5, y ;
    
        printf("a = 5, b = 7 \n", a,b);
    
        c = a+b;
    
        printf("c = a + b, (=) c = 7 + 5\n", c,a,b);
    
        printf("Insira o resultado de 'c' : ");    
        scanf("%d",&c);
        
        if(c == 12)
            printf("PARABENS, ACERTASTE \n");
        else 
            printf("RESULTADO ERRADO \n");
        
        e=c+d;
        
        printf("d = 10 \n",d);
        
        printf("e = c + d (=) e = ?\n", e);
    
        printf("Insira o resultado de 'e': ");
        scanf("%d", &e);
    
        if(e==22)
            printf("PARABENS, ACERTASTE\n");
        else
            printf("RESULTADO ERRADO\n");
        
        printf("Agora vamos complicar \n");
        
        y=x+e+a+20;
        printf("x = 5\n",x);
        printf("y = x + e + a + 20  (=) y= ? \n", y, x, b, a);
        
        printf("Insira o resultado de 'y' : ");
        scanf("%d", &y);
        
        if(y == 52)
            printf("PARABENS, ACERTASTE \n");
        else
            printf("RESULTADO ERRADO \n");
        
        printf("Deseja fechar?  \n");
        
        printf("Prima 'S' para sair : ");getchar();
        scanf("%c",&opc);
        
        if(opc == 's')
            return 0;
        
    }
    Queria saber coisas basicas e uteis para poder fazer em C, ja me aconselharam uma calculadora.... Mas acho que ainda nao consigu.. Alguem sabe coisas basicas e uteis para fazer em C? Não muito complicadas :P
     
  2. exxtreme

    exxtreme Power Member

    uma calculadora e muito simples, e so usar a funçao swich.

    Eu na escola vou ver se tenho la uns trabalhos engraçaodos para postar.
     
  3. s e 7 e n

    s e 7 e n Power Member

    Ja agora revê o funcionamento do printf, porque estas a usar mal.

    Código:
    printf("a = 5, b = 7 \n"[B], a,b[/B]);
    Neste exemplo, estas a por no fim as variaveis a e b, mas nem a usas no printf...
    E estas a fazer isso acho que em todos os printf.

    Podias fazer uma coisa deste genero:

    Código:
    printf("a = %d, b = %d \n", a,b);
    Que ia dar o mesmo resultado e ai sim estavas a usar as variaveis...
     
  4. MPalhas

    MPalhas Power Member

    esta parte também está um bocado mal feita

    Código:
    printf("Deseja fechar?  \n");
        
        printf("Prima 'S' para sair : ");getchar();
        scanf("%c",&opc);
        
        if(opc == 's')
            return 0;
    
    em primeiro lugar tu dizes para premir S mas comparas com s minusculo. o C faz distinção entre as duas.
    depois, mesmo que o utilizador prima outra tecla qualquer, o programa fecha na mesma, só não faz o return ,mas como não encontra mais nada acaba

    EDIT: e ainda não percebi para que é que insistes em por o getchar e um scanf logo a seguir
     
  5. Earning

    Earning Power Member

    Pois eu ei, mas primeiro, se nao meter o getchar o progama fecha logo, nao da tempo sequer de meter a tecla, segundo sei que esta parte esta mal feita, mas e so para o progama nao fechar logo, porque se nao meter , meto o valor de 'y' e ele fecha logo..

    Obrigado.

    Código:
    printf("c = a + b, (=) c = 7 + 5 \n", c, a, b);
    Mas aqui se meter :

    Código:
    printf("c = a + b, (=) c = %d + %d \n", c, a, b);
    Ele fica : c =12+5 :S
     
    Última edição pelo moderador: 26 de Maio de 2008
  6. s e 7 e n

    s e 7 e n Power Member

    Não podes fazer isso ao calhas, tens que ver que variaveis queres usar...
    Seria assim, tu não estas a usar o a variavel c...

    Código:
    printf("c = a + b, (=) c = %d + %d \n", a, b);
     
  7. Baderous

    Baderous Banido

    Mete o getchar() antes do retun 0 que é a última instrução da main. Não precisas de meter getchars à patrão pelo código todo.
     
  8. MPalhas

    MPalhas Power Member

    mas é precisamente isso que estou a dizer. o programa não vai fechar porque tens ainda o scanf. ou metes um ou metes o outro. os dois é que não faz muito sentido
     
  9. Earning

    Earning Power Member

    Obrigado Baderous, para ficar tudo bem, tenhu de meter no fim do return 0 , o getch.

    Se nao meter o getch o progama feixa logo, mesmo com o scanf lá.

    Edit: Ha alguma maneira de fazer isto de fechar como deve de ser?

    E respondendo a minha pergunta, ninguem sabe coisas basicas para fazer?
     
    Última edição pelo moderador: 26 de Maio de 2008
  10. Couve

    Couve Power Member

    Pah se calhar a minha opinião vai ser pouco popular aqui, no entanto o ideal é programares em c++, as vantagens são mts msm.. tudo o que podes fazer em C podes fazer em c++, a sintaxe de c++ é mt mais simples, e permite fazer mt coisa poderosa, sem o esforço necessario em C.

    Compra um livro simples, ve os exemplos e vai fazendo.. "c++ for dummies" lol ;p
     
  11. IComeFromBehind

    IComeFromBehind Power Member

    Pois claro a sintaxe do C++ é muito mais simples!!! So podes estar a brincar. A unica vantagem que eu vejo no C++ sao os templates e a biblioteca. De qualquer maneira o C++ está em queda um pouco por toda a parte. Enfim.

    On topic:
    O livro do Brian Kernighan e do Dennis Ritchie tem exercicios para principiantes que não são estupidamente fáceis mas que podes resolver com conhecimentos basicos.
     
  12. s e 7 e n

    s e 7 e n Power Member

    Antes de passares a outro projecto, olha bem para esse e tenta acabar isso....
    Depois tenta perceber o que o codigo faz, e para que servem as coisas que la estão...
    Quando tiveres isso feito, ai sim segues para outra coisa...

    Porque se vais-te já meter com outra coisa, daqui a uns dias estas ca já no forum novamente com duvidas iguais...
     
  13. The_True_Eue

    The_True_Eue Power Member

    A sintaxe de C++ é a mesma sintaxe de C com alguns extras. Será que isso torna as coisas mais simples?
     

Partilhar esta Página