Estoy haciendo un programa que comprueba si un número es primo o no y he intentado hacerlo lo mejor posible para que funcione mas rápido.
Al código también le añadí una formula que sirve para que si el número es divisible por 3 excepto el tres ya me diga que no es primo y se ahorre tener que hacer lo demás.
Código
Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If Not IsNumeric(TextBox1.Text) Then Exit Sub Dim i As Integer Dim Total As Integer For i = 1 To Len(TextBox1.Text) Total = Total + Val(Mid(TextBox1.Text, i, 1)) Next If TextBox1.Text = 3 Then Label1.Text = ("El número es Primo") Else If Total Mod 3 = 0 Or TextBox1.Text = 1 Then Label1.Text = ("El número no es Primo") Else Dim resultado As Integer = -1 Dim n As Double = TextBox1.Text For i = 2 To Math.Sqrt(n) If n Mod i = 0 Then resultado = 0 Exit For End If Next If resultado = 0 Then Label1.Text = ("El número no es Primo") If resultado = -1 Then Label1.Text = ("El número es Primo") End If End If End Sub End Class
El programa va muy bien ya que utiliza el método de la raíz cuadrada.
Bueno pues lo que quiero hacer es modificar este código para que en vez de comprobar si un número es primo o no te haga una lista en un listbox de todos los números primos desde un mínimo (textbox(min)) hasta un máximo (textbox(max)) pero sin cambiar el método.
Y también quería ver si hay alguna función para que coja el último dígito o la ultima letra de un textbox y como se utiliza.
Gracias de antemano