Master_Yoda Posted June 29, 2005 at 11:36 PM Report #1526 Posted June 29, 2005 at 11:36 PM Boas programadores, Então é o seguinte tenho aqui dois exercícios que pretendo fazer e um deles já está resolvido. No entanto vou transcrevê-los.... 1. Escrever um programa que leia 3 inteiros correspondentes a uma hora em horas, minutos e segundos, e converta em segundos, a imprima o resultado. Supondo as seguintes variáveis para as horas, minutos e segundos, a leitura poderia ser: int horas, minutos,segundos; long int result_em_segundos; ..... scanf("%d%d%d",&horas, &min, & seg); /*notar mais uma vex o operador &*/ [/syntax] Ora eu escrevi exatamente isto (fugi um pouco ao enunciado...mas pronto já rectifico isso....): /*Horas. minutos e segundos*/ int main() { int horas,min,seg; long int result_em_segundos; printf("\nDiga que horas, quantos minutos e quantos segundos são respectivamente: "); scanf("%d%d%d",&horas,&min,&seg); horas=60*60*horas; min=60*min; printf("O resultado em segundos e de %d \n",horas+min+seg); system("PAUSE"); } Até aqui tudo bem lá me consegui safar com o código etc etc... O problema é o segundo exercicio: 2. Escreva um programa que efectue a operação inversa no exercicio anterior. Eu tenho este código para já: #include <stdio.h> int main() { int horas,sec,min; printf("Diga quantos segunds pretende converter para tempo horário...."); scanf("%d",&sec); horas=sec/60/60; min=sec/60; printf("Sao %d horas %d minutos e %d segundos",horas,min,sec); system("PAUSE"); } O problema é que depois de compilar e executar aparece o seguinte em relação ao ultimo printf, introduzindo como dados 3600 segundos: Sao 1 hora, 60 minutos e 3600 segundos. Ora isto nao esta bem e espero por resposta.... Cumps
Solution SLider3 Posted June 30, 2005 at 12:04 AM Solution Report #1527 Posted June 30, 2005 at 12:04 AM Assim á primeira vista e sem testar eu diria que devias fazer: horas = sec/3600; min = (sec%3600)/60; sec = sec%60;
deathseeker25 Posted June 30, 2005 at 12:08 AM Report #1528 Posted June 30, 2005 at 12:08 AM Citação Assim primeira vista e sem testar eu diria que devias fazer: horas = sec/3600; min = (sec%3600)/60; sec = sec%60; Exactamente...assim já deve funcionar....
Master_Yoda Posted June 30, 2005 at 12:12 AM Author Report #1529 Posted June 30, 2005 at 12:12 AM Experimentei e deu....obrigadão pela ajuda...este forum é do melhor! Fikem bem pessoal e boas programaçoes
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now