Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Naldinhosi

somando as horas

Recommended Posts

olá amigos queria muito a ajuda de vocês, estou com um probleminha, pois preciso inserir dois tempos e soma-los ex: 2 horas + 30 minutos + 20 segundos

2 horas + 30 minutos + 20 segundos

total= 5 horas e 40 segundos, se vocês estão me entendendo é que as horas nao pode passar de 24 horas e os minutos quando dar 61 minutos o 1 pular para horas a mesma coisa dos segundos, os segundos pular para os minutos, eu fiz assim: mais nao consigo fazer a troca por favor me ajudem

algoritmo "semnome"
// Função :
// Autor :
// Data : 10/4/2010
// Seção de Declarações 
var
h1,h2,m1,m2,s1,s2:inteiro
soma,soma1,soma2,total,cont:inteiro
inicio
// Seção de Comandos 
escreva("Informe a 1ª hora:")
leia(h1)
escreva("Informe o 1º minuto:")
leia(m1)
escreva("Informe o 1º segundo:")
leia(s1)
escreval()
escreval("INFORME AGORA OUTRO TEMPO")
escreval()
escreva("Informe a 2ª hora:")
leia(h2)
escreva("Informe o 2º minuto:")
leia(m2)
escreva("Informe o 2º segundo:")
leia(s2)
cont<-1
soma<-h1+h2
soma1<-m1+m2
soma2<-s1+s2
escreval()
cont<-0

  escreva("o tempo é:",soma,"hora",soma1,"minutos",soma2,"segundos")




fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

se transformar tudo para a mesma unidade no inicio deve simplificar

 

Depois é só colocar no padrão que deseja

 

Em seu exemplo

 

2 horas + 30 minutos + 20 segundos

 

2*60*60 + 30*60 + 20

 

Teria tudo em segundos

 

Faça o mesmo com o outro

 

Some e depois começe a dividir por 3600 para obter as horas, o resto por 60 para os minutos e o resto são segundos

Compartilhar este post


Link para o post
Compartilhar em outros sites

olá mario obrigado por me ajudar, eu tenho que entregar essa atividade amanha, eu fiz como você mandou mais olha pra mim o que ta dando de errado, pois ta dando, ficarei grato pela sua opinião:

   algoritmo "semnome"
   // Função :
   // Autor :
   // Data : 10/4/2010
   // Seção de Declarações
   var
   h1,h2,m1,m2,s1,s2:real
   soma,soma1,soma2,soma3,soma4,soma5,total,total1,total2,total3,total4,total5:real
   cont,cont1:real
   inicio
   // Seção de Comandos
   escreva("Informe a 1ª hora:")
   leia(h1)
   escreva("Informe o 1º minuto:")
   leia(m1)
   escreva("Informe o 1º segundo:")
   leia(s1)
   escreval()
   escreval("INFORME AGORA OUTRO TEMPO")
   escreval()
   escreva("Informe a 2ª hora:")
   leia(h2)
   escreva("Informe o 2º minuto:")
   leia(m2)
   escreva("Informe o 2º segundo:")
   leia(s2)
   cont<-1
   soma<-(h1*60)/3600
   soma1<-(h2*60)/3600
   total<-soma+soma1/3600
   total1<-(soma-soma1)/3600
   soma2<-(m1*60)/60
   soma3<-(m2*60)/60
   total2<-(soma2+soma3)/60
   total3<-(soma2-soma3)/60
   soma4<-(s1*60)/60
   soma5<-(s2*60)/60
   total4<-(soma4+soma5)/60
   total5<-(soma4-soma5)/60

   escreval()

   
   

     escreva("o tempo é:",total,"hora",total2,"minutos",total4,"segundos")
     escreval()
escreva("o tempo de diferença é:",total1,"hora",total3,"minutos",total5,"segundos")
     

fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

As contas estão erradas

 

soma<-(h1*60)/3600

soma2<-(m1*60)/60

soma4<-(s1*60)/60

Se for transformar para segundos as horas seria apenas

 

soma<-(h1*3600)

Os minutos seriam apenas

 

soma2<-(m1*60)

E os segundos não precisa mexer

 

Outra coisa não precisa de varias variáveis soma

 

Pode usar a mesma

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dados seis números inteiros representando dois intervalos de tempo (horas, minutos e segundos), faça um programa para calcular a soma desses intervalos. Faça outro programa para calcular a diferença entre os intervalos. é isso ou seja eu tenho que somar os 6 numeros e depois colocar a diferença amigo: eu fiz assim mais o final ta dando errado eu uso o Visualg

algoritmo "semnome"
// Função :
// Autor :
// Data : 10/4/2010
// Seção de Declarações
var
h1,h2,m1,m2,s1,s2:inteiro
soma,soma1,soma2,soma3,soma4,soma5,soma6,soma7:inteiro
total,total1,total2,total3,total4,total5:real

inicio
// Seção de Comandos
escreva("Informe a 1ª hora:")
leia(h1)
escreva("Informe o 1º minuto:")
leia(m1)
escreva("Informe o 1º segundo:")
leia(s1)
escreval()
escreval("INFORME AGORA OUTRO TEMPO")
escreval()
escreva("Informe a 2ª hora:")
leia(h2)
escreva("Informe o 2º minuto:")
leia(m2)
escreva("Informe o 2º segundo:")
leia(s2)
//tranformar os horarios tudo em segundo pois fica melhor para resolver
soma<-h1*60
soma1<-soma+m1
soma2<-soma1*60
soma3<-soma2+s1

soma4<-h2*60
soma5<-soma4+m2
soma6<-soma5*60
soma7<-soma6+s2

total1<-soma3-soma7

total2<-(total1)/60
total3<-(total1 % 60)
total4<-total2)/60
total5<-(total2 % 60)

escreva("diferença de intervalo é:",total4,"hr",total5,"min",total3,"segundos")






fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Continua fazendo errado

 

Seria algo como

 

soma1 <- h1*3600

soma1 <- soma1 + m1*60

soma1 <- soma1 + s1

soma2 <- h2*3600

soma2 <- soma2 + m2*60

soma2 <- soma2 + s2

 

soma3 <- soma1 + soma2

temporestante = soma3

horastotais <- temporestante/3600

temporestante = temporestante % 3600

minutostotais <- temporestante/60

segundostotais = temporestante % 60

 

escreva("a soma do tempo é:",horastotais,"h",minutostotais,"m",segundostotais,"s")

Compartilhar este post


Link para o post
Compartilhar em outros sites

mais esse jeito o mod ou % nao funciona no visualg o que devo fazer

 

soma1 <- h1*3600

soma1 <- soma1 + m1*60

soma1 <- soma1 + s1

soma2 <- h2*3600

soma2 <- soma2 + m2*60

soma2 <- soma2 + s2

 

soma3 <- soma1 + soma2

temporestante = soma3

horastotais <- temporestante/3600

temporestante = temporestante % 3600

minutostotais <- temporestante/60

segundostotais = temporestante % 60

 

escreva("a soma do tempo é:",horastotais,"h",minutostotais,"m",segundostotais,"s")

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiro você tem q começar a postar na área correta.

Já q n funciona crie uma formula de resto "na mão";

 

[]s

 

---

Tópico Movido:

 

Lógica de Programação e Algoritmos >> Curso (Lógica de Programação) http://forum.imasters.com.br/public/style_emoticons/default/seta.gif Lógica de Programação e Algoritmos

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.