易语言经典算法采用循环验证哥德巴赫猜想

易语言经典算法采用循环验证哥德巴赫猜想.一个偶数总能表示为两个素数之和(验证哥德巴赫猜想)
我们容易得出:4=2+2, 6=3+3,8=5+3,10=7+3,12=7+5,14=11+3,……那么,是不是所有的大于2的偶数,都可以表示为两个素数的呢?这个问题是德国数学家哥德巴赫(C.Goldbach,1690-1764)于1742年6月7日在给大数学家欧拉的信中提出的,所以被称作哥德巴赫猜想。同年6月30日,欧拉在回信中认为这个猜想可能是真的,但他无法证明。现在,哥德巴赫猜想的一般提法是:每个大于等于6的偶数,都可表示为两个奇素数之和;每个大于等于9的奇数,都可表示为三个奇素数之和。其实,后一个命题就是前一个命题的推论。

验证哥德巴赫猜想源码

.版本 2
 
.子程序 _计算图形按钮_被单击
.局部变量 标甲, 整数型
.局部变量 标乙, 整数型
.局部变量 标丙, 整数型
.局部变量 结果, 文本型
 
结果编辑框.内容 = “”  ' 清空
结果 = “”  ' 清空
给定偶数 = 到数值 (偶数编辑框.内容)
.判断开始 (到数值 (偶数编辑框.内容) > 1000 或 到数值 (偶数编辑框.内容) % 2 ≠ 0 或 到数值 (偶数编辑框.内容) ≤ 0)
    信息框 (“输入错误!”, 0, “输入错误:”)
.判断 (给定偶数 = 2)
    ' 2可以表示成1+1
    结果编辑框.内容 = “2=1+1”
.判断 (给定偶数 = 4)
    ' 4可以表示成1+3
    结果编辑框.内容 = “4=1+3”
.默认
    .变量循环首 (3, 给定偶数 ÷ 2, 2, 标甲)
        .变量循环首 (2, 求平方根 (标甲), 1, 标乙)
            .如果 (标甲 % 标乙 = 0)
                ' 如果模为0,则跳出
                跳出循环 ()
            .否则
 
            .如果结束
 
        .变量循环尾 ()
        .如果 (标乙 > 求平方根 (标甲))
            标丙 = 给定偶数 - 标甲
        .否则
            ' 如果小于则退出循环
            跳出循环 ()
        .如果结束
        .变量循环首 (2, 求平方根 (标丙), 1, 标乙)
            .如果 (标丙 % 标乙 = 0)
                ' 如果模为0,则跳出
                跳出循环 ()
            .否则
 
            .如果结束
 
        .变量循环尾 ()
        .如果 (标乙 > 求平方根 (标丙))
            ' 确认分解的两个素数
            结果 = 结果 + 到文本 (标甲) + “+” + 到文本 (标丙) + “或”
        .否则
 
        .如果结束
 
    .变量循环尾 ()
    结果 = 到文本 (给定偶数) + “=” + 结果
    结果 = 取文本左边 (结果, 取文本长度 (结果) - 2)  ' 去掉最后一个或
    结果编辑框.内容 = 结果

发布日期:

所属分类: 编程 标签: