切换风格

默认Lavender Sky Flowers Wizard Snow Beige California City Dragon Black London Sunset glow Pink Cloud

12

主题

138

积分

0

精华

用户组 

易积分
1249
热心
0
好评
0
大神帮我看一下我写的错在那[复制链接]
发表于 2020-5-15 03:44:20 来自手机 | 显示全部楼层 |阅读模式
50易积分
我的要求是临时文本中5个数或5个以上连号不要
版本 2

.程序集 窗口程序集_启动窗口

.子程序 _按钮1_被单击
.局部变量 a, 整数型, , "30"

a = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30 }
排列 (a, 8)


.子程序 排列
.参数 a, 整数型, 数组
.参数 n, 整数型
.局部变量 m, 文本型, , "8"
.局部变量 i, 整数型
.局部变量 j, 整数型
.局部变量 k, 整数型
.局部变量 b, 整数型
.局部变量 c, 整数型
.局部变量 d, 整数型
.局部变量 e, 整数型
.局部变量 f, 整数型
.局部变量 g, 整数型
.局部变量 h, 整数型
.局部变量 l, 整数型
.局部变量 临时文本, 文本型
.局部变量 临时文本1, 文本型

.计次循环首 (到整数 (求次方 (2, 取数组成员数 (a))) - 1, i)
    k = 0
    临时文本 = “”
    j = 1
    .判断循环首 (i ≠ 0)
        .如果真 (i % 2 = 1)
            k = k + 1
            临时文本 = 临时文本 + 到文本 (a [j]) + “ ”
        .如果真结束
        i = i ÷ 2
        j = j + 1
    .判断循环尾 ()
    .如果真 (k = n)
        m = 分割文本 (临时文本, “ ”, n)
        b = 到整数 (m [n - 7])
        c = 到整数 (m [n - 6])
        d = 到整数 (m [n - 5])
        e = 到整数 (m [n - 4])
        f = 到整数 (m [n - 3])
        g = 到整数 (m [n - 2])
        h = 到整数 (m [n - 1])
        l = 到整数 (m [n - 0])
        .如果 (l - h = h - g = g - f = f - e = 1) 或 (h - g = g - f = f - e = e - d = 1) 或( g - f = f - e = e - d = d - c = 1 )或( f - e = e - d = d - c = c - b = 1)

        .否则
            编辑框1.加入文本 (删尾空 (临时文本) + “\n”)
        .如果结束
        临时文本1 = 临时文本 + “\n”
    .如果真结束

.计次循环尾 ()

易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

91

主题

2893

积分

0

精华

用户组 

易积分
1176
热心
4
好评
0

活跃会员

发表于 2020-5-15 05:11:45 | 显示全部楼层
连号什么意思
易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

28

主题

519

积分

0

精华

用户组 

易积分
3564
热心
9
好评
2
QQ

热心会员活跃会员

发表于 2020-5-15 08:06:21 来自手机 | 显示全部楼层
什么意思?看不懂(=_=)题目
易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

28

主题

519

积分

0

精华

用户组 

易积分
3564
热心
9
好评
2
QQ

热心会员活跃会员

发表于 2020-5-15 08:14:28 | 显示全部楼层
XF谭镇洋 发表于 2020-5-15 08:06
什么意思?看不懂(=_=)题目

楼主的意思是不是判断临时文本是否有5个或5个以上的相连数字数列?
*例子:临时文本="12368",判断:假
*例子:临时文本="45678",判断:真

???
易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

12

主题

138

积分

0

精华

用户组 

易积分
1249
热心
0
好评
0
发表于 2020-5-15 11:02:53 来自手机 | 显示全部楼层
XF谭镇洋 发表于 2020-5-15 08:14
楼主的意思是不是判断临时文本是否有5个或5个以上的相连数字数列?
*例子:临时文本="12368",判断:假
* ...

是的,没错,就是它。
易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

28

主题

519

积分

0

精华

用户组 

易积分
3564
热心
9
好评
2
QQ

热心会员活跃会员

发表于 2020-5-15 11:34:28 来自手机 | 显示全部楼层
木头人 发表于 2020-5-15 11:02
是的,没错,就是它。

最简单的枚举法:
思路:先添加五个数字相连的结果列表,便于后面寻找文本
*注释:这里只添加了100组5个数字相连的数列,也就是到101012103104105这数列开始不管用了,楼主可以根据需求来调整循环次数

贴代码:(记得要先建一个成员为0的柔性文本型数组,准备好文本变量和用于储存条件是否成立的逻辑变量)

计次循环首(100,计次)
    数组[计次] = 到文本(计次) + 到文本(计次 + 1) + 到文本(计次 + 3) + 到文本(计次 + 4) + 到文本(计次 + 5)
计次循环尾()
计次循环首(100,计次)
    如果真(寻找文本(文本,数组[计次])≠-1)
        结果 = 真
计次循环尾()
如果真(结果 = 空)
    结果 = 假
易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

12

主题

138

积分

0

精华

用户组 

易积分
1249
热心
0
好评
0
发表于 2020-5-15 12:30:43 来自手机 | 显示全部楼层
XF谭镇洋 发表于 2020-5-15 11:34
最简单的枚举法:
思路:先添加五个数字相连的结果列表,便于后面寻找文本
*注释:这里只添加了100组5个数字 ...

本来是不要这个判断是否5连的,排列(30,8)在笔记本电脑上排列了半天都没排列完,我又想到排列出来的有一半是不要的,所以才要加判断,结果列表是没知的,如果有结果列表做个比较就行了,就不用让教大神了。
易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

21

主题

376

积分

0

精华

用户组 

易积分
425
热心
1
好评
0
发表于 2020-5-17 18:05:05 | 显示全部楼层
嗯  楼上说的有道理
易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

45

主题

1278

积分

0

精华

用户组 

易积分
5051
热心
1
好评
1

活跃会员热心会员

发表于 2020-5-18 12:30:06 | 显示全部楼层
这是易语言的!你在E4A提问?
易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

17

主题

715

积分

0

精华

用户组 

易积分
4638
热心
0
好评
11
QQ
发表于 2020-5-18 12:50:49 来自手机 | 显示全部楼层
这种逻辑类的我拿手。可惜,你找的是你自己的思路的方法。
易如意中文编程学习交流论坛有你更精彩~
回复

使用道具 举报

QQ|sitemap|免责声明|RGB颜色对照表|手机版|小黑屋| 易如意 - E4A中文编程学习交流论坛

GMT+8, 2024-4-29 09:14 , Processed in 0.074105 second(s), 31 queries .

Powered by Discuz! X3.4

© 2001-2018 eruyi.cn

返回顶部