Números primos Visual Basic 6.0

Los números primos al igual que otras clasificaciones de los números naturales fueron clasificados por Pitágoras y su secta, cuyos miembros se llamaban -los pitagóricos-.

Este programa dará como resultado los números primos desde un valor hasta otro que especifiquemos.

Para el formulario necesitaremos 2 textbox (txtdesde y txthasta). Dos labels, 1 Listbox (list1), y 1 commandbutton (cmdcalcular). Como aparece en la imagen de la derecha.

En el botón calcular insertar el siguiente código:

Option Explicit

Dim d, h, v, a, b, c As Integer

Private Sub cmdcalcular_Click()

If Val(txtdesde.Text) < Val(txthasta.Text) Then
List1.Clear

d = Val(txtdesde.Text)
h = Val(txthasta.Text)
v = d - 1

Do While v < h
v = v + 1

'Identificar si el numero es primo
a = 0
b = 1


Do While b <= v
c = v Mod b

If c = 0 Then
a = a + 1
b = b + 1

Else
b = b + 1
End If

Loop

If a = 2 Or v = 1 Then

List1.AddItem (v)
End If
Loop

Else
MsgBox ("El valor de Desde debe ser menor que el de Hasta")
End If

txtdesde.Text = ""
txthasta.Text = ""
txtdesde.SetFocus

End Sub





5 comentarios

Para que sirven las variables v, a y b?
cual es su funcion en el programa ?

Reply

La variable “v” la utilizo para representar el valor que insertemos en el textbox "desde", entonces le resto 1 al valor de “d” porque el contador de el Do While le sumara 1 a esa variable lo que haría que "desde" empezara desde un valor mas de el que hallamos especificado.

La variable "a" la inicializamos en 0, porque esta contara cada vez que al realizar la operación “v mod b”, de como resultado 0.

Si es así se le sumara 1 a la variable “a”. Cuando "a" sea mayor que 2. Entonces el número se habrá divido por la unidad y otros números, por lo tanto dicho número no es primo, porque ya habrá excedido la regla de: numero primo solo es divisible por el mismo y la unidad.

La variable "b" simplemente representara el numero por el que se ira dividiendo "v", y aumentando de 1 en 1, hasta que "b" sea mayor que "v". Sea o no sea el resultado de “v mod b” igual a 0.

Al final si el primer numero representado por “v” ha sumado consecutivamente la variable “a” solo hasta 2, entonces es primo porque se habrá divido desde 1 (variable b) hasta el mismo (variable v) y solo dio como resultado de división exacta 2 veces, osea se dividió solo por la unidad y el mismo. Y se agregara al Listbox, así sucesivamente hasta que el valor de v(desde) sea menor que el de h(hasta).

Reply

Amigo seria bueno que hagas un tutorial :D

Reply
Este comentario ha sido eliminado por el autor.

Seria buena idea que hagas tutoriales de estos ejercicios de visual basic

Reply

Publicar un comentario