Ir ao conteúdo
  • Cadastre-se

Lindon Johnsson Júnior

Membro Júnior
  • Posts

    6
  • Cadastrado em

  • Última visita

posts postados por Lindon Johnsson Júnior

  1. @AnsiC Obrigado novamente por responder minhas dúvidas. Porém surgiu um problema enquanto eu continuava com o programa:

    #include <locale.h>
    #include <stdio.h>
    
    int main(void) {
        float quant = 0,
              consumo = 0,
              tempo = 0 ,
              pot = 0 ;
        char op = 0 ,
             apar = 0;
    
        setlocale(LC_ALL, "Portuguese_Brazil");
    
        printf("\t\tEfficiEnergy+ \n"
               "\tEscolha uma das opções:\n "
               "\t1.Calculadora de consumo mensal\n"
               "\t2.Dicas de economia\n"
               "\t3.Analisador em tempo real\n\t4.Sair\n\t: ");
        scanf("%hd", &op);
    
        if (op == 1) {
            printf("Insira o eletrodoméstico ou aparelho que deseja calcular o "
                   "consumo, quantos aparelhos iguais a este possui em sua "
                   "residência e o tempo médio diário em que fica ligado: ");
            scanf(" %c %f %f", &apar, &quant, &tempo);
    		consumo = (quant * tempo * (30.0 / 1000.0));
            switch (apar) {
            case 'liquidificador':
            case 'liqui':
    		case 'LIQUI':
    		case 'LIQUIDIFICADOR':	
                printf("O consumo médio é de %gkW por mês", consumo * 200.0);
                break;
            case 'microondas':
            case 'MICROONDAS':
            	printf("O consumo médio é de %gkW por mês", consumo*2000.0);
            	break;
            case 'aspirador':
            case 'ASPIRADOR':
            case 'ASPIRADOR DE PÓ':
            case 'aspirador de pó':
            	printf("O consumo médio é de %gkW por mês", consumo*1000.0);
            	break;
    		default:
                puts("Erro!");
            }
        }
        return 0;
    }

    Adicionei mais cases dentro do switch(no caso, mais aparelhos e eletrodomésticos), mas o programa não "recebe" os nomes...por exemplo, se eu executo o programa e digito microondas, aparece a mensagem de erro do default, enquanto que, quando testei o programa que você fez e enviou, funcionava perfeitamente, porém era utilizada uma única letra.

  2. @AnsiC Primeiro: obrigado, cara, ajudou muito!

    Mas eu tenho algumas dúvidas...ainda sou meio leigo nisso, então...

    1 - porque int main (void)?

    2 - porque definir 0 como valor das variáveis?

    3 - porque no primeiro scanf se usa %hd? Nem sabia q isso existia

    4- O que é %g? Um "substituto" do %f? Também é um comando que não conheço

     

  3. E aí, galera! Seguinte: tô precisando fazer uma calculadora de consumo elétrico pra um projeto da faculdade, porém eu dei uma travada logo no início e tô sem saber o que fazer

    queria colocar no "app" algumas dicas de economia de energia também.

    #include<stdio.h>
    #include<locale.h>
    main()
    {
    float quant,consumo,tempo;
    	char op,apar;
    	setlocale(LC_ALL, "Portuguese");
    	printf("\t\tEfficiEnergy+ \n \tEscolha uma das opções:\n \t1.Calculadora de consumo mensal\n \t2.Dicas de economia\n \t3.Analisador em tempo real\n \t4.Sair\n\t");
    	scanf("%c", &op);
    	if (op==1);{
    	printf("Insira o eletrodoméstico ou aparelho que deseja calcular o consumo:");
    	scanf("%c",&apar);
    		switch(apar){
    			case 'liqui': printf("Insira a quantos possui e o tempo em horas que fica ligado diariamente:");
    							scanf("%f%f",&quant,&tempo);
    							consumo=(quant*200*tempo*30/1000);
    							printf("O aparelho consome %fkW por mês",consumo);break;}
    		}
    	
    }

    Eu tô fazendo por agr um simples teste com um único caso(no caso seria liquidificador), e a partir daí eu vou inserindo os outros.Nessa primeira tentativa, o programa para logo no print de "Insira o eletrodoméstico"(n entendi mt bem porque, devo ter errado em algo, claro).

    #include<stdio.h>
    #include<locale.h>
    main()
    {
    	float quant,consumo,tempo,pot;
    	char op,apar;
    	setlocale(LC_ALL, "Portuguese");
    	printf("\t\tEfficiEnergy+ \n \tEscolha uma das opções:\n \t1.Calculadora de consumo mensal\n \t2.Dicas de economia\n \t3.Analisador em tempo real\n \t4.Sair\n\t");
    	scanf("%c", &op);
    	if (op==1);{
    	printf("Insira o eletrodoméstico ou aparelho que deseja calcular o consumo: ");
    	scanf("%c",&apar);
    	printf("Insira quantos aparelhos iguais a este possui em sua residência: ");
    	scanf("%f",&quant);
    	printf("Insira o tempo médio diário em que fica ligado: ");
    	scanf("%f",&tempo);
    	consumo=(quant*tempo*30/1000);	
    		switch(apar){
    			case 'liqui': printf("O consumo médio é de %fkW por mês",consumo*200); break;}
    		}
    	
    }

    Nessa segunda tentativa, o programa pula o printf de inserir a variável char

    #include<stdio.h>
    #include<locale.h>
    main()
    {
    	float quant,consumo,tempo,pot;
    	char op,apar;
    	setlocale(LC_ALL, "Portuguese");
    	printf("\t\tEfficiEnergy+ \n \tEscolha uma das opções:\n \t1.Calculadora de consumo mensal\n \t2.Dicas de economia\n \t3.Analisador em tempo real\n \t4.Sair\n\t");
    	scanf("%c", &op);
    	if (op==1);{
    	printf("Insira o eletrodoméstico ou aparelho que deseja calcular o consumo, quantos aparelhos iguais a este possui em sua residência e o tempo médio diário em que fica ligado: ");
    	scanf("%c%f%f",&apar,&quant,&tempo);
    	consumo=(quant*tempo*30/1000);	
    		switch(apar){
    			case 'liqui': printf("O consumo médio é de %fkW por mês",consumo*200); break;}
    		}
    	
    }

    Agora, nessa terceira tentativa, o printf do case 'liqui' é pulado.

     

    Se puderem me ajudar a fazer e entender meus erros, fico muito agradecido!

  4. Oi, galera do Clube do Hardware!

    Estou com uma dúvida num exercício da faculdade

    A questão é a seguinte: "Escreva um programa que converta um intervalo de tempo dado em minutos, em horas, minutos e segundos. Por exemplo, se o tempo dado por 145,87 min, o programa deve fornecer 2h 25min e 52,2s.

    Eu escrevi o programa e utilizei o valor dado pela questão para testar, mas não sei como faço a conversão correta para segundos

     

    #include <stdio.h>
    main()
    {
        int min, horas, minutos, segundos;
        printf("Insira a quantidade de minutos: ");
        scanf("%d", &min);
        
        horas = min/60;
        minutos = min%60;
        segundos = //Aqui está minha dúvida, tentei diversas formas mas não consegui
        
        printf("Isso e igual a %dh, %dmin e %ds", horas, minutos, segundos);
    }

     

    Se puderem me ajudar, fico muito grato!

     

     

    • Curtir 1

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...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!