文章目录[隐藏]
易语言经典算法采用循环验证哥德巴赫猜想.一个偶数总能表示为两个素数之和(验证哥德巴赫猜想)
我们容易得出: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) ' 去掉最后一个或 结果编辑框.内容 = 结果