VB编程水仙花数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VB编程水仙花数相关的知识,希望对你有一定的参考价值。
编程求出所有的水仙花数,并在窗体显示。所谓水仙花数,是指一个三位数,其各位数字的立方和等于该数本身。如153=1^3+5^3+3^3。程序界面自己设定。
VB实现水仙花数的程序代码如下:
PrivateSubCommand_Click()
Fornum=100To999
a=numMod10
b=num\\10Mod10
c=num\\100
Ifa^3+b^3+c^3=numThenPrintnum
Nextnum
EndSub
实现具体步骤如下:
1.启动VB程序,新建一个标准的exe项目,如下图。
2.在窗体上绘制命令按钮(名称:命令),双击命令按钮以进入代码窗口,如下图。
3.接下来,开始为命令按钮编写单击事件。click事件实现了上面提供的程序代码,如下图。
4.按F5运行程序并单击命令按钮。水仙花产量为4:15,370,371,407,如下图。
扩展资料:
C语言实现水仙花数的代码:
#include <stdio.h>
#include <stdlib.h>
voidmain()
inti,j,k,n;
printf("'waterflower'numberis:");
for(n=100;n<1000;n++)
i=n/100;/*分解出百位*/
j=n/10%10;/*分解出十位*/
k=n%10;/*分解出个位*/
if(n==i*i*i+j*j*j+k*k*k)
printf("%-5d",n);
printf("\\n");
注意事项:
VB编程的核心思想是组件编程。VB是最早引入组件编程的概念,然后被其他语言采用并成为标准,如vc++、Delphi、PowerBuilder等都采用了组件编程模型,并利用面向对象的编程技术,成为当今程序设计的发展方向之一。
VB编程,由于采用了组件技术,所以不必从底层开始窗体,控制设计,可以由工厂通过各种零件装配生产机器,通过Microsoft或第三方提供的组件,装配成所需的程序。与什么?VB是代码,它像胶水一样,把有限的代码和组件粘合在一起。结果是一个完整的应用程序。
VB有一个图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以很容易地使用daos、RDO、ADO连接到数据库,或者很容易地创建活动的X控件,从而高效地生成类型安全的和面向对象的应用程序。
程序员可以使用VB提供的组件轻松快速地构建应用程序。VB的组件既可以拥有用户界面,也可以没有。这样一来服务器端程序就可以处理增加的模块。
VB使用参数计算的方法来进行垃圾收集,这个方法中包含有大量的对象,提供基本的面向对象支持。因为越来越多组件的出现,程序员可以选用自己需要的扩展库。
参考技术A1、首先双击桌面图标启动 visual basic 6.0。
2、然后新建工程,选择标准EXE。
3、选择完工程后,点击打开,就可以新建一个exe工程了。
4、然后双击 FORM1 窗体,在弹出的代码窗体中复制该代码到 Form_Click() 事件中。
5、代码:If a * 100 + b * 10 + c = a ^ 3 + b ^ 3 + c ^ 3 Thenn = n + 1If (n Mod 5) = 0 Then
Print a & b & cElsePrint a & b & c,End IfEnd IfNext cNext bNext aPrint Chr(13) & Chr(13) & "三位数中水仙花数个数为" &n。最后运行这样就完成了。
参考技术BVB实现水仙花数的程序代码如下:
Private Sub Command_Click()
For num = 100 To 999
a = num Mod 10
b = num \\ 10 Mod 10
c = num \\ 100
If a^3 + b^3 + c^3 = num Then Print num
Next num
End Sub
实现具体步骤如下:
1、启动VB程序,新建一个标准exe工程
2、在窗体上绘制一个命令按钮(名称:Command),双击命令按钮进入代码窗口。
3、接下来开始编写命令按钮的单击事件。点击事件要实现的内容就是上面提供的程序代码。
4、按F5运行程序,点击命令命令按钮,输出的水仙花数共有4个:153,370,371,407。
扩展资料:
C语言实现水仙花数的代码:
#include <stdio.h>
#include <stdlib.h>
void main()
int i,j,k,n;
printf("'water flower'number is:");
for(n=100;n<1000;n++)
i=n/100;/*分解出百位*/
j=n/10%10;/*分解出十位*/
k=n%10;/*分解出个位*/
if(n==i*i*i+j*j*j+k*k*k)
printf("%-5d",n);
printf("\\n");
参考资料:百度百科-水仙花数
参考技术C两种方法:
1、用三重循环,将三个数连接成一个3位数再进行判断。
2、用一重循环,将所有的三位数逐位分离后再进行判断。
Private Sub Command1_Click()
Cls
Print"第一种方法:"
Dim a As Integer,b As Integer,c As Integer,d As Integer
For a=1 To 9
For b=0 To 9
For c=0 To 9
d=100*a+b*10+c
If d=a^3+b^3+c^3 Then Print d
Next c
Next b
Next a
End Sub
Private Sub Command2_Click()
Cls
Print"第二种方法:"
For i=100 To 999
ge=i Mod 10
shi=i\\10 Mod 10
bai=i\\100
If ge^3+shi^3+bai^3=i Then Print i
Next i
End Sub
运行程序效果:
扩展资料:
printf函数使用注意事项
1、域宽
%d:按整型数据的实际长度输出。
如果想输出指定宽度可以指定域宽,%md-->,m域宽,打印出来以后,在控制台上,显示m位;
如果要打印的数的位数如果超过我们设定m则原样输出;
如果要打印的数的位数如果小于设定的位数,则补空白,具体如下:
如果m为正数,则左对齐(左侧补空白);
如果m为负数,则右对齐(右侧补空白)。
2、转义字符
如果想输出字符"%",则应该在“格式控制”字符串中用连续两个%表示。
如:printf("%f%%",1.0/3);输出结果:0.333333%。
参考技术D 写个代码(VB.net),参考一下:Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim I As Integer
Dim A As Integer, B As Integer, C As Integer '定义几个变量,其中A、B、C用分别作百、十、个位数
Label1.Text = "水仙花数有:" 'Label1先显示一个标题,后面在一行添加水仙数
For I = 100 To 999 '检索所以的三位数,即从100到999
A = Int(I / 100) '提取三位数的百位数
B = Int(I / 10) - A * 10 '提取三位数的十位数
C = I - Int(I / 10) * 10 '提取十位数的个位数
If (I = Math.Pow(A, 3) + Math.Pow(B, 3) + Math.Pow(C, 3)) Then Label1.Text = Label1.Text & I & " " '如果某个数符合水仙数定义,就在Label1里添加它
Next
End Sub
如何用VB语言求水仙花数和求1~1000以内的素数
我和朋友一起发现了一个更简单的方法求1~1000以内的素数之和,VB代码如下:Private Sub Command1_Click()
Dim i, s, n, c As Double
i = 3: s = 0
Do While i <= 1000
n = 1: c = 0
Do While n <= i
If i Mod n = 0 Then
c = c + 1
End If
n = n + 1
Loop
If c = 2 Then
s = s + i
End If
i = i + 2
Loop
s = s + 2
Print s
End Sub
运行结果是对的,就是76127 参考技术A Private Sub Form1_Click()Dim a As Integer, b As Integer, c As IntegerFor a = 1 To 9For b = 0 To 9For c = 0 To 9If a ^ 3 + b ^ 3 + c ^ 3 = a * 100 + b * 10 + c ThenForm1.Print a * 100 + b * 10 + cEnd IfNext cNext bNext aEnd 参考技术B '求水仙花数
Private Sub Form1_Click()
Dim a As Integer, b As Integer, c As Integer
For a = 1 To 9
For b = 0 To 9
For c = 0 To 9
If a ^ 3 + b ^ 3 + c ^ 3 = a * 100 + b * 10 + c Then
Form1.Print a * 100 + b * 10 + c
End If
Next c
Next b
Next a
End
'求1~1000以内的素数,
Private Sub Command1_Click()
Dim a As Integer, b As Integer
Text1 = ""
For a = 3 To 999 step 2
For b = 2 To Sqr(a)
If a Mod b = 0 Then
Exit For
End If
If b > Sqr(a) Then
Text1 = Text1 & a & VbNewline
End If
Next b
Next a
End追问
Text1 = ""是什么?
追答Text1是一个多行文本框,上面那一句是先清空其中的内容(以防多次运行结果太乱)。
以上是关于VB编程水仙花数的主要内容,如果未能解决你的问题,请参考以下文章