奇思妙想(中文编程)
来源:互联网 发布:数据库日志怎么看 编辑:程序博客网 时间:2024/04/28 16:06
我的思路是:用户输入中文需求指令,生成对应程序,直接撸代码
package word;import java.io.BufferedReader;import java.io.File;import java.io.FileReader;//做分词的一个接口 为这个项目的完成 在网上做很多接口 直接调用就好//当然也可以也在源码里 对文字的一系列处理//假定一行中文对应一条指令 很多功能会封装起来//设计会考虑很多设计模式的东西 如重用public class word {/** * 读取txt文件的内容 * @param file 想要读取的文件对象 * @return 返回文件内容 */ public static String txt2String(File file){ StringBuilder result = new StringBuilder(); try{ BufferedReader br = new BufferedReader(new FileReader(file));//构造一个BufferedReader类来读取文件 String s = null; while((s = br.readLine())!=null){//使用readLine方法,一次读一行 if(s.equals("输出hello world!") ){ System.out.println("cout<<\"hello world!\";"); } result.append(System.lineSeparator()+s); } br.close(); }catch(Exception e){ e.printStackTrace(); } return result.toString(); }public static void main(String[] args){File file = new File("D:/chinese.txt"); System.out.println(txt2String(file));}}
可以看出,程序可以根据输入的中文指令生成相应的代码(cout<<"hello world!")。这也是最为简单的中文指令生成代码模式。
后面的问题是如何能够执行其它中文指令,然后是如何处理很多句的需求描述。尽量用点智能的思想,毕竟得赶时代不是吗?最后就是做成多语言版本的。
希望看到的同志们,有兴趣可以做呀,这个貌似一个人要做一阵子呢。
//设计输入规则
/*
* 每行一条指令
* 每行前几个字作为核心关键词 关键词等级关联 例如:(for、while等)循环输入 循环/输入 读取文件
* 前几个词的关键词暂定为:输出 输入 循环 读取 求 计算
* 先捕捉变量,先生成变量,然后再生成具体程序
* 按需读取或生成程序
* 能求解数学问题是关键,能求解非常复杂的数学是成功
* 这样不会编程的研究人员也可以去搞代码用来辅助研究,而学生或其他人可用来学习标准程序,当然很多非计算机专业或者本专业的学生在做作业时没思路,这个可以辅助帮助
* 而且生成的代码有非常详细和标准的注释
* 有点类似专家系统
* 最终做成一个插件集成在其他应用上?
* 最后要能够排除干扰词汇和语句,生成目标代码
* 得先收集测试语句,然后才能设计输入规则,设计和实现处理策略,最后才能去生成代码
* 收集测试语句的话,得从c/c++/java/pathon等语言教材和课后习题搜集,当然还有很多其他资料
*/
阅读全文
0 0
- 奇思妙想(中文编程)
- 位运算----奇思妙想(一)
- 奇思妙想废话连篇
- 奇思妙想(一)
- 链表-奇思妙想
- 奇思妙想<二>
- 奇思妙想
- 奇思妙想
- CSS 奇思妙想
- 不仅仅是奇思妙想
- 奇思妙想之开篇
- 奇思妙想位运算
- “奇思妙想”15位计算机大师--(书摘)
- asp——奇思妙想 & 困惑
- 各种奇思妙想的怪异网站
- 家有千金之奇思妙想
- 奇思妙想之蓝牙上网
- 爱T派的奇思妙想
- 1125 交换机器的最小代价 51NOD
- 【BS】网站常用功能设置总结——Demo
- C++ 单实例模式 线程安全
- Python&Print Time&Read Images
- Python条件判断和循环
- 奇思妙想(中文编程)
- 《算法分析与设计》Week 10
- CPU和内存之间——地址映射(知识总结)
- 【操作系统】内存分段技术
- 项目实训-千寻-核心业务逻辑_需求发布与展示
- 分图层加载CAD数据
- Html基本标签
- 58 C语言跳出循环
- [JZOJ5130][51nod1446][SDOI省队集训2017]苹果树