Ir ao conteúdo
  • Cadastre-se

André Molinari

Membro Júnior
  • Posts

    5
  • Cadastrado em

  • Última visita

posts postados por André Molinari

  1.  

    o erro está no ultimo else, tem um ponto-virgula la...

    Indentar seu código vai te poupar tempo, e evitar que isso aconteça e passe despercebido...

     

    #include <stdio.h>int main() {    float velven;    printf("Digite a velocidade dos ventos: ");    scanf("%f", &velven);        if (velven<117)        printf("Tornado F0");    else if (velven >= 117 && velven <= 180)        printf("Tornardo F1");    else if (velven >= 181 && velven <= 252)        printf("Tornardo F2");    else if (velven >= 153 && velven <= 333)        printf("Tornardo F3");    else if (velven >= 334 && velven <= 419)        printf("Tornardo F4");    else if (velven >= 420)        printf("Tornardo F5");    system("pause");    return 0;}

     a indentação correta não seria

    if (velven<117)        printf("Tornado F0");        else if (velven >= 117 && velven <= 180)            printf("Tornardo F1");            else if (velven >= 181 && velven <= 252)                printf("Tornardo F2");                else if (velven >= 153 && velven <= 333)                    printf("Tornardo F3");                    else if (velven >= 334 && velven <= 419)                        printf("Tornardo F4");                        else if (velven >= 420)                           printf("Tornardo F5");

    Pois foi assim que aprendi na faculdade... Mas vai de gosto também né.

  2. Amigo, o seu problema é simples.

     

    Primeiro, nunca utilize apenas if, como o amiguinho ali em cima te recomenda. A razão é simples: O programa vai testar TODOS os if's e vai deixa-lo com comparações à toa, caso o tornado seja F0.

     

    Então, sua logica esta correta, sempre use else if. Todavia, o codigo está errado aqui no final:

     

    "else (velven >= 420);

    {printf("Tornardo F5");"
     
    O comando else não precisa ter esse (velven >=420). Na verdade ele NÃO PODE TER. 
     
    você pode fazer duas coisas:
     
    colocar um if
    tirar o velven >= 420
     
     
    else if (velven >= 420);
     
    OU
     
    else
     
    espero ter ajudado!

    Amigo, o seu problema é simples.

     

    Primeiro, nunca utilize apenas if, como o amiguinho ali em cima te recomenda. A razão é simples: O programa vai testar TODOS os if's e vai deixa-lo com comparações à toa, caso o tornado seja F0.

     

    Então, sua logica esta correta, sempre use else if. Todavia, o codigo está errado aqui no final:

     

    "else (velven >= 420);

    {printf("Tornardo F5");"
     
    O comando else não precisa ter esse (velven >=420). Na verdade ele NÃO PODE TER. 
     
    você pode fazer duas coisas:
     
    colocar um if
    tirar o velven >= 420
     
     
    else if (velven >= 420);
     
    OU
     
    else
     
    espero ter ajudado!
  3. Mas qual sua duvida? :seila:

     

    Então:

     

     minha dificuldade se encontra nesses pontos:

     

    1 - Cadastrar UM UNICO código, sendo que se ele já existe, informar que ja existe.

    2 - Alterar um campo do arquivo

    3 - Excluir um carro da lista.

     

    preciso de ajuda, para como eu faço isso.

  4. Gente, eu estou cursando o segundo semestre de SISTEMAS DE INFORMAÇÃO, e até agora estou gostando muito do curso. Na materia de Linguagem de programação C, acabamos de aprender a criar FILE. Até ai tudo bem, mas estou com dificuldade no exercicio do semestre, alguem poderia por favor me ajudar?

     

    Trata-se do seguinte, devemos cadastrar um Carro, e por um codigo para identificar.

     

    Devemos ter a opção de verificar todos os carros cadastrados, apenas um informando o carro, alterar o campo de um determinado carro (inserindo seu codigo, obvio), e excluir um determinado carro (inserindo seu codigo, obvio²). 

     

    A minha dificuldade se encontra nesses pontos:

     

    1 - Cadastrar UM UNICO código, sendo que se ele já existe, informar que ja existe.

    2 - Alterar um campo do arquivo

    3 - Excluir um carro da lista.

     

    Meu codigo até então:

     

    [code=auto:1]

    #include <stdio.h>
    #include <stdlib.h>
    #include <conio.h>
    #include <locale.h>
     
    //Avisando o programa menu_principal, que os procedimentos existem:
    int cadastrar (), consultar(), consultar_todos (), alteracao(), exclusao();
     
     
    FILE *automovel, *auxiliar; 
    struct carro
    {
    int codigo; 
    char marca[30], modelo[30], cor[20], ano[5], valor[10];
    };  struct carro car;
     
    int opc;
     
    int menu_principal ()
    {
    int i,opcao=1;
    while (opcao != 6)
    {
    system("cls");
    printf ("\t============================================================\n");
    printf ("\tFUCKING CADASTRAMENTO DE CARROS POR RAZÃO ALGUMA EM ARQUIVO\n");
    printf ("\t============================================================\n\n\n");
     
    printf ("[1] - Cadastrar\n");
    printf ("[2] - Consultar através do código\n");
    printf ("[3] - Consultar todos os cadastrados\n");
    printf ("[4] - Alteração\n");
    printf ("[5] - Exclusão\n");
    printf ("[6] - Sair do programa");
     
    printf ("\n\nPressione a opção desejada: "); scanf ("%d", &opcao); 
     
    switch (opcao)
    {
     
    case 1:
    cadastrar();
    break;
     
    case 2:
    consultar();
    break;
     
    case 3:
    consultar_todos();
    break;
     
    case 4:
    alteracao();
    break;
     
    case 5:
    exclusao ();
    break;
     
    case 6:
    printf ("Obrigado por utilizar o 'Cadastramento de carros', volte sempre.");
    exit (1);
    break;
     
    default:
    printf ("Valor Informado inválido. Pressione qualquer tecla para voltar ao menu principal..."); getch();
    break;
    }
    }
    fclose (automovel);
    }
     
    int cadastrar ()
    {
    int verifica_codigo = NULL;
    automovel = fopen ("carro.txt", "ab"); 
    if (automovel == NULL)
    {
    printf ("ERRO NA ABERTURA DO PROGRAMA... PRESSIONE QUALQUER TECLA PARA TENTAR NOVAMENTE...");
    getch();
    }else
    {
    do
    {
    system ("CLS");
    printf ("\t\t=================================\n");
    printf ("\t\tMAGNIFICO CADASTRAMENTO DE CARROS\n");
    printf ("\t\t=================================\n\n\n");
          //TALVEZ PRECISE MUDAR O VERIFICA_CODIGO PARA CAR.CODIGO
    printf ("Favor informe um código de cadastramento desejado (três digitos numéricos):  ");  scanf ("%d", &verifica_codigo); setbuf(stdin,NULL);
     
    fread (&verifica_codigo,sizeof(int),5,automovel);
    while (1)
    {//nao fechei ainda
    if (feof(automovel))
    break;
     
    if (verifica_codigo == car.codigo)
    {
    printf ("O Código %d já foi cadastrado\n",verifica_codigo); getch ();
    printf ("Deseja tentar novamente?\n[1] - Sim\n[2] - Não, retornar ao menu principal\n[3] - Não, fechar do programa"); ("%d", &opc);
     
    switch (opc)
    {
    case 1:
    cadastrar ();
    break;
     
    case 2:
    menu_principal();
    break;
     
    case 3:
    printf ("\nObrigado por utilizar o programa de cadastramento de carros."); getch(); exit(1);
    break;
    }
     
    }else
    {
    car.codigo = verifica_codigo;
       //printf ("Favor informe um código de cadastramento desejado (três digitos numéricos): %d",car.codigo); 
    printf ("Favor informe a marca do carro: "); gets (car.marca); setbuf(stdin,NULL);
    printf ("Favor informe o modelo do carro: "); gets (car.modelo); setbuf(stdin,NULL);
    printf ("Favor informe a cor do carro: ");  gets (car.cor); setbuf(stdin,NULL);
    printf ("Favor informe o ano do carro: "); gets (car.ano); setbuf(stdin,NULL);
    printf ("Favor informe o valor do carro: "); gets (car.valor); setbuf(stdin,NULL);
     
    fwrite (&car,sizeof(struct carro),1,automovel);
    fwrite (&verifica_codigo,sizeof(int),5,automovel);
    setbuf(stdin,NULL);
    system ("CLS"); 
     
    printf ("\t\tCADASTRO DO CARRO EFETUADO COM SUCESSO.\n\t\tPRESSIONE QUALQUER TECLA PARA CONTINUAR...");
    getch();
    }
     
    system ("CLS");
    printf ("Deseja cadastrar outro carro?\n[1] - Sim.\n[2] - Não.\nFavor informe sua opção: ");  scanf ("%d",&opc);
    }
    }while (opc != 2);
    fclose (automovel);
    }
    }
     
    int consultar ()
    {
    int verificador=1, codigo_consulta ;
     
    automovel = fopen ("carro.txt", "rb");
    if(automovel == NULL) 
    {
     
    printf ("Ocorreu um erro inesperado durante a leitura.\nPressione qualquer tecla para tentar novamente..."); 
    getch();
    }else
    {
    system ("CLS");
     
    printf ("\t\t====================================================\n");
    printf ("\t\tCONSULTADOR MAGNIFICO DE CARROS ATRAVES DE UM CODIGO\n");
    printf ("\t\t====================================================\n\n\n");
     
    printf ("Favor informe o código do carro: (Até três digitos numéricos): "); scanf ("%d", &codigo_consulta);
    while (1)
    {
     
       fread (&car,sizeof(struct carro),1,automovel);
       
    if (feof(automovel))
    break;
     
    else if (car.codigo == codigo_consulta)
    {
     
    printf ("\nCódigo informado: %d ", car.codigo);
       printf ("\n\n\nMarca do carro: %s ", car.marca);
    printf ("\nModelo do carro: %s ", car.modelo);
    printf ("\nCor do carro: %s ", car.cor);
    printf ("\nAno do carro: %s ", car.ano);
    printf ("\nValor do carro: R$%s,00 ", car.valor);
    verificador = 0;
    getch();
    break;
    }
    }
     
    while (1)
    {
    if (verificador == 1)
    {
    printf ("O código informado não foi cadastrado. Deseja cadastrar o código?\n[1] - Sim.\n[2] - Não.\nFavor informe sua opção: ");  scanf ("%d",&opc);
    switch (opc)
    {
    case 1:
    cadastrar();
    break;
     
    case 2:
    menu_principal();
    break;
    }
    /*if (opc == 1)
    {
    cadastrar();
    }
    else 
    {
    printf ("PRESSIONE QUALQUER TECLA PARA PODER CONTINUAR..."); getch ();
    break;
    }*/
    }else
    {
    printf ("\n\nDeseja consultar outro carro?\n[1] - Sim, consultar informando o código\n[2] - Sim, consultar todos os carros\n[3] - Não, voltar ao menu principal\n[4] - Não, fechar o programa\nFavor informe sua opção: ");  scanf ("%d",&opc);
    switch (opc)
    {
    case 1:
    consultar ();
    break;
     
    case 2:
    consultar_todos();
    break;
     
    case 3:
    menu_principal();
    break;
     
    case 4:
    printf ("Obrigado por utilizar o cadastrador de carros magnifico!\nPressione qualquer tecla para fechar programa..."); getch();
    exit (1);
    }
    /*if (opc == 1)
    {
    consultar ();
    }else if (opc == 2)
    {
    consultar_todos ();
    }else 
    {
    printf ("PRESSIONE QUALQUER TECLA PARA PODER CONTINUAR..."); getch ();
    menu_principal ();
    } */
     
    }
    }
    }
    }
     
    int consultar_todos ()
    {
     
    int contador_aux=0;
     
    automovel = fopen ("carro.txt", "rb");
    if(automovel == NULL) 
    {
    printf ("Ocorreu um erro inesperado durante a leitura.\nPressione qualquer tecla para tentar novamente..."); 
    getch();
    }
    else
    {
    while (1)
    {
       fread (&car,sizeof(struct carro),1,automovel);
       
    if (feof(automovel))
         break;
       
       system ("CLS");
       printf ("\t\t==========================================\n");
       printf ("\t\tCONSULTADOR DE TODOS OS CARROS CADASTRADOS\n");
       printf ("\t\t==========================================\n\n\n");
     
    printf ("\n\nCodigo do %do. carro cadastrado: %d ", contador_aux+1, car.codigo);
       printf ("\nMarca do carro cadastrado: %s ", car.marca);
    printf ("\nModelo do carro cadastrado: %s ", car.modelo);
    printf ("\nCor do carro cadastrado: %s ", car.cor);
    printf ("\nAno do carro cadastrado: %s ", car.ano);
    printf ("\nValor do carro cadastrado: R$%s,00\n", car.valor);
     
    contador_aux++;
     
    getch();
    }
    fclose(automovel);
    }
    }
     
    int alteracao ()
    {
    int codigo_altera;
     
    printf ("Favor informe o código do carro: (Até três digitos numéricos): "); scanf ("%d", &codigo_altera);
    while (1)
    {
       fread (&car,sizeof(struct carro),1,automovel);
    if (feof(automovel))
    break;
     
    else if (car.codigo == codigo_altera)
    {
     
    }
     
    }
     
    int exclusao ()
     
    int codigo_exclui;
     
    printf ("Favor informe o código do carro: (Até três digitos numéricos): "); scanf ("%d", &codigo_exclui);
    while (1)
    {
       fread (&car,sizeof(struct carro),1,automovel);
    if (feof(automovel))
    break;
     
    else if (car.codigo == codigo_exclui)
    {
     
    }
    }
     
     
    int main ()
    {
    setlocale (LC_ALL, "portuguese");
    menu_principal();
     
    }
    [/code=auto:1]
     
    Desde já, agradeço caso alguem me ajude.

     

     

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!