1.求1-100之間所有整數(shù)的累加和
用for循環(huán)寫:
var sum = 0;
for (var i = 1; i <= 100; i++) {
sum = sum + i;
}
console.log(sum);
用do while寫:
var sum=0;
var i=1;
do{
sum+=i;
i++;
}while(i<=100) console.log(sum);
- 求1-100所有數(shù)的平均數(shù)
var sum=0;
var avg=0;
for(i=1;i<=100;i++){
sum+=i;
avg=sum/i;
}
console.log(avg);
3.求1-100所有偶數(shù)的和
var sum = 0;
for (i =1; i <= 100; i++) {
if (i % 2 == 0 ) {
sum += i;
}
} console.log(sum);
4.計算某日是這一年的第幾天
var y = Number(prompt("請輸入年份"));
var m = Number(prompt("請輸入月份"));
var d = Number(prompt("請輸入日期"));
var days = 0;
switch (m) {
case 12:
days += 30;
case 11:
days += 31;
case 10:
days += 30;
case 9:
days += 31;
case 8:
days += 31;
case 7:
days += 30;
case 6:
days += 31;
case 5:
days += 30;
case 4:
days += 31;
case 3:
if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0) {
days += 29;
} else {
days += 28;
}
case 2:
days += 31;
case 1:
days += 0;
break;
default:
alert("請輸入正確的日期");
} alert(days);
5.輸入任意三個數(shù),輸出最大值?
var num1 = parseInt(prompt("輸入一個數(shù)"));
var num2 = parseInt(prompt("再輸入一個數(shù)"));
var num3 = parseInt(prompt("輸入第三個數(shù)"));
if (!isNaN(num1) && !isNaN(num2) && !isNaN(num3)) {
//保證三個都是數(shù)字
var minNum = -9999999999999999999999999999;
if (minNum < num1) {
minNum = num1;
}
if (minNum < num2) {
minNum = num2;
}
if (minNum < num3){
minNum = num3;
}
}
alert(minNum);
6.九九乘法表
var str = '';
for (var i = 1; i <= 9; i++) {
for (var j = 1; j <= i; j++) {
str += j + "×" + i + "=" + i * j + "\t";
}
str = str + "\n";
} console.log(str);
7.求出1-1/2+1/3-1/4...1/100的和
//方法1:
var sum = 0;
for (i = 1; i <= 100; i++) {
//在分母為偶數(shù)時為減
if (i % 2 == 0) {
sum -=( 1 / i);
}
//分母為奇數(shù)時為加
else {
sxum += (1 / i);
}
}
document.write(sum);
//方法2
var sum = 0;
var index = 1;
for (i = 1; i <= 100; i++) {
sum += index / i;
index = -index;
} document.write(sum);
8.打印出1000-2000年中所有的閏年,并以每行四個數(shù)的形式輸出
var i = 0;
for (var a = 1000; a <= 2000; a++) {
if (a % 4 == 0 && a % 100 != 0 || a % 400 == 0) {
document.write(a + ' ' + '');
i++;
if (i % 4 == 0) {
document.write("<br>");
}
}
}
9.計算10的階乘
var fac = 1;
for (var i = 10; i > 0; i--) {
fac *= i;
}
console.log(fac);
10.求1+2!+3!+..+20!的值
var sum = 0;
for (var num = 1; num <= 10; num++) {
var fac = 1;
for (var i = 1; i <= 10; i++) {
fac *= i;
} sum += fac;
} alert(sum);
10.打印100~999之間的水仙花數(shù)
水仙花數(shù)是一種特殊的三位數(shù),它的特點就是,每個數(shù)位的立方和,等于它本身。
比如153就是水仙花數(shù)。因為:
1 * 1 * 1 + 5 * 5 * 5+3 * 3 * 3 =153
100~999 之內(nèi),只有4個水仙花數(shù),請找出來
for (var i = 100; i < 1000; i++) {
//取出個位數(shù)字
var a = i % 10;
//取出十位數(shù)字
var b = parseInt(i % 100 / 10);
//取出百位數(shù)字
var c = parseInt(i / 100);
//用水仙花數(shù)條件進行判斷
if (a * a * a + b * b * b + c * c * c === i) {
console.log(i+'是水仙花數(shù)');
}
}
11.定義一個函數(shù),功能是打印m行n列的表格
function createTable(m, n) {//對應接收實參
//輸出一個表格
document.write("<table border=''>");
for (var i = 1; i <= m; i++) {
document.write("<tr>");
for (var j = 1; j <= n; j++) {
document.write("<td>11111111</td>");
}
document.write("</tr>");
}
document.write("<table>");
}
createTable(3, 6);
createTable(1, 1);
- 判斷一個數(shù)是否是:素數(shù)(質(zhì)數(shù)):只能被1和其本身整除的數(shù)
方案一: 只有兩個因子(計算因子的個數(shù)是否是2如果是2,是素數(shù))
方案二: 因子之和 == 該數(shù)+1
方案三: 通過一個開關變量控制該數(shù)是否是素數(shù)﹐假設flag == true是素數(shù)
1.
var num = parseInt(prompt("請輸入一個數(shù)")) ;
var count = 0;
for (var i = 1; i <= num; i++) {
if (num % i === 0) {
count++;
}
}
if (count == 2) {
alert(num + "是素數(shù)");
}
else {
alert(num + "不是素數(shù)");
}
2.
var num = parseInt(prompt("請輸入一個數(shù)")) ;
var sum=0;
for(var i=1;i<=num;i++){
if(num%i===0){
sum+=i;
}
}
if(sum===num+1){
alert(num+"是素數(shù)");
}
else{
alert(num+"不是素數(shù)");
}
3.
var num = parseInt(prompt("請輸入一個數(shù)"));
var flag = flase;
for (var i = 1; i <= num; i++) {
if (num % i === 0) {
//程序執(zhí)行了這里的代碼,說明num 除了1和本身外還有其他因子
flag = true;
}
} if (flag) {//不是素數(shù)
alert(num + "不是素數(shù)");
} else {//是素數(shù)
alert(num + "是素數(shù)");
}
13.循環(huán)輸出100-200的素數(shù)
var sum = 0;
for (var num = 100; num <= 200; num++) {
for (var i = 1; i <= num; i++) {
if (num % i === 0) {
sum += i;
}
}
if (sum === num + 1) {
console.log(num + "是素數(shù)");
}
}
14.編寫一個函數(shù),計算三個數(shù)字的大小,按從小到大順序輸出
function fn(a, b, c) {
var temp;
if (a > b) {
temp = a;
a = b;
b = temp;
}
if (b > c) {
temp = b;
b = c;
c = temp;
}
if (a > b) {
temp = a;
a = b;
b = temp;
}
document.write(a, b, c);
}
fn(5, 3, 4);