| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2208 人关注过本帖
标题:[原创]菜鸟应用JAVASCRIPT 之 简易随机三则运算程序
只看楼主 加入收藏
编程之星
Rank: 5Rank: 5
等 级:职业侠客
威 望:2
帖 子:285
专家分:391
注 册:2007-4-10
收藏
 问题点数:0 回复次数:0 
[原创]菜鸟应用JAVASCRIPT 之 简易随机三则运算程序
*/ --------------------------------------------------------------------------------------
*/ 出自: 编程中国 http://www.bc-cn.net
*/ 作者: 编程之星 E-mail:rostar@126.com QQ:150163704
*/ 时间: 2007-9-5 编程论坛首发
*/ 声明: 尊重作者劳动,转载请保留本段文字
*/ --------------------------------------------------------------------------------------


菜鸟应用JAVASCRIPT 之 简易随机三则运算程序
——编程之星
2007-9-5
大家好,今天要跟大家(像我们这些菜鸟)学习的课程就是--简易三则运算程序.这里为了简化编程,所以就只用到加法(+)、减法(-)、乘法(×),而忽略了除法(÷),目的就是为了让菜鸟了解一下其中的原理.如果您是高手大虾了的话,就不要在浪费您的时间在这篇文章上了,不过,如果您想给鄙人一些批评意见的话,也不妨把该程序看完,然后回贴批评(旨在赚人气,嘿嘿).本程序共只有23行代码,所以说是一个比较名副其实的简单程序.
程序知识要点:
1.随机数
2.输入对话框prompt()
3.确认对话框confirm()
4.eval()函数
程序测试连接:
http://rostar.xinwen520.net/简易三则运算.html

程序源代码:

<script type="text/javascript">
alert("简易三则运算程序\n\n作者:编程之星(rostar)\nQQ:150163704\nE-mail:rostar@126.com");
function operation()
{
var a,b,flag,operators=["+","-","*"];
a=Math.floor(Math.random()*10);
b=Math.floor(Math.random()*10);
flag=Math.floor(Math.random()*3);
var ResultEnter=prompt("请计算下面的算式.\n"+a+" "+operators[flag]+" "+b,"");
var ResultRight=eval(a+operators[flag]+b);
if(Number(ResultEnter)==ResultRight)
{
if(confirm("回答正确.\n是否继续?")==true)
{
operation();
}
}else{
if(confirm("回答错误!正确的答案是: "+ResultRight+"\n"+"是否继续?")==true)
{
operation();
}
}
}
operation();
</script>

程序分析:
本程序共只有一个函数opration(),该函数实现程序的核心计算功能.首先我们来看看函数内部的第1句代码var a,b,flag,oprator=["+","-","*"],这表示声明几个变量和一个数组,a表示第1个运算数, b表示第2个运算数, flag表示运算符(+或-或*), operators[]是存储3个运算符的数组.接下来我们看看a=Math.floor(Math.random()*10)这表示将一个随机数(0~9)赋值给a变量以作为第1个运算数. b=Math.floor(Math.random()*10) 表示将一个随机数(0~9)赋值给b变量以作为第2个运算数. flag=Math.floor(Math.random()*3)表示将一个随机数(0~2)赋值给flag变量以作为从operators[]数组中随机提取运算符的下标.然后,我们看看var ResultEnter=prompt("请计算下面的算式.\n"+a+" "+oprator[flag]+" "+b,"")这表示程序弹出一个输入框供用户输入由用户计算的结果,然后存储到ResultEnter变量中, prompt()表示弹出一个输入框, var ResultRight=eval(a+oprator[flag]+b)表示由程序计算出算式的结果并将结果存储到ResultRight变量中,eval()表示执行Javascript代码.接下来,我们可以看到if(Number(ResultEnter)==ResultRight){…}else{…},这表示将用户计算的结果和程序计算的结果相比较,如果两者一直的话,就直接执行其后面的语句块,否则就执行else后面的语句块,Number()是一个将字符串型数据转换成数值型数据的函数.我们再来看看 if(confirm("回答正确.\n是否继续?")==true) { operation(); }这表示如果点击了确认对话框的”确定”按钮了的话,就重新出题计算(递归调用),confirm()表示弹出一个确认对话框.以下的if结构的作用也一样.

总结:
程序分析完毕,希望大家有收益.

下载本程序:

V9tkXxwH.rar (7.16 KB) [原创]菜鸟应用JAVASCRIPT 之 简易随机三则运算程序



编程之星的菜鸟应用JAVASCRIPT系列:

菜鸟应用JAVASCRIPT 之 简单图片浏览

菜鸟应用JAVASCRIPT 之 简单闹钟程序

菜鸟应用JAVASCRIPT 之 简易随机广告程序

菜鸟应用JAVASCRIPT 之 简易网页音乐播放程序

[此贴子已经被作者于2007-9-5 10:40:51编辑过]

搜索更多相关主题的帖子: JAVASCRIPT 随机 运算 
2007-09-05 10:36
快速回复:[原创]菜鸟应用JAVASCRIPT 之 简易随机三则运算程序
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012782 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved