JohnRees Postado Fevereiro 18, 2008 Denunciar Share Postado Fevereiro 18, 2008 Boa noite!Estou com 1 dúvida de como utilizar os números após a virgula em números decimais, pois tenho que fazer 1 trabalho para a escola, e não consigo de maneira nenhuma conseguir utilizar os números após as virgulas....Grato desde já! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kuroi Postado Fevereiro 18, 2008 Denunciar Share Postado Fevereiro 18, 2008 opa. usar onde exatamente?? em textbox, em consulta sql, a variavel q não ta reconhecendo, etc??explica melhor ae e de preferencia poste seu codigo pra gente ver. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 JohnRees Postado Fevereiro 18, 2008 Autor Denunciar Share Postado Fevereiro 18, 2008 Opa, é o seguinte... o professor de mátematica, pediu pra nós fazermos 1 programa que de acordo com o horário que digitarmos nos textbox, ele mostre os angulos dos ponteiros, então , gostaria de saber como posso pegar o número após a virgula do número quebrado, pois preciso achar os ''minutos'' dentro dos graus, por exemplo 2h30min = 22º30' , e no textbox ''destino'' aparece apenas 22,5º ( o que não deixa de estar correto creio eu )A minha codificação foi bem simples...A = H * 30A2 = 0 While Not A1 = M A1 = A1 + 1 A2 = A2 + 6 WendA3 = (30 * M) / 60 + (A - A2) If A3 < 0 Then A3 = A3 * (-1) End If TXTANGULO.Text = A3Obrigado Desde já! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kuroi Postado Fevereiro 18, 2008 Denunciar Share Postado Fevereiro 18, 2008 correto até esta, pois na verdade 22,5º = 22º30' já que um grau tem 60 minutos.só q ele não esta mostrando no formato desejado.pra isso, você vai ter fazer a conversao. tipo, você tem pegar o numero depois da virgula e, considerando duas casas decimais (no exemplo, a cima o 5 ficaria 50, pois 22,5 = 22,50), dividir por 100 e multiplicar por 60. e ai você vai obter o valor em minutos.nesse tópico aqui http://scriptbrasil.com.br/forum/index.php?showtopic=108910 tb tem uma funcao q converte segundos para hora. se você passar o valor todo em segundos. ai você poderia adaptar, passando o valor em minutos.veja ai se você entendeu, qualquer coisa poste. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 JohnRees Postado Fevereiro 18, 2008 Autor Denunciar Share Postado Fevereiro 18, 2008 correto até esta, pois na verdade 22,5º = 22º30' já que um grau tem 60 minutos.só q ele não esta mostrando no formato desejado.pra isso, você vai ter fazer a conversao. tipo, você tem pegar o numero depois da virgula e, considerando duas casas decimais (no exemplo, a cima o 5 ficaria 50, pois 22,5 = 22,50), dividir por 100 e multiplicar por 60. e ai você vai obter o valor em minutos.nesse tópico aqui http://scriptbrasil.com.br/forum/index.php?showtopic=108910 tb tem uma funcao q converte segundos para hora. se você passar o valor todo em segundos. ai você poderia adaptar, passando o valor em minutos.veja ai se você entendeu, qualquer coisa poste.Aí está minha duvida... eu até entendi o que tenho de fazer, mas eu faço a conversão no número inteiro, ou só nos números após as virgulas, se for nos números após, como fazer para selecionar apenas os números?Grato! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kuroi Postado Fevereiro 18, 2008 Denunciar Share Postado Fevereiro 18, 2008 opa, se o numero q você quiser pegar a parte decimal esta na variavel A3, é só fazer tipo assim:parte_decimal = (A3 - Int(A3)) * 100ai, no exemplo, pro numero 22,5, você vai ter o valor 50 retornado pra varavel parte_decimal. ai você fazendo o calculo q eu indiquei no outro post (/ 100 * 60) você vai obter o valor em minutos (30).ai depois pra mostrar o resultado, se você pegar Int(A3) você retorna a parte inteira. ai é só concatenar com a parte quebrada q foi calculada. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 JohnRees Postado Fevereiro 19, 2008 Autor Denunciar Share Postado Fevereiro 19, 2008 opa, se o numero q você quiser pegar a parte decimal esta na variavel A3, é só fazer tipo assim:CODEparte_decimal = (A3 - Int(A3)) * 100ai, no exemplo, pro numero 22,5, você vai ter o valor 50 retornado pra varavel parte_decimal. ai você fazendo o calculo q eu indiquei no outro post (/ 100 * 60) você vai obter o valor em minutos (30).ai depois pra mostrar o resultado, se você pegar Int(A3) você retorna a parte inteira. ai é só concatenar com a parte quebrada q foi calculada.Muito Obrigado, agora só me falta lembrar como concatena!!!Só 1 comentário, eu acho que você trocou as bolas ali em cima, pois só funcionou do jeito correto se for (/60 *100)Mas enfim, MUITO OBRIGADO pela sua ajuda!!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kuroi Postado Fevereiro 19, 2008 Denunciar Share Postado Fevereiro 19, 2008 pra concatenar, use o operador &.tipo assim:Text1.Text = var1 & "º" & var2 & "'"Só 1 comentário, eu acho que você trocou as bolas ali em cima, pois só funcionou do jeito correto se for (/60 *100)ue, tem certeza?? ainda acho q é / 100 * 60. faca por regra de tres, ó:v -- x100 -- 60onde v é o valor quebrado q você pegou do resultado e x o resultado (o numero convertido)vai dar q 100x = 60v, ou seja x = v * 60 / 100alem do mais 50 * 60 / 100 = 30, ou seja, o calculo do nosso exemplo vai bater, pode fazer na calculadora.pra fazer / 60 * 100, seria pra fazer o calculo inverso. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 JohnRees Postado Fevereiro 19, 2008 Autor Denunciar Share Postado Fevereiro 19, 2008 pra concatenar, use o operador &.tipo assim:Text1.Text = var1 & "º" & var2 & "'" Só 1 comentário, eu acho que você trocou as bolas ali em cima, pois só funcionou do jeito correto se for (/60 *100) ue, tem certeza?? ainda acho q é / 100 * 60. faca por regra de tres, ó: v -- x 100 -- 60 onde v é o valor quebrado q você pegou do resultado e x o resultado (o numero convertido) vai dar q 100x = 60v, ou seja x = v * 60 / 100 alem do mais 50 * 60 / 100 = 30, ou seja, o calculo do nosso exemplo vai bater, pode fazer na calculadora. pra fazer / 60 * 100, seria pra fazer o calculo inverso. Então, eu estava tentando fazer como você disse ( /100 e *60 ) e estava dando 8,66666... uma dizima, ou algum numero assim, ai troquei as operações e agora esta funcionando perfeitamente!! MUITO OBRIGADO! xD Private Sub CMDCALCULAR_Click() Dim H As Double Dim M As Double Dim A As Double Dim A1 As Double Dim A2 As Double Dim A3 As Double If TXTHORA.Text = Empty Then MsgBox "Digite algum minuto" Exit Sub Else H = TXTHORA.Text End If If TXTMINUTO.Text = Empty Then MsgBox "Digite algum minuto" Exit Sub Else M = TXTMINUTO.Text End If A = H * 30 A2 = 0 While Not A1 = M A1 = A1 + 1 A2 = A2 + 6 Wend A3 = (30 * M) / 60 + (A - A2) parte_decimal = (A3 - Int(A3)) * 100 If A3 < 0 Then A3 = A3 * (-1) End If TXTANGULO.Text = Int(A3) & "º" & (parte_decimal * 60) / 100 & "'" TXTHORA.Text = Empty TXTMINUTO.Text = EmptyNão sei se é de alguma utilidade, mas o código final ficou assim... Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
JohnRees
Boa noite!
Estou com 1 dúvida de como utilizar os números após a virgula em números decimais, pois tenho que fazer 1 trabalho para a escola, e não consigo de maneira nenhuma conseguir utilizar os números após as virgulas....
Grato desde já!
Link para o comentário
Compartilhar em outros sites
8 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.