不算什么奇思妙想,我觉得应该有这样的工具但没找到

2016-10-28 14:30:57 +08:00
 imn1
需要一个 GUI ,简单如 html with js 也行

举个例子
有 ABCD 四个环境条件, AB 各有两种状态, CD 各有三种状态
根据不同状态的组合,罗列所有可能性,每种可能对应一个值(类别),类别也只有三种
例如此例共 36 种可能性

然后写逻辑式(规律需要自己发掘),每条限订使用不超过若干个(例如 5 个)基础逻辑比较,期望用最少的条数涵盖所有的可能性
限订较少基础判断是避免一长串 (...) or (...) or (...) or (...) ... 这样的超长逻辑式难以阅读,不是说非要这样
“基础逻辑”的意思是只有一个逻辑判断符,例如 A==2

期望 GUI 做什么呢?就是每写一条,能把这条所涵盖的可能性“亮灯”,例如背景颜色改变
这样,可以比较清晰知道在已完成的部分,还有什么可能性没有被逻辑判断涵盖,避免遗漏

需求源自写某些程序,需要根据逻辑对“全体”进行分类,但逻辑未知,需要自己依据已知状态规律组织逻辑语句
像上面例子,写满 36 条当然就没问题了,但这时往往希望逻辑语句尽可能少,但又要在尽可能少的情况下没有遗漏,要么反复测试,不然就比较烧脑了


如果有这样的工具请介绍一个给我, linux/web 均可

-----------------------------------------------------------------
A B C D V
1 1 1 1 1
1 1 1 2 2
1 1 1 3 3
1 1 2 1 1
1 1 2 2 2
1 1 2 3 3
1 1 3 1 1
1 1 3 2 1
1 1 3 3 3
1 2 1 1 1
1 2 1 2 3
1 2 1 3 3
1 2 2 1 1
1 2 2 2 2
1 2 2 3 3
1 2 3 1 1
1 2 3 2 1
1 2 3 3 3
2 1 1 1 1
……
下面的值全是 1 ,所以第一条逻辑很简单 if A==2 then V=1 ,填入一个框后,上表对应的行变色就可以了
这个只是例子,不是让大家做这道题

至于这个工具的实用性,写程序自然不用说,我首先想到的是足球比赛,某队伍小组出线(或夺冠)的可能性,罗列所有可能,把实时比分填进去就能知道还剩多少条可能
那些足球解说或者记着,显然都是文科出身,总是“算错”,不过也难为他们,有些逻辑是比较烧脑的
2855 次点击
所在节点    奇思妙想
11 条回复
forestyuan
2016-10-28 22:04:35 +08:00
自己写一个貌似也不难吧
imn1
2016-10-29 10:49:11 +08:00
@forestyuan
所有关于界面的都不熟悉,包括 html , js 知识停留在 ie6 时代吧
现在写 js 只写 firefox 浏览器级的 uc.js ,写过几个 uc.js 辅助浏览,如自动输入密码,小按钮之类
可怜 firefox 现在也要放弃 uc.js 了,这样我又多了一门过时的技巧……

其他的基本只会 cli

不难,当然原因是懒,主要是不算迫切需求,没有“一定搞定它”的动力
jedihy
2016-10-30 11:04:54 +08:00
这不是一个 dfs 吗?
imn1
2016-10-30 11:38:05 +08:00
@jedihy
dfs 是什么,科普一下
jedihy
2016-10-30 14:32:05 +08:00
深度优先搜索
imn1
2016-10-30 14:52:59 +08:00
@jedihy
哦,果然是这个,我也没搜索错
不过你说的应该是怎样找规律,就是达成“最少语句”这个需求
但我说的需求不是这点,写逻辑这个交给其他去做(怎么找另话),而是在已经找出规律后能逐条语句显示覆盖了多少范围
yalanaika
2016-10-31 11:56:41 +08:00
最少语句先要有运算集啊。。 如果全是布尔逻辑的话那就是数字逻辑 这个的最简形的研究已经很透彻了 问题是有三值和多值 就很烦了
domty
2016-11-03 17:42:54 +08:00
就是说假设有多个变量组成的一个组合的状态。
当你指定其中一个(或几个)变量的状态后,程序能够返回所有符合这个状态的组合状态的结果?
imn1
2016-11-03 17:59:36 +08:00
@domty
差不多,重点是显示不符合的结果
skyblue
2016-11-04 15:55:48 +08:00
excel?
Arnie97
2016-11-04 23:55:11 +08:00
Prolog ?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/316191

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX