帝国软件
  设为首页 加入收藏 关于我们
 
解密帝国网站管理系统
栏 目:
 
您的位置:首页 > 技术文档 > ASP编程
一个使用多选框的小智力题,传教士与野人
作者: 发布时间:2005-03-12 来源:
这是我学javascript的第一个小例子。
尽管现在技术依旧很差,不过觉得写些小例子
真的可以很快进入角色。

<HTML>
<HEAD>
<title>传教士与野人</title>
</HEAD>

<script language= "Javascript">

var whereboat="left" //船的位置
function crossRiver()
{
var boat=0; //载人数目
//操作右河岸。
if(whereboat=="left")
{
for (var i=0;i<form1.leftbank.options.length;i++)
{
if(document.form1.leftbank.options[i].selected==true)
{
var Node =document.createElement("option"); //产生新的
Node.text=form1.leftbank.options[i].text; //给新的老名字
document.form1.rightbank.add(Node); //加入新的
form1.leftbank.options[i].text="" //标记为空(若直接删除会丢失selected==true)
boat++;
whereboat="right";
}
}

for (var i=0;i<form1.leftbank.options.length;i++)
{
if(form1.leftbank.options[i].text=="")
{form1.leftbank.options.remove(i);i--;} //集体铲除老的,注意由于remove产生缩进,所以i--
}
}

//操作左河岸。
if(whereboat=="right")
{
for (var i=0;i<form1.rightbank.options.length;i++)
{
if(form1.rightbank.options[i].selected==true)
{
var Node =document.createElement("option"); //产生新的
Node.text=form1.rightbank.options[i].text; //给新的老名字
document.all.leftbank.add(Node);
form1.rightbank.options[i].text="" //标记为空(若直接删除会丢失selected==true)
boat++;
whereboat="left";
}
}
for (var i=0;i<form1.rightbank.options.length;i++)
{
if(form1.rightbank.options[i].text=="")
{form1.rightbank.options.remove(i); //集体铲除老的
i--;
}
}

}
if(boat>2) {alert("超载!");window.location="javas.html";} //载人失败
boat=0;
//判断胜利与失败
var people=0;
var savage=0;

//左岸失败
for (var i=0;i<form1.leftbank.options.length;i++)
{if(form1.leftbank.options[i].text=="传教士") people++;
if(form1.leftbank.options[i].text=="野人") savage++;
}
if(savage>people & people>0) {alert("左河岸的传教士被野人吃掉了!");
window.location="javas.html"; }
//右河岸失败
people=0; savage=0;
for (var i=0;i<form1.rightbank.options.length;i++)
{if(form1.rightbank.options[i].text=="传教士") people++;
if(form1.rightbank.options[i].text=="野人") savage++;
}
if(savage>people & people>0)
{
alert("右河岸的传教士牺牲了!");
window.location="javas.html"; }
if(savage+people==6)
alert("传教士:终于过河了,与野人在一起好可怕!野人:呜瓦!这些人的肉太老了,咱们吃小孩去!");




}

</script>

<BODY bgcolor=navy text=aqua>
<br>
<center><h3>与野人一起过河</h3></center>

<CENTER><!--//定义左河岸-->

<table width=470 height=200 align=center>
<tr><td>
<h5>
有一天三个传教士来到一个野蛮人居住的地方进行传教,传说这个部落是吃人的氏族,在一条小河前,他们遇到了三个野人同时也要过河,六个人虎目眈眈,而河中只有一只仅容纳两人的小船。如果在度过小河的过程中,野人数目多于传教士,那么势单力孤的传教士就要被吃掉。而传教士又不能伤害野人。请你想个办法让六个人都安全的过河。
</h5></td></TD>
</tr>
</table></CENTER>

<form name=form1>
<center>
<SELECT name="leftbank" multiple size=6 style="WIDTH: 100px">
<OPTION >传教士</OPTION>
<OPTION>传教士</OPTION>
<OPTION>传教士</OPTION>
<OPTION>野人</OPTION>
<OPTION>野人</OPTION>
<OPTION>野人</OPTION>
</SELECT>


<INPUT onclick=crossRiver() type=button value=过河>


<!--定义右河岸-->
<SELECT multiple name="rightbank" size=6 style="WIDTH: 100px">
</SELECT>

</center>
</form>
<center>
<h5>(用Ctrl键多选)</h5>
</center>
</BODY>
</html>

  
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
 ·asp中的一个奇怪的函数  (2005-03-12)
 ·一个用来画图的组件(画饼图,条  (2005-03-12)
 ·生成一个不重复的随即数字  (2005-03-12)
 ·一个把数字转英文的实用程序  (2005-03-12)
 ·一个得到在两个日期之间的休息日  (2005-03-12)
 ·一个用c#写的扫描asp源码漏洞的应  (2005-03-12)
 ·一个用c#写的扫描asp源码漏洞的应  (2005-03-12)
 ·SQL脚本执行的一个奇怪现象  (2005-03-12)
 ·游标操作时进行Update应注意的一  (2005-03-12)
 ·一个不太让人讨厌的自动弹出窗口  (2005-03-12)

   栏目导行
  PHP编程
  ASP编程
  ASP.NET编程
  JAVA编程
   站点最新
·致合作伙伴的欢迎信
·媒体报道
·帝国软件合作伙伴计划协议
·DiscuzX2.5会员整合通行证发布
·帝国CMS 7.0版本功能建议收集
·帝国网站管理系统2012年授权购买说
·PHPWind8.7会员整合通行证发布
·[官方插件]帝国CMS-访问统计插件
·[官方插件]帝国CMS-sitemap插件
·[官方插件]帝国CMS内容页评论AJAX分
   类别最新
·在ASP中使用数据库
·使用ASP脚本技术
·通过启动脚本来感受ASP的力量
·学习使用ASP对象和组件
·解析asp的脚本语言
·初看ASP-针对初学者
·ASP开发10条经验总结
·ASP之对象总结
·ASP与数据库应用(给初学者)
·关于学习ASP和编程的28个观点
 
关于帝国 | 广告服务 | 联系我们 | 程序开发 | 网站地图 | 留言板 帝国网站管理系统