0020 从1到9中取4个互不相同的数使和为12的排列组合共有多少组,优化版-控制台程序-极语言教程
//因为4个数当中,最大的数不会超过6,所以代码的循环最大为6,这只是优化算法的一小部分.举这个例子,是想说明算法是可以优化的 小程序 初始启动 写格式("从1到9中取4个互不相同的数使和为12的排列组合共有多少组: \r\n") 整数 一数,二数,三数,四数,序数=1,计数器=1,开始时间=0,结束时间=0,需要时间=0 开始时间=开机毫秒 循环于(一数=1;一数<=6;一数++) { 循环于(二数=1;二数<=6;二数++) { 循环于(三数=1;三数<=6;三数++) { 循环于(四数=1;四数<=6;四数++) { 计数器++ 如果(一数!=二数 && 一数!=三数 && 一数!=四数 && 二数!=三数 && 二数!=四数 && 三数!=四数 && 一数+二数+三数+四数=12) { 写格式("最内层循环了 %-4d 次 出第 %-3d组: %d,%d,%d,%d \r\n",计数器,序数,一数,二数,三数,四数) 序数++ } } } } } 结束时间=开机毫秒 需要时间=结束时间-开始时间 写格式("\r\n耗时: %d 毫秒 \r\n\r\n",需要时间) 命令行("pause") 结束