Ganhei Postado Julho 6, 2004 Denunciar Share Postado Julho 6, 2004 Fala pessoal beleza??ainda to com duvida no problema dos numero primos, preciso que o programa mostre os numero primo anteriores ao que eu digitei. Por exemplo digitei o 11 dai aparece no label 7,5,3,2,1.Tem como dar uma ajudinha? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 PiGmEu Postado Julho 6, 2004 Denunciar Share Postado Julho 6, 2004 posta a sua duvida.... não somos bidús! []´s Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Ganhei Postado Julho 6, 2004 Autor Denunciar Share Postado Julho 6, 2004 Claro Pigmeu!Tenho um programinha que já diz se o numero é primo ou não!preciso que o programa mostre os numero primo anteriores ao que eu digitei. Por exemplo digitei o 11 dai aparece no label 7,5,3,2,1.a minha duvida e como faço pra aparecer a sequencia dos numeros !!! como dito antes!!!!Private Sub calcular_Click()Dim primo As Booleanvisor = Val(entrada.Text)i = 2resto = 0primo = Truesaida.ForeColor = RGB(0, 0, 255)While i < visorresto = visor Mod iIf resto = 0 Thenprimo = FalseEnd Ifi = i + 1WendIf primo = False Thensaida.ForeColor = RGB(255, 0, 0)saida.Caption = "Não é Primo"Elsesaida.Caption = "Primo"End IfEnd SubCERTO BIDU!? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Manwë Súlimo Postado Julho 6, 2004 Denunciar Share Postado Julho 6, 2004 Bom, achoq ue posso te ajudar, se eu entedi sua duvida no outro post...você pode dividir os números pelos 4 primeiros numeros primos...todo numero é divisivel por 2 ou 3 ou 5 ou 7( nosso objetivo é somente fazer contas que o resto seja ZERO)os testes seriam assim: d = n mod 2 t = n mod 3 if d<>0 and t<>0 then n é um número primo end if esse teste funciona para números maiores que três, ai você vai ter que fazer um teste p/ ver se esse numero é maior que tres, se não for, e for maior que 0, então com certeza vai ser primo... você usario isso num loop, mais ou menos assim: Private Sub efetuar_Click() labelPRIMO = "" n = numero If n > 3 Then Do While n > 3 d = n Mod 2 t = n Mod 3 c = n Mod 5 s = n Mod 7 If d <> 0 And t <> 0 And c <> 0 And s <> 0 Then ' n é um número primo labelPRIMO = labelPRIMO & n & ", " End If If n = 7 Or n = 5 Then labelPRIMO = labelPRIMO & n & ", " End If n = n - 1 Loop labelPRIMO = labelPRIMO & "3, 2" ElseIf n = 3 Then labelPRIMO = labelPRIMO & "3, 2" ElseIf n = 2 Then labelPRIMO = labelPRIMO & "2" End If End Sub eu testei o programa (deu p/ perceber né?) e deu certinho.... só fazer duas label, uma NUMERO, que vai ser onde o cara vai digitar e a labelPRIMO, que vai ser onde vai sair o resultado..... ah, e o botão é claro....Se você quiser que não apareça o numero que o cara digitou caso ele seja primo, você coloca ao invés de n = numero, coloca n = numero - 1.....e assim vai... uma lógica até que grande, mas que funciona......até mais Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Ganhei Postado Julho 7, 2004 Autor Denunciar Share Postado Julho 7, 2004 Fala Manwë Súlimo bele?era isso mesmo Valeuu!!! AbraçosGanhei Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Ganhei
Fala pessoal beleza??
ainda to com duvida no problema dos numero primos, preciso que o programa mostre os numero primo anteriores ao que eu digitei. Por exemplo digitei o 11 dai aparece no label 7,5,3,2,1.
Tem como dar uma ajudinha?
Link para o comentário
Compartilhar em outros sites
4 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.