很久以前在《i时代报》看到心理测试题,就一直想开发这个好玩的程序!只是没时间开发,这次又报纸上看到测试题,突然又来兴趣了!这个程序逻辑我早就考虑过了,也不太难!正好用这个来练习自己对AS3编程感觉了!
    这次编程让我掌握了AS3中的XML,Stage,URLLoader,TextField,Sprite类的用法,还有AS3自带的组件使用。Flash帮助文件一直是我的老师,我的字典。它里面的调用实例一直很不错的。建议大家要养成看帮助文件的习惯,有些问题都可以在帮助文件中找到解决办法的,这个也是此次编程的心得。
   这个程序除使用Flash自带的组件外,其他全部是用代码实现的,而且采用了document class的方式,fla文件里没有一点代码。算是真正意义上的代码和设计分离吧!

演示地址: http://www.klstudio.com/demo/topic/topic.html?path=t1.xml
Main类

view plain copy to clipboard print ?
  1. package project.topic {
  2. import flash.display.*;
  3. import flash.net.*;
  4. import flash.events.*;
  5. import flash.errors.*;
  6. import flash.text.*;
  7. import flash.xml.*;
  8. import fl.controls.Button;
  9. import fl.controls.RadioButton;
  10. import fl.controls.RadioButtonGroup;
  11. import fl.controls.ScrollPolicy;
  12. import fl.containers.ScrollPane;
  13. public class Main extends Sprite{
  14. private var type:String;
  15. private var pointer:uint;
  16. private var value:uint;
  17. private var xmlData:XML;
  18. private var loader:URLLoader;
  19. private var preWidth:uint;
  20. private var preHeight:uint;
  21. private var borderColor:uint;
  22. private var bgColor:uint;
  23. private var bg:Shape;
  24. private var button:Button;
  25. private var title:TextField;
  26. private var copyright:TextField;
  27. private var content:Sprite;
  28. private var group:RadioButtonGroup;
  29. private var pane:ScrollPane;
  30. public function Main(){
  31. this.init();
  32. this.drawSkin();
  33. this.readXml(this.loaderInfo.parameters.path);
  34. }
  35. private function init():void{
  36. this.bgColor = 0xeeeeee;
  37. this.borderColor = 0x666666;
  38. this.preWidth = 500;
  39. this.preHeight = 400;
  40. this.type = "jump";
  41. this.value = 0;
  42. this.loader = new URLLoader();
  43. this.configureURLLoaderListeners(this.loader);
  44. stage.scaleMode = StageScaleMode.NO_SCALE;
  45. stage.align = StageAlign.TOP_LEFT;
  46. stage.showDefaultContextMenu = false;
  47. stage.addEventListener(Event.RESIZE, resizeHandler);
  48. }
  49. private function drawSkin():void{
  50. //bg;
  51. bg = new Shape();
  52. addChild(bg);
  53. //title;
  54. title = new TextField();
  55. title.autoSize = TextFieldAutoSize.LEFT;
  56. title.selectable = false;
  57. title.defaultTextFormat = new TextFormat("Courier New",18,0x333333,true);
  58. title.x = 5;
  59. title.y = 5;
  60. title.text = "[心理测试]-";
  61. addChild(title);
  62. //copyright;
  63. copyright = new TextField();
  64. copyright.autoSize = TextFieldAutoSize.LEFT;
  65. copyright.selectable = false;
  66. copyright.defaultTextFormat = new TextFormat("Verdana",9,0x666666,true,null,null,"http://www.kltudio.com","_blank");
  67. copyright.text = "POWERED BY KINGLONG";
  68. addChild(copyright);
  69. //content
  70. content = new Sprite();
  71. //scrollPane;
  72. pane = new ScrollPane();
  73. pane.horizontalScrollPolicy = ScrollPolicy.OFF;
  74. pane.verticalScrollPolicy = ScrollPolicy.ON;
  75. pane.source = content;
  76. addChild(pane);
  77. //Button;
  78. button = new Button();
  79. button.width = 100;
  80. button.setStyle("textFormat", new TextFormat("Courier New",12));
  81. button.label = "开始测试";
  82. button.enabled = false;
  83. button.addEventListener(MouseEvent.CLICK, buttonClickHandler);
  84. addChild(button);
  85. updateSkin();
  86. }
  87. private function updateSkin():void{
  88. if(copyright != null){
  89. copyright.x = 10;
  90. copyright.y = preHeight - 24;
  91. }
  92. if(bg != null){
  93. bg.graphics.clear();
  94. bg.graphics.beginFill(this.bgColor);
  95. bg.graphics.drawRect(0,0,preWidth,34);
  96. bg.graphics.drawRect(0,preHeight - 34,preWidth,34);
  97. bg.graphics.endFill();
  98. bg.graphics.beginFill(this.borderColor);
  99. bg.graphics.drawRect(0,33,preWidth,1);
  100. bg.graphics.endFill();
  101. }
  102. if(button != null){
  103. button.move(preWidth - button.width - 5,preHeight - button.height - 5);
  104. }
  105. if(pane != null){
  106. pane.move(0,34);
  107. pane.setSize(preWidth,preHeight-34*2);
  108. updatePaneContent();
  109. }
  110. }
  111. private function updatePaneContent(){
  112. if(this.content.numChildren > 0){
  113. var dy:uint = 5;
  114. var sw:uint = pane.verticalScrollBar.width;
  115. for(var i:uint = 0;i< this.content.numChildren;i++){
  116. var item:Object = this.content.getChildAt(i);
  117. if(item is TextField){
  118. item.x = 0;
  119. item.y = dy;
  120. item.width = preWidth - sw;
  121. dy += item.height + 5;
  122. }else if(item is Answer){
  123. item.x = 0;
  124. item.y = dy;
  125. item.update(preWidth - sw);
  126. dy += item.getHeight() + 5;
  127. }
  128. }
  129. }
  130. pane.refreshPane();
  131. }
  132. public function setTitle(title:String):void{
  133. this.title.text = "[测试]-"+title;
  134. }
  135. public function clearPaneContent():void{
  136. while(this.content.numChildren > 0){
  137. this.content.removeChildAt(0);
  138. }
  139. }
  140. public function setPaneContentList(node:XMLList){
  141. this.clearPaneContent();
  142. this.button.enabled = false;
  143. var tt:TextField = new TextField();
  144. tt.autoSize = TextFieldAutoSize.LEFT;
  145. tt.selectable = false;
  146. tt.multiline = true;
  147. tt.wordWrap = true;
  148. tt.defaultTextFormat = new TextFormat("Courier New",16,0x444444,true,true,null,null,null,null,5,5,null,5);
  149. tt.text = node.@id+"."+node.problem;
  150. this.content.addChild(tt);
  151. var opt:XML = null;
  152. group = new RadioButtonGroup("opts");
  153. group.addEventListener(MouseEvent.CLICK, groupClickHandler);
  154. group.addEventListener(Event.CHANGE, groupClickHandler);
  155. for each(opt in node.answer.option){
  156. var answer:Answer = new Answer(group,opt);
  157. answer.update(preWidth-pane.verticalScrollBar.width);
  158. this.content.addChild(answer);
  159. }
  160. updatePaneContent();
  161. }
  162. public function setPaneContentString(ti:String,msg:String):void{
  163. this.clearPaneContent();
  164. var tt:TextField = new TextField();
  165. tt.autoSize = TextFieldAutoSize.LEFT;
  166. tt.selectable = false;
  167. tt.multiline = true;
  168. tt.wordWrap = true;
  169. tt.defaultTextFormat = new TextFormat("Courier New",16,0x444444,true,true,null,null,null,null,5,5,null,5);
  170. tt.text = ti;
  171. this.content.addChild(tt);
  172. var desc:TextField = new TextField();
  173. desc.autoSize = TextFieldAutoSize.LEFT;
  174. desc.selectable = false;
  175. desc.multiline = true;
  176. desc.wordWrap = true;
  177. desc.defaultTextFormat = new TextFormat("Courier New",12,0x666666,null,null,null,null,null,null,5,5,null,5);
  178. desc.htmlText = msg;
  179. this.content.addChild(desc);
  180. updatePaneContent();
  181. }
  182. public function readXml(url:String):void{
  183. this.setPaneContentString("提示信息","正在加载["+url+"]文件...");
  184. try{
  185. this.loader.load(new URLRequest(url));
  186. } catch (error:Error) {
  187. this.errorHandler(new ErrorEvent(ErrorEvent.ERROR));
  188. }
  189. }
  190. private function buttonClickHandler(event:Event):void {
  191. switch(event.target.label){
  192. case "开始测试":
  193. this.value = 0;
  194. this.pointer = 0;
  195. this.pointer ++;
  196. this.setPaneContentList(this.xmlData.list.item.(@id==this.pointer));
  197. this.button.label = "下一步";
  198. break;
  199. case "下一步":
  200. var res:String = ""+group.selectedData;
  201. switch(this.type){
  202. case "jump":
  203. var arr:Array = res.split("_");
  204. if(arr[0] == "p"){
  205. this.setPaneContentList(this.xmlData.list.item.(@id==arr[1]));
  206. }else{
  207. this.setPaneContentString("分析结果",this.xmlData.result.item.(@id==arr[1]));
  208. this.button.label = "重新测试";
  209. }
  210. break;
  211. case "sum":
  212. this.value += Number(res);
  213. this.pointer ++;
  214. if(this.pointer <= this.xmlData.list.item.length()){
  215. this.setPaneContentList(this.xmlData.list.item.(@id==this.pointer));
  216. }else{
  217. this.setPaneContentString("分析结果",this.getResultContent(this.value));
  218. this.button.label = "重新测试";
  219. }
  220. break;
  221. }
  222. break;
  223. case "重新测试":
  224. this.value = 0;
  225. this.pointer = 0;
  226. this.button.label = "开始测试";
  227. this.setPaneContentString("简述",xmlData.description);
  228. break;
  229. }
  230. }
  231. private function getResultContent(num:uint):String{
  232. var opt:XML = null;
  233. for each(opt in this.xmlData.result.item){
  234. var min:uint = Number(opt.@min);
  235. var max:uint = Number(opt.@max);
  236. if(((min == 0)||(num >= min)) && ((max == 0)||(num <= max))){
  237. return opt + "";
  238. }
  239. }
  240. return "";
  241. }
  242. private function groupClickHandler(event:Event):void {
  243. this.button.enabled = true;
  244. }
  245. private function resizeHandler(event:Event):void {
  246. preWidth = (stage.stageWidth > 500)?stage.stageWidth:500;
  247. preHeight = (stage.stageHeight > 400)?stage.stageHeight:400;
  248. updateSkin();
  249. }
  250. private function configureURLLoaderListeners(dispatcher:IEventDispatcher):void {
  251. dispatcher.addEventListener(Event.COMPLETE, completeHandler);
  252. dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, errorHandler);
  253. dispatcher.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
  254. }
  255. private function completeHandler(event:Event):void{
  256. xmlData = new XML(this.loader.data);
  257. xmlData.ignoreWhitespace = true;
  258. xmlData.ignoreComments = true;
  259. this.setTitle(xmlData.title);
  260. this.setPaneContentString("简述",xmlData.description);
  261. this.type = xmlData.type;
  262. button.enabled = true;
  263. }
  264. private function errorHandler(event:Event):void{
  265. this.setPaneContentString("错误信息",event.toString());
  266. }
  267. }
  268. }

package project.topic { import flash.display.*; import flash.net.*; import flash.events.*; import flash.errors.*; import flash.text.*; import flash.xml.*; import fl.controls.Button; import fl.controls.RadioButton; import fl.controls.RadioButtonGroup; import fl.controls.ScrollPolicy; import fl.containers.ScrollPane; public class Main extends Sprite{ private var type:String; private var pointer:uint; private var value:uint; private var xmlData:XML; private var loader:URLLoader; private var preWidth:uint; private var preHeight:uint; private var borderColor:uint; private var bgColor:uint; private var bg:Shape; private var button:Button; private var title:TextField; private var copyright:TextField; private var content:Sprite; private var group:RadioButtonGroup; private var pane:ScrollPane; public function Main(){ this.init(); this.drawSkin(); this.readXml(this.loaderInfo.parameters.path); } private function init():void{ this.bgColor = 0xeeeeee; this.borderColor = 0x666666; this.preWidth = 500; this.preHeight = 400; this.type = "jump"; this.value = 0; this.loader = new URLLoader(); this.configureURLLoaderListeners(this.loader); stage.scaleMode = StageScaleMode.NO_SCALE; stage.align = StageAlign.TOP_LEFT; stage.showDefaultContextMenu = false; stage.addEventListener(Event.RESIZE, resizeHandler); } private function drawSkin():void{ //bg; bg = new Shape(); addChild(bg); //title; title = new TextField(); title.autoSize = TextFieldAutoSize.LEFT; title.selectable = false; title.defaultTextFormat = new TextFormat("Courier New",18,0x333333,true); title.x = 5; title.y = 5; title.text = "[心理测试]-"; addChild(title); //copyright; copyright = new TextField(); copyright.autoSize = TextFieldAutoSize.LEFT; copyright.selectable = false; copyright.defaultTextFormat = new TextFormat("Verdana",9,0x666666,true,null,null,"http://www.kltudio.com","_blank"); copyright.text = "POWERED BY KINGLONG"; addChild(copyright); //content content = new Sprite(); //scrollPane; pane = new ScrollPane(); pane.horizontalScrollPolicy = ScrollPolicy.OFF; pane.verticalScrollPolicy = ScrollPolicy.ON; pane.source = content; addChild(pane); //Button; button = new Button(); button.width = 100; button.setStyle("textFormat", new TextFormat("Courier New",12)); button.label = "开始测试"; button.enabled = false; button.addEventListener(MouseEvent.CLICK, buttonClickHandler); addChild(button); updateSkin(); } private function updateSkin():void{ if(copyright != null){ copyright.x = 10; copyright.y = preHeight - 24; } if(bg != null){ bg.graphics.clear(); bg.graphics.beginFill(this.bgColor); bg.graphics.drawRect(0,0,preWidth,34); bg.graphics.drawRect(0,preHeight - 34,preWidth,34); bg.graphics.endFill(); bg.graphics.beginFill(this.borderColor); bg.graphics.drawRect(0,33,preWidth,1); bg.graphics.endFill(); } if(button != null){ button.move(preWidth - button.width - 5,preHeight - button.height - 5); } if(pane != null){ pane.move(0,34); pane.setSize(preWidth,preHeight-34*2); updatePaneContent(); } } private function updatePaneContent(){ if(this.content.numChildren > 0){ var dy:uint = 5; var sw:uint = pane.verticalScrollBar.width; for(var i:uint = 0;i< this.content.numChildren;i++){ var item:Object = this.content.getChildAt(i); if(item is TextField){ item.x = 0; item.y = dy; item.width = preWidth - sw; dy += item.height + 5; }else if(item is Answer){ item.x = 0; item.y = dy; item.update(preWidth - sw); dy += item.getHeight() + 5; } } } pane.refreshPane(); } public function setTitle(title:String):void{ this.title.text = "[测试]-"+title; } public function clearPaneContent():void{ while(this.content.numChildren > 0){ this.content.removeChildAt(0); } } public function setPaneContentList(node:XMLList){ this.clearPaneContent(); this.button.enabled = false; var tt:TextField = new TextField(); tt.autoSize = TextFieldAutoSize.LEFT; tt.selectable = false; tt.multiline = true; tt.wordWrap = true; tt.defaultTextFormat = new TextFormat("Courier New",16,0x444444,true,true,null,null,null,null,5,5,null,5); tt.text = node.@id+"."+node.problem; this.content.addChild(tt); var opt:XML = null; group = new RadioButtonGroup("opts"); group.addEventListener(MouseEvent.CLICK, groupClickHandler); group.addEventListener(Event.CHANGE, groupClickHandler); for each(opt in node.answer.option){ var answer:Answer = new Answer(group,opt); answer.update(preWidth-pane.verticalScrollBar.width); this.content.addChild(answer); } updatePaneContent(); } public function setPaneContentString(ti:String,msg:String):void{ this.clearPaneContent(); var tt:TextField = new TextField(); tt.autoSize = TextFieldAutoSize.LEFT; tt.selectable = false; tt.multiline = true; tt.wordWrap = true; tt.defaultTextFormat = new TextFormat("Courier New",16,0x444444,true,true,null,null,null,null,5,5,null,5); tt.text = ti; this.content.addChild(tt); var desc:TextField = new TextField(); desc.autoSize = TextFieldAutoSize.LEFT; desc.selectable = false; desc.multiline = true; desc.wordWrap = true; desc.defaultTextFormat = new TextFormat("Courier New",12,0x666666,null,null,null,null,null,null,5,5,null,5); desc.htmlText = msg; this.content.addChild(desc); updatePaneContent(); } public function readXml(url:String):void{ this.setPaneContentString("提示信息","正在加载["+url+"]文件..."); try{ this.loader.load(new URLRequest(url)); } catch (error:Error) { this.errorHandler(new ErrorEvent(ErrorEvent.ERROR)); } } private function buttonClickHandler(event:Event):void { switch(event.target.label){ case "开始测试": this.value = 0; this.pointer = 0; this.pointer ++; this.setPaneContentList(this.xmlData.list.item.(@id==this.pointer)); this.button.label = "下一步"; break; case "下一步": var res:String = ""+group.selectedData; switch(this.type){ case "jump": var arr:Array = res.split("_"); if(arr[0] == "p"){ this.setPaneContentList(this.xmlData.list.item.(@id==arr[1])); }else{ this.setPaneContentString("分析结果",this.xmlData.result.item.(@id==arr[1])); this.button.label = "重新测试"; } break; case "sum": this.value += Number(res); this.pointer ++; if(this.pointer <= this.xmlData.list.item.length()){ this.setPaneContentList(this.xmlData.list.item.(@id==this.pointer)); }else{ this.setPaneContentString("分析结果",this.getResultContent(this.value)); this.button.label = "重新测试"; } break; } break; case "重新测试": this.value = 0; this.pointer = 0; this.button.label = "开始测试"; this.setPaneContentString("简述",xmlData.description); break; } } private function getResultContent(num:uint):String{ var opt:XML = null; for each(opt in this.xmlData.result.item){ var min:uint = Number(opt.@min); var max:uint = Number(opt.@max); if(((min == 0)||(num >= min)) && ((max == 0)||(num <= max))){ return opt + ""; } } return ""; } private function groupClickHandler(event:Event):void { this.button.enabled = true; } private function resizeHandler(event:Event):void { preWidth = (stage.stageWidth > 500)?stage.stageWidth:500; preHeight = (stage.stageHeight > 400)?stage.stageHeight:400; updateSkin(); } private function configureURLLoaderListeners(dispatcher:IEventDispatcher):void { dispatcher.addEventListener(Event.COMPLETE, completeHandler); dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, errorHandler); dispatcher.addEventListener(IOErrorEvent.IO_ERROR, errorHandler); } private function completeHandler(event:Event):void{ xmlData = new XML(this.loader.data); xmlData.ignoreWhitespace = true; xmlData.ignoreComments = true; this.setTitle(xmlData.title); this.setPaneContentString("简述",xmlData.description); this.type = xmlData.type; button.enabled = true; } private function errorHandler(event:Event):void{ this.setPaneContentString("错误信息",event.toString()); } } }

Answer类

view plain copy to clipboard print ?
  1. package project.topic {
  2. import flash.display.*;
  3. import flash.text.*;
  4. import flash.xml.*;
  5. import flash.events.*;
  6. import fl.controls.RadioButton;
  7. import fl.controls.RadioButtonGroup;
  8. public class Answer extends Sprite{
  9. private var node:XML;
  10. private var radio:RadioButton;
  11. private var lbl:TextField;
  12. private var group:RadioButtonGroup;
  13. public function Answer(group:RadioButtonGroup,node:XML){
  14. this.node = node;
  15. radio = new RadioButton();
  16. radio.group = group;
  17. radio.value = node.@value;
  18. radio.label = "";
  19. radio.move(0,0);
  20. radio.width = 20;
  21. radio.height = 20;
  22. addChild(this.radio);
  23. lbl = new TextField();
  24. lbl.autoSize = TextFieldAutoSize.LEFT;
  25. lbl.selectable = false;
  26. lbl.multiline = true;
  27. lbl.wordWrap = true;
  28. lbl.x = 20;
  29. lbl.y = 0;
  30. lbl.defaultTextFormat = new TextFormat("Courier New",12,0x666666,null,null,null,null,null,null,5,5,null,5);
  31. lbl.text = node;
  32. lbl.addEventListener(MouseEvent.CLICK, clickHandler);
  33. addChild(lbl);
  34. }
  35. public function getHeight():uint{
  36. return this.lbl.height;
  37. }
  38. public function update(width:uint):void{
  39. this.lbl.width = width - 20;
  40. }
  41. private function clickHandler(event:Event):void {
  42. this.radio.selected = true;
  43. }
  44. }
  45. }

package project.topic { import flash.display.*; import flash.text.*; import flash.xml.*; import flash.events.*; import fl.controls.RadioButton; import fl.controls.RadioButtonGroup; public class Answer extends Sprite{ private var node:XML; private var radio:RadioButton; private var lbl:TextField; private var group:RadioButtonGroup; public function Answer(group:RadioButtonGroup,node:XML){ this.node = node; radio = new RadioButton(); radio.group = group; radio.value = node.@value; radio.label = ""; radio.move(0,0); radio.width = 20; radio.height = 20; addChild(this.radio); lbl = new TextField(); lbl.autoSize = TextFieldAutoSize.LEFT; lbl.selectable = false; lbl.multiline = true; lbl.wordWrap = true; lbl.x = 20; lbl.y = 0; lbl.defaultTextFormat = new TextFormat("Courier New",12,0x666666,null,null,null,null,null,null,5,5,null,5); lbl.text = node; lbl.addEventListener(MouseEvent.CLICK, clickHandler); addChild(lbl); } public function getHeight():uint{ return this.lbl.height; } public function update(width:uint):void{ this.lbl.width = width - 20; } private function clickHandler(event:Event):void { this.radio.selected = true; } } }

代码使用时,只要把"RadioButton","Button","ScrollPane"放到fla文件库就可以了,然后只在fla文件属性里设置document class值为"project.topic.Main"就可以了

所使用到的xml文件路径:“ t1.xml” ,当然你也可以继续完善代码!

[AS3]心理测试题的开发相关推荐

  1. 计算机心理学测试题目及答案解析,大学生趣味心理测试题及答案

    当你对一个人感到趣味的时候,就会发现看对方会越看越顺眼,当你对一个人产生趣味的时候,可能你就已经陷入了爱情的漩涡中,下面学习啦小编收集整理了一些相关资料,供大家学习借鉴! 大学生趣味心理测试题篇一 你 ...

  2. 基于python 心理测试题

    # coding=utf-8 """ @author:maker @date:2019-07-05 """""" ...

  3. 职业选择心理测试软件,职业选择的心理测试题

    打从学校全部毕业之后,接下来大半生的打拼都即将是在职场中.在这个竞争激烈的"战场"上,我们总是为着升职加薪的目标去前进.以下是学习啦小编为您准备的职业选择的心理测试题,希望对您有所 ...

  4. c语言程序 心理测试,简单心理测试题及答案

    简单心理测试题及答案 1.心理现象分为(A) A.心理过程与个性心理 B.认知过程与个性心理 C.情感过程与个性心理 D.意志过程与个性心理. 2.心理过程包括(D) A.认识过程.情感过程.行为过程 ...

  5. 微信小程序学习(一)心理测试题库改造

    文章目录 前言 一.分析 二.行动 1.修改题库 2.修改函数 三.收获 四.扩展 五.引用 前言   学微信小程序课程学到题库开发,正好看到个考研模型,相似度比较高,就起了魔改一番的心思 一.分析 ...

  6. 答题类微信小程序(心理测试题)

    最近课上的作业要求我们写一个微信小程序关于心理测试的,我简略的完成了.. 附上GitHub地址:https://github.com/Silverados/We-AnswerPage 目前小程序实现的 ...

  7. 平安性格测试题及答案_性格趣味小测试题 有趣的心理测试题大全及答案

    每个人的性格都不一定如我们所看到的一般,很多人对自己的性格认知也不深,下面有10道趣味小测试题,并附有测试答案,接下来就一起来做个性格测试题,来测测你的性格. 性格趣味小测试题.注意:每题只能选择一个 ...

  8. 计算机心理测试题,计算机也能当“心理医生” “知心情感计算”带你领略脑科学前沿技术...

    中新网上海7月10日电 (张践)人随时随地都会有喜怒哀乐等情感的起伏变化,那么在人与人工智能交互过程中,机器是否能够体会人的喜怒哀乐呢? 7月9日,在上海举行的2021世界人工智能大会现场,中新网记者 ...

  9. 逻辑心理测试题:三囚分汤

    一间囚房里关押着两个犯人.每天监狱都会为这间囚房提供一罐汤,让这两个犯人自己来分.起初,这两个 人经常会发生争执,因为他们总是有人认为对方的汤比自己的多.后来他们找到了一个两全其美的办法:一个人分汤, ...

最新文章

  1. pythoninterpolate用法_Pytorch上下采样函数--interpolate用法
  2. 远程连接Kali Linux使用PuTTY实现SSH远程连接
  3. 【PAT甲级 大数运算】1065 A+B and C (64bit) (20 分) Python 全部AC
  4. 程序员必备的10大健康装备!——我们要工作更要健康!
  5. 基于vue-cli的vuex配置
  6. this.$modal.confirm 自定义按钮关闭_【勤哲资料】7.6 自定义打印
  7. Vue父组件监听子组件调用删除模块(个性化页面设置会使用到)
  8. 陪跑 Android 十年,这家操作系统创业公司终于实现盈利!
  9. 创建一个简单的数据库
  10. Android布局详解(二)
  11. 扇贝有道180916每日一句
  12. 光谱共焦位移传感器原理
  13. 【数据库基础】数据库的视图操作
  14. 如何查看电脑上是否安装了MySQL
  15. 随笔(2015.11)
  16. 用python创建widows窗口
  17. 推荐系统(一)推荐系统整体概览
  18. JSP自定义标签(一)
  19. 基于STM32和ATH20实现OLED显示温湿度
  20. go语言处理html文件,golang解析html网页的方法

热门文章

  1. 使用Mac终端将mp3/m4r格式转为caf格式
  2. 浅拷贝、深拷贝、值拷贝和位拷贝
  3. Ubuntu安装webpack
  4. React 入门:使用 Express 快速搭建web服务
  5. C语言学习:字符串查找字符串
  6. mysql procedure返回值_mysql procedure 返回结果集
  7. MAC终端给文件夹权限
  8. 服务器执行到这里就停住不动了Initializing Spring root WebApplicationContext
  9. MES生产调度任务模型
  10. mongodb备份恢复数据库