1、编写函数寻找水仙花数(三位数各位数字的立方和恰巧是该数本身)(三位数各位数字的立方和恰巧是改位数本身
for (var i = 100; i < 1000; i++){
var a = i % 10;
var b = parseInt(i / 10 % 10);
var c = parseInt(i / 100);
if (a*a*a+b*b*b+c*c*c===i)
console.log(i);
}
for (var i =1; i < 10;i++){
for (var j = 0; j < 10; j++){
for (var k = 0; k < 10; k++){
if (a*a*a+b*b*b+c*c*c===i*100+j*10+k){
console.log(i*100+j*10+k)
}
}
}
}
2、打印9x9乘法表。(正三角和倒三角两种,该题算两道题)
document.write("<table border='1' cellpadding='0' cellspacing='0' style='border-collapse: collapse'>");
for (var i = 1; i < 10; i++) {
document.write("<tr>");
for (var j = 1; j <= i; j++) {
document.write("<td>"+j+"*"+i+"="+i*j+"</td >");
}
document.write("</tr>");
}
document.write("</table>");
4、如何利用JS生成一个table?行和列由用户自己输入决定
var a =prompt("输入几行");
var b =prompt("输入几列");
document.write("<table border='1' cellspacing='0'>");
for(var k = 0;k < a;k++){
document.write("<tr>");
for(var i = 0;i < b;i++){
document.write("<td>11</td>");
}
document.write("</tr>");
}
document.write("</table>")
5、求s=a+aa+aaa+aaaa+aa…a的值,其中a是一个数字。例如2+22+222+222+2222+22222
var a=Number(window.prompt(""));
var b=Number(window.prompt(""));
var sum=0,c=0;
for(var i=1;i<=b;i++){
c=c*10+a;
sum+=c;
}
document.write(sum);
6、有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13…求出这个数列的前20项之和
var fn = function(a){
if(a ===1 || a === 2){
return (a + 1) / a;
}else if(a > 2){
return (a - 1 + fn(a - 1) * (a - 1))/ (fn(a - 1) * (a - 1));
}
};
var sum = 0;for(var i = 1; i < 21; i++){ sum += fn(i);}console.log(sum);
7、用户输入任意数字,判断是否是闰年,并打印出接下来的20个闰年。
var year = prompt("请输入一个年份\n");
year = Number(year);//先把year转化为数字,然后赋值给year(这个时候相当于转型后又覆盖了之前的year的值)
if (((year % 4 === 0) && (year % 100 !== 0)) || (year % 400 === 0)) {
document.write(year + "是一个闰年");
} else {
document.write(year + "是一个平年");
}
8、一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
for (var a = 1; a < 1000; a++){
for (var b = 1; b < 1000; b++){
for (var c = 1; c < 1000; c++){
if (a + 100 === b * b && a + 100 + 168 === c * c){
console.log(a,b,c)
}
}
}
}
console.log();
9、给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字
ar num = prompt();
var a = parseInt(num % 10);
var b = parseInt(num / 10 % 10);
var c = parseInt(num / 100 % 10);
var d = parseInt(num / 1000 % 10);
var e = parseInt(num / 10000);
console.log(a);
if (num.length === 1){
console.log(a)
} else if (num.length === 2){
console.log(a,b)
} else if (num.length === 3){
console.log(a,b,c)
} else if (num.length === 4){
console.log(a,b,c,d)
} else if (num.length === 5){
console.log(a,b,c,d,e)
}
10、企业发放的奖金根据利润提成。利润低于或等于10万元时,奖金可提 10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%; 60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成, 从键盘输入当月利润I,求应发放奖金总数
var i = prompt();
var a = 0;
if(i > 0){
a += (i) * 0.1;
}if(i > 10000){
a += (i - 100000) * 0.75;
i = 100000;
}if(i > 200000){
a += (i - 200000) * 0.05;
i = 200000;
}if(i > 400000){
a += (i - 400000) * 0.03;
i = 400000;
}if(i > 600000){
a += (i - 600000) * 0.15;
i = 600000;
}if(i > 1000000){
a += (i - 1000000) * 0.01;
i = 1000000;
}
console.log(a);
11、有一对兔子,从出生后第3个月起每个月都生一对兔子, 小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死, 问 第三十个月的兔子总数为多少?
var a =1,b =1;
for (var i = 1;i < 30;i++){
var c = b;
b = a;
a += c;
}
console.log(a);
12、给这个数组按从小到大顺序排列[3,57,879,345,45,3415,66,890,415,62,25,68,9]
var arr = [3,57,879,345,45,3415,66,890,415,62,25,68,9];
for (var i = 0; i < arr.length; i++){
for (var j = 0;j < arr.length;i++){
if (arr[i] < arr[j]){
var arr1 = arr[i];
arr[i] = arr[j];
arr[j] = arr1;
}
}
}
console.log(arr);