用vb写一个求素数代码
时间: 2023-05-20 19:02:44 浏览: 270
以下是用 VB 编写的求素数代码:
Private Function IsPrime(ByVal num As Integer) As Boolean
If num <= 1 Then
Return False
End If
For i As Integer = 2 To Math.Sqrt(num)
If num Mod i = 0 Then
Return False
End If
Next
Return True
End Function
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim n As Integer = Integer.Parse(TextBox1.Text)
Dim primes As New List(Of Integer)
For i As Integer = 2 To n
If IsPrime(i) Then
primes.Add(i)
End If
Next
MessageBox.Show(String.Join(", ", primes))
End Sub
这个代码可以在一个文本框中输入一个整数 n,然后输出从 2 到 n 之间的所有素数。
相关问题
写一个求素数的代码
以下是一个求素数的Python代码,使用了常见的判断素数的方法——试除法。
```python
def is_prime(n):
"""
判断一个数是否为素数
"""
if n < 2:
return False
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
def get_prime_numbers(n):
"""
返回小于等于n的所有素数
"""
primes = []
for num in range(2, n+1):
if is_prime(num):
primes.append(num)
return primes
```
使用方法:
```python
primes = get_prime_numbers(100)
print(primes)
```
输出结果为:
```
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
```
该代码中,`is_prime`函数用于判断一个数是否为素数,`get_prime_numbers`函数用于返回小于等于`n`的所有素数。在`get_prime_numbers`函数中,遍历`2`到`n`之间的所有数,对每个数都调用`is_prime`函数进行判断,如果是素数,则加入到列表`primes`中。最后,返回`primes`列表即可。
用python写一个代码实现求素数
好的,以下是一个用Python实现求素数的代码:
```
def prime_number(num):
"""
判断一个数是否为素数
"""
if num < 2: # 2以下的数字都不是素数
return False
for i in range(2, int(num ** 0.5) + 1): # 优化:只需要判断到 num 的平方根即可
if num % i == 0:
return False
return True
def get_prime_numbers(num):
"""
获取小于等于num的所有素数
"""
res = []
for i in range(2, num + 1):
if prime_number(i):
res.append(i)
return res
# 测试:
print(get_prime_numbers(20)) # [2, 3, 5, 7, 11, 13, 17, 19]
```
以上代码包含两个函数,第一个是用于判断一个数是否为素数的函数 prime_number,第二个是用于获取小于等于num的所有素数的函数 get_prime_numbers。可以调用 get_prime_numbers 函数来测试获取指定范围内的素数。