一、JavaScript经典题目
1 打印100以内 7的倍数
// 1 打印100以内 7的倍数
for(var i=1;i<=100;i++){
if(i%7===0){
console.log(i);
}
}
2 求整数50~200的第一个能被7整除的数
// 2 求整数50~200的第一个能被7整除的数
for(var i=50;i<=200;i++){
if(i%7===0){
break
}
}
console.log(i);
3 本金10000元存入银行,年利率是千分之三,每过1年,将本金和利息相加作为新的本金。计算5年后,获得的本金是多少?
// 3 本金10000元存入银行,年利率是千分之三,每过1年,将本金和利息相加作为新的本金。计算5年后,获得的本金是多少?
var sum = 10000
sum = sum * 3 / 1000 + sum
sum = sum * 3 / 1000 + sum
sum = sum * 3 / 1000 + sum
sum = sum * 3 / 1000 + sum
sum = sum * 3 / 1000 + sum
console.log(sum);
console.log('===================');
var sum = 10000
for (i = 1; i <= 5; i++) {
sum = sum + (sum * 0.003)
}
console.log(sum);
4 输入一个年份,判断是否是闰年[闰年:能被4整数并且不能被100整数,或者能被400整数
// 4 输入一个年份,判断是否是闰年[闰年:能被4整数并且不能被100整数,或者能被400整数
var num = prompt('输入一个年份')
if (num % 4 === 0 && num % 100 !== 0 || num % 400 === 0) {
alert('闰年');
}
else {
alert('不是闰年');
}
5 输入一个数跟7比较 大了提示你输入大了,小了提示小。直到刚好为7结束
// 5 输入一个数跟7比较 大了提示你输入大了,小了提示小。直到刚好为7结束
var num = prompt('输入一个数')
while (true) //表示循环的一个判断,在break中结束,不然一直循环(十分重要)
{
if (num > 7) {
alert('你输入大了');
var num = prompt('输入一个数')
} else if (num < 7) {
alert('你输入小了');
var num = prompt('输入一个数')
} else {
alert('结束');
break
}
}
6 计算1!+2!+3!+4!+…+100!结果
// 6 计算1!+2!+3!+4!+.....+100!结果
var num = prompt('请输入乘阶最后的值')
var sum = 0
var all = 1
for (i = 1; i <= num; i++) {
for (j = 1; j <= i; j++) {
all *=j
}
sum = all +sum
var all = 1
}
alert(sum);
// 6 计算1!+2!+3!+4!+.....+100!结果
var sum = 0
var all = 1
for (var i = 1; i <= 5; i++) {
for (var j = 1; j < i; j++) {
all = j * all
all++
sum = all + sum
}
}
console.log(sum);
7 鸡兔同笼35个头94只脚, 鸡有多少只兔有多少只?
// 7 鸡兔同笼35个头94只脚, 鸡有多少只兔有多少只?
for (let i = 1; i < 35; i++) {
if (2 * i + 4 * (35 - i) == 94) {
console.log("鸡:" + i + ",兔子:" + (35 - i));
}
}
8 需求描述:假设一个简单的ATM机的取款过程
// 8 需求描述:假设一个简单的ATM机的取款过程
// 首先提示用户输入密码(password),假设默认密码为111111,最多只能输入3次,
// 超过3次则提示用户“密码错误,请取卡”,结束交易。
// 如果用户密码正确,再提示用户选择金额(amount),
// “请输入0到6中任意数字选择对应钱数:0 手动输入金额,1 100元, 2 300元,
// 3 500元, 4 1000元, 5 3000元, 6 5000元”。
// 输入数字如果错误,提示“输入错误,是否继续 Y/N”,选择Y重新提示输入钱数编号,选择N提示“输入错误,请取卡!”。
// 选择数字为1到6,打印对应钱数, 并提示“是否继续 Y/N”。
// 选择数字0,ATM机只能输出100元纸币,
// 自定义钱数要求最低为100元,最高为1000元。
// 如果用户输入的金额符合上述要求,
// 则打印输出用户取的钱数,并提示“取款完成,是否继续Y/N”;否则输出一句话“金额错误,
// 是否继续 Y/N”,如果用户输入Y,提示用户重新选择取款金额,如果用户输入 N,
// 打印“交易取消,请取卡!”
for (i = 1; i <= 3; i++) {
var password = prompt('请输入密码')
if (password == 111111) {
while (true) {
var key = prompt('请输入0到6中任意数字选择对应钱数 \n0 手动输入金额\n1. 100元\n2. 300元\n3. 500元\n4. 1000元\n5. 3000元\n6. 5000元');
var passworder = null
var mistake = null
var wrongs = null
switch (key) {
case '0':
var money = prompt('自定义金额')