Ir ao conteúdo
  • Cadastre-se

C Alguém poderia me ajudar ? - Linguagem C exercício.


Posts recomendados

Boa tarde, estou com dificuldade em fazer o algoritmo de um exercício funcionar, está compilando, porém o resultado está errado.

 

Exercício 02:

Faça um programa que receba uma hora formada por hora e minutos (um número real), calcule e mostre a hora digitada apenas em minutos.

Considere que: para quatro e meia (4:30), deve-se digitar 4.30;  para quatro e cinquenta (4:50), deve-se digitar 4.50; os minutos vão de 0 até 59.

 

 

~~~~~~~~~~~~~~~~

 

 

 

#include <stdio.h>
#include <stdlib.h>

int main()
{

    float hora, min;
    printf("Digite o valor referente a hora e minutos:\n");
    scanf("%f:%f",&hora,&min);
    hora = (hora)*(60)+min;
    printf("Hora convertida em minutos e de:\n %f%f", hora,min);
    return 0;

}
 

Desde já, muito obrigado.

 

 

ajuda.png

ajuda2.png

Link para o comentário
Compartilhar em outros sites

Boa tarde @Robson Monteiro1997

 

Segue o código com correção e comentários

 

 

#include <stdio.h>
#include <stdlib.h>

int main()
{

    float hora, min, convertido; //criado uma nova variavel
    printf("Digite o valor referente a hora e minutos:\n");
    scanf("%f:%f",&hora,&min);
    convertido = (hora*60)+min; //colocado a terceira variavel para receber o  resultado da formula
    printf("Hora convertida em minutos e de:\n %0.0f minutos", convertido); //só é necessario exibir uma variavel, no caso a variavel "convertido" e eu tomei a liberdade de tirar os numeros depois da virgula com o %0.0f
    return 0;

}
 

 

Espero ter lhe ajudado :D

  • Amei 1
Link para o comentário
Compartilhar em outros sites

Use variáveis inteiras (int) ao invés de ponto flutuante (float), e use %d ao invés de %f no scanf e no printf.

Você está imprimindo as 2 variáveis hora e min no fim do programa, mas o total em minutos está na variável hora apenas.

adicionado 2 minutos depois

@Leonardo0308 A entrada de dados deve ser digitada como 2.40, então se usar %f vai ler e guardar em apenas uma variável.

  • Curtir 1
  • Amei 1
Link para o comentário
Compartilhar em outros sites

Não havia visto que era necessário ser "2.40" e nessa logica realmente vale a pena colocar int em vez de float, segue a correção da correção

 

#include <stdio.h>
#include <stdlib.h>

int main()
{

    int hora, min, convertido; //Tipo da variavel modificado
    printf("Digite o valor referente a hora e minutos:\n");
    scanf("%d.%d",&hora,&min); //%f substitido por %d pois virou int e o : substituido por .
    convertido = (hora*60)+min; 
    printf("Hora convertida em minutos e de:\n %d minutos", convertido); //%f substitido por %d pois virou int
    return 0;

}

 

 

  • Curtir 1
  • Amei 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário 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 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...