VB的题目,过来帮个忙了!
1、设计一个求两个数的最大公约数和最小公倍数的小程序,要求能对输入的数据自动计算出它们的最大公约数和最小公倍数。2、设计一个求素数的程序,要求能求出任意范围N以内的素数,N由用户输入,给出计算结果。
--------------------编程问答-------------------- --------------------编程问答-------------------- up --------------------编程问答-------------------- 我不明白要怎么编程了~! --------------------编程问答-------------------- 第二题比较简单,笨一点的办法,就是从n除以2循环到n-1,余数都不等于零就是素数 --------------------编程问答-------------------- 第一题:
先对第一个数循环求余,余数为零的都是他的约数,选个最大的
对第二个数同样操作,然后和第一个数的大的数比较,较小的就是最大公约数
求出最大公约数后,最大公倍数=(第一个数×第二个数)÷最大公约数 --------------------编程问答-------------------- 求最大公约数 最小公倍数
新建一个WIN窗体 Form1
添加一个Button,二个 NumericUpDown,一个Label
添加代码
--------------------编程问答-------------------- 求素数
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
NumericUpDown1.Maximum = 100000 '定义输入的2个数的最大值(自己定) 用NumericUpDown的好处是
NumericUpDown2.Maximum = 100000 '你输入字母啥的 他不承认 ,直接把范围限定在数字上^_^
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'按下按钮后 接收NumericUpDown1 和2 的值
Dim 第一个数, 第二个数, a, b, 最大公约数 As Long
第一个数 = NumericUpDown1.Value
第二个数 = NumericUpDown2.Value
'最大公约数:如果有一个自然数a能被自然数b整除,则称a为b的倍数,b为a的约数。
'几个自然数公有的约数,叫做这几个自然数的公约数。
'公约数中最大的一个公约数,称为这几个自然数的最大公约数。
If 第一个数 < 第二个数 Then '首先判断这2个数的大小,因为最小的数 可能就是这2个数的最大公约数,比如3和6
a = 第一个数 '我们叫a为2个数中较小的数,b为较大的数
b = 第二个数
Else
a = 第二个数
b = 第一个数
End If
Dim iCount As Long
For iCount = 1 To a '除数为从1到两个数中最小的数 做循环
If a Mod iCount = 0 And b Mod iCount = 0 Then '如果能同时被 a和b 整除 那么他就是公约数
最大公约数 = iCount '因为除数是依次递加的,那么最后一次得到的公约数 就是最大公约数
End If
Next
Label1.Text = CStr(第一个数) + "和" + CStr(第二个数) + "的最大公约数为:" + CStr(最大公约数) ' 输出结果
End Sub
End Class
新建一个WIN窗体 Form1
添加一个Button,一个 NumericUpDown,一个Richtextbox
添加代码
--------------------编程问答-------------------- 谢谢*7楼的了,不过我还是看得不是很懂~!
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
NumericUpDown1.Maximum = 100000 '定义输入的2个数的最大值(自己定) 用NumericUpDown的好处是
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim N As Long
N = NumericUpDown1.Value '赋值于N
'质数又称素数。指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。
'换句话说,只有两个正因数(1和自己)的自然数即为素数。
Dim iCount, jCount As Long
Dim 约数的数量 As Long
For iCount = 2 To N '第一层循环是被除数 范围是2到N
For jCount = 1 To iCount '第二层循环为除数 范围是2到被除数
If iCount Mod jCount = 0 Then '如果 除数/被除数 可以整除,那么约数的数量就加1
约数的数量 += 1
End If
Next
If 约数的数量 = 2 Then '根据定义 约数只有1个他本身的话 说明约数只有2个
RichTextBox1.AppendText(CStr(iCount) + ",") ' 将符合条件的数字 输出
End If
约数的数量 = 0 ' 约数的数量 归0,进入下次循环
Next
End Sub
End Class
补充:.NET技术 , VB.NET