Ir ao conteúdo
  • Cadastre-se
caiomoura45

Quero botar um menu

Recommended Posts

#include <stdio.h>
#include <conio.h>

main()
{ float potmetro, area, qtdlamp, totlamp,valor ;
int lampada,tipolamp;
printf ("Comparativo de lampadas \n");
printf("O Comparativo simula uma lampada ligada 8 Horas por dia  durante um mes \n");
printf ("Quantas lampadas você usa em sua residencia (1-lampada/2-lampada/3-lampada/4-lampada/5-lampada): \n ");
scanf ("%d", &lampada);
printf ("Tipo de lampada(1-Led/2-Florescente): ");
scanf ("%d", &tipolamp);
if(tipolamp<=1)
valor=1.392;
else(tipolamp<=2);
valor=4.8;
printf("O consumo e %f",lampada+tipolamp*valor);
}
 

adicionado 1 minuto depois

ali em quantas lampadas 

Compartilhar este post


Link para o post
Compartilhar em outros sites

@caiomoura45 Cria uma função em paralelo e usa um Switch Simples.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Implementa a função, eu fiz abaixo uma que imagino ser +ou- o que você quer

#include <stdio.h>

int function_menu( unsigned,char[][5],char[] );
int main( void )
{
  char op[2][5] = { "Baba","Babo" };
  char me[] = { "Baba ou Babo" };

    function_menu( 2,op,me );

    return 0;
}

//~Função Menu
int function_menu( unsigned elem_amout,char item_label[][5],char mess[] )
{
  unsigned e = 0;
  unsigned o = 0;

    puts( mess );
    while( e < elem_amout )
        printf( "%d) %s\n",
                e,item_label[ e ] ), e++;

    while( printf( "Selecione: " ) )
      {
        scanf( "%d",&o );
        while( '\n' != getchar() )continue;
        if( o >= elem_amout )puts( "Entrada invalida!" );
        else break;
      }

  return o;
}

 

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Mauro Britivaldo Amigo valeu irei fazer isso mais meu codico não está salvando o tipo de lampada,só da o valor da lampada 3

 

#include <stdio.h>
#include <conio.h>

int main()
{ float valor,tipolamp ;
int lampada;
printf ("Comparativo de lampadas \n");
printf("O Comparativo simula uma lampada ligada 8 Horas por dia  durante um mes \n");
printf ("Tipo de lampada(1-Icandecente/2-Flourescente/3-Led): ");
scanf ("%f", &tipolamp);
if(tipolamp<=1)
valor=60;
else if (tipolamp<=2)
valor=15;                    
else(tipolamp<=3); 
valor=8;    
printf ("Digite quantas lampadas você tem em casa 1 a 7:\n");       
scanf("%d", &lampada);
 switch ( lampada )
  {
     case 1 :
       printf ("Quantidade a ser paga em um mes %f\n",valor);
     break;
 
     case 2 :
       printf ("Segunda\n");
     break;
 
     case 3 :
        printf ("Terça\n");
     break;
 
     case 4 :
        printf ("Quarta\n");
     break;
 
     case 5 :
        printf ("Quinta\n");
     break;
 
     case 6 :
        printf ("Sexta\n");
     break;
 
     case 7 :
        printf ("sábado\n");
     break;
 
     default :
       printf ("Valor invalido!\n");
  }
 
  getch();
  return 0;
}


 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

@MassakiMsk Já fiz e nda

printf ("Tipo de lampada(1-Icandecente/2-Flourescente/3-Led): ");
scanf ("%d",&tipolamp);
if(tipolamp<=1)
valor=60;
else if (tipolamp<=2)
valor=15;                    
else(tipolamp<=3); 
valor=8;     

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você colocou uma condição no else

Else(tipolamp<=3)

Tira ele, deuxa só

Else

Compartilhar este post


Link para o post
Compartilhar em outros sites

else(tipolamp<=3); 
valor=8;     

 

Deixa só

 

else // sem a condição e o ponto e vírgula
valor=8;     

Compartilhar este post


Link para o post
Compartilhar em outros sites

#include <stdio.h>
#include <conio.h>


int main()
{ float valor ;
int lampada,tipolamp;
printf ("Comparativo de lampadas \n");
printf("O Comparativo simula uma lampada ligada 8 Horas por dia  durante um mes \n");
printf ("Digite quantas lampadas você tem em casa 1 a 7:\n");       
scanf("%d", &lampada);
printf ("Tipo de lampada(1-Icandecente/2-Flourescente/3-Led):\n");
scanf ("%d",&tipolamp);
if(tipolamp<=1)
valor=60;
else if (tipolamp<=2)
valor=15;                    
else(tipolamp<=3)
valor=8;    
 switch ( lampada )
  {
     case 1 :
       printf ("Quantidade a ser paga em um mes %d\n",valor);
     break;
 
     case 2 :
       printf ("Segunda\n");
     break;
 
     case 3 :
        printf ("Terça\n");
     break;
 
     case 4 :
        printf ("Quarta\n");
     break;
 
     case 5 :
        printf ("Quinta\n");
     break;
 
     case 6 :
        printf ("Sexta\n");
     break;
 
     case 7 :
        printf ("sábado\n");
     break;
 
     default :
       printf ("Valor invalido!\n");
  }
 
  getch();
  return 0;
}


 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu não testei, mas aqui está a modificação que eu citei. 


#include <stdio.h>
#include <conio.h>

int main()
{ float valor ;
int lampada,tipolamp;
printf ("Comparativo de lampadas \n");
printf("O Comparativo simula uma lampada ligada 8 Horas por dia  durante um mes \n");
printf ("Digite quantas lampadas você tem em casa 1 a 7:\n");       
scanf("%d", &lampada);
printf ("Tipo de lampada(1-Icandecente/2-Flourescente/3-Led):\n");
scanf ("%d",&tipolamp);
if(tipolamp==1) //Troquei os <= por == também
valor=60; 
else if (tipolamp==2)
valor=15;                    
else(tipolamp==3) //AQUIII
valor=8;    
 switch ( lampada )
  {
     case 1 :
       printf ("Quantidade a ser paga em um mes %d\n",valor);
     break;
 
     case 2 :
       printf ("Segunda\n");
     break;
 
     case 3 :
        printf ("Terça\n");
     break;
 
     case 4 :
        printf ("Quarta\n");
     break;
 
     case 5 :
        printf ("Quinta\n");
     break;
 
     case 6 :
        printf ("Sexta\n");
     break;
 
     case 7 :
        printf ("sábado\n");
     break;
 
     default :
       printf ("Valor invalido!\n");
  }
 
  getch();
  return 0;
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal ELSE statement não funciona desta maneira

else(tipolamp==3) //AQUIII
//ou desta
else(tipolamp<=3)

Na ocasião deve ser o IF statement ficando assim:

//Uso do IF ELSE
if( /*proposição*/ )... else
if( /*proposição*/ )
//ou
if( /*proposição*/ )...
else if( /*proposição*/ )

Estas acima são as formas corretas

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso q eu tava dizendo pra ele, mas esqueci de tirar na hora de editar o código rsrs. Só comentei do lado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Percebi,

Mais apesar de tudo, implementar uma função com vetor melhor é melhor; é mais flexível e reutilizável. Os case's são uma solução rápida, mas própria e impossível de reutilizar, ou seja, quantos mais menus houve, mais case existiram  no final é uma amotado de cases confusos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×