第一題:
假設一個簡單的ATM機的取款過程是這樣的:
首先提示用戶輸入密碼(password),
最多只能輸入三次,超過3次則提示用戶“密碼錯誤,
請取卡”結束交易。如果用戶密碼正確,
再提示用戶輸入取款金額(amount),
ATM機只能輸出100元的紙幣,一次取錢數要求最低
100元,最高1000元。
若用戶輸入的金額符合上述要求,則打印輸出用戶取得錢數,
最后提示用戶“交易完成,請取卡”,否則提示用戶重新輸入金額。
假設用戶密碼是111111,請編程實現。
首先提示用戶輸入密碼(password),
最多只能輸入三次,超過3次則提示用戶“密碼錯誤,
請取卡”結束交易。如果用戶密碼正確,
再提示用戶輸入取款金額(amount),
ATM機只能輸出100元的紙幣,一次取錢數要求最低
100元,最高1000元。
若用戶輸入的金額符合上述要求,則打印輸出用戶取得錢數,
最后提示用戶“交易完成,請取卡”,否則提示用戶重新輸入金額。
假設用戶密碼是111111,請編程實現。
//銀行卡取款問題 //循環三次,檢測密碼是否正確 for( var n = 1;n < 4;n++){ //輸入密碼檢測是否正確 var password = parseInt(prompt("請輸入您的取款密碼")); //正確時,下一步 if(password == 111111){ //提示輸入金額 var amount = parseInt(prompt("請輸入您的取款金額")); //檢測金額是否在100-1000且 被100整除 if( amount >=100 && amount <=1000 && amount % 100 == 0){ //通過時,打印輸入的金額 alert("您已成功取款" + amount + "元"); //打印完成后提示 alert("交易完成,請取卡"); break; } //不通過時 ,提示重新輸 else{ alert("輸入金額錯誤,取卡"); break; } } else if(n <3){ alert("密碼輸入錯誤,請重新輸入"); } else{ alert("密碼錯誤,請取卡"); break; } }
第二題:
公園里有一只猴子和一堆桃子,猴子每天吃掉桃子總數的一半,把剩下一半中扔掉一個壞的。到第七天的時候,猴子睜開眼發現只剩下一個桃子。問公園里剛開始有多少個桃子?
var t = 1; for(var d = 6;d >= 1; d--){ t = (t + 1) * 2 }if( d < 1){ alert("剛開始有" + t + "個桃子"); }

第三題:
有一個棋盤,有64個方格,在第一個方格里面放1粒芝麻重量是0.00001kg,第二個里面放2粒,第三個里面放4,求棋盤上放的所有芝麻的重量
var b = 1; var c = 0; for(var a = 1;a <= 63;a++){ b = 2 * b; c = b + c; } alert("棋盤上芝麻重量總和為:" + (c + 1) * 0.00001 + "kg");

第四題:
大馬馱2石糧食,中馬馱1石糧食,兩頭小馬馱一石糧食,要用100匹馬,馱100石糧食,該如何調配?
for( var dm = 0; dm <= 50;dm++){ for( var zm = 0; zm <= 100;zm++){ for( var xm = 0; xm <= 200;xm++){ if(dm + zm + xm == 100 && (dm * 2) + (zm * 1) + (xm / 2) == 100){ document.write("大馬:" + dm + "只," + "中馬:" + zm + "只," + "小馬:" + xm + "只," + "<br />"); } } } }


第五題:
實現1!+2!+3!+4!+5!+....+n!
n!為n的階乘 等於 1 * 2 * 3 * 4.......* n
var n = parseInt(prompt("請輸入一個數值")); var x = 1; var y = 0; for(i = 1;i <= n;i++){ x = x * i; y = x + y; } alert(n + "的階乘和為:" + y);
第六題:
假設某人有100,000現金.每經過一次路口需要進行一次交費. 交費規則為當他現金大於50,000時每次需要交5%如果現金小於等於50,000時每次交5,000.請寫一程序計算此人可以經過多少次這個路口
var m = 100000; var n = 0; while(m > 5000){ if(m > 50000){ m = m - (0.05 * m); }else{ m = m - 5000; } n++; } alert("總共會經過" + n + "次路口");

以下是完整代碼:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
</body>
</html>
<script type="text/javascript">
//銀行卡取款問題
//循環三次,檢測密碼是否正確
/*for( var n = 1;n < 4;n++){
//輸入密碼檢測是否正確
var password = parseInt(prompt("請輸入您的取款密碼"));
//正確時,下一步
if(password == 111111){
//提示輸入金額
var amount = parseInt(prompt("請輸入您的取款金額"));
//檢測金額是否在100-1000且 被100整除
if( amount >=100 && amount <=1000 && amount % 100 == 0){
//通過時,打印輸入的金額
alert("您已成功取款" + amount + "元");
//打印完成后提示
alert("交易完成,請取卡");
break;
}
//不通過時 ,提示重新輸
else{
alert("輸入金額錯誤,取卡");
break;
}
}
else if(n <3){
alert("密碼輸入錯誤,請重新輸入");
}
else{
alert("密碼錯誤,請取卡");
break;
}
} */
//第二題:
/*var t = 1;
for(var d = 6;d >= 1; d--){
t = (t + 1) * 2
}if( d < 1){
alert("剛開始有" + t + "個桃子");
}*/
//第三題:
/*var b = 1;
var c = 0;
for(var a = 1;a <= 63;a++){
b = 2 * b;
c = b + c;
}
alert("棋盤上芝麻重量總和為:" + (c + 1) * 0.00001 + "kg"); */
//第四題:
/*for( var dm = 0; dm <= 50;dm++){
for( var zm = 0; zm <= 100;zm++){
for( var xm = 0; xm <= 200;xm++){
if(dm + zm + xm == 100 && (dm * 2) + (zm * 1) + (xm / 2) == 100){
document.write("大馬:" + dm + "只," + "中馬:" + zm + "只," + "小馬:" + xm + "只," + "<br />");
}
}
}
} */
//第五題:
/*var n = parseInt(prompt("請輸入一個數值"));
var x = 1;
var y = 0;
for(i = 1;i <= n;i++){
x = x * i;
y = x + y;
}
alert(n + "的階乘和為:" + y);*/
//第六題:
/*var m = 100000;
var n = 0;
while(m > 5000){
if(m > 50000){
m = m - (0.05 * m);
}else{
m = m - 5000;
}
n++;
}
alert("總共會經過" + n + "次路口");*/
</script>
