1、如果一个数大于100就减1,小于100就加1.
var i=prompt("请输入数字");
if(i>100){
i++;
}
else{
i--;
}
document.write(i);
2、分别计算出100里的奇数的和、偶数的和。
let odd=0,even=0,count=1;
while(count<=100){
if(count%2==0){
even=even+count;
}
else{
odd=odd+count;
}
count++;
}
document.write(even);
document.write(odd);
3、输出1000以内能被5和7整除的数.
var sum=0;
for(var i=1;i<1000;i++){
if(i%5==0&&i%7==0){
sum+=i;
}
}
document.write(sum);
4、倒序输出用户输入的数字(用户输入1234 输出4321)
let a,b,c,d,sum;
let inputnum=prompt("请输入数字");
if(inputnum){
// 千位1
a=parseInt(inputnum/1000);
// 百位
b=parseInt((inputnum%1000)/100);
// 十位
c=parseInt((inputnum%100)/10);
// 个位
d=parseInt(inputnum%10);
sum=d*1000+c*100+b*10+a;
document.write(sum);
}
else{
document.write("错误")
}
5、输出1000以内水仙花数
var a,b,c;
for(var i=100;i<1000;i++)
{
// 百位
a=i/100;
a = parseInt(a);
// alert("a:"+a);
//十位
b=(i%100)/10;
b=parseInt(b);
// alert(b);
// 个位
c=(i%100)%10;
c=parseInt(c);
// alert("c:"+c);
if(i==(a*a*a+b*b*b+c*c*c)){
alert(i);
}
}
6、找出10个数中的最大数
for(var i = arr.length-1;i>1;i--){
for(var j = 0;j<i;j++){
if(arr[j] > arr[j+1]){
var t = arr[j];
arr[j] = arr[j+1];
arr[j+1] = t;
}
}
}
for(var i = 0;i<arr.length-1;i++){
var k = i;
for(var j=i+1;j<arr.length;j++){
if(arr[k] >= arr[j]){
k = j;
}
}
var t = arr[i];
arr[i] = arr[k];
arr[k] = t;
}
console.log(arr);
console.log(arr[arr.length-1]);
console.log(arr[0]);
// 找出10个数最大数
// var arry=new Array(12,33,444,44,11,333,55,66,77,88);
// var max=arry[0];
// for(var i=0;i<arry.length;i++){// max=arry[0];
// if(arry[i]>max){
// max=arry[i];
// }
// }
// console.log(max);
7、判断是不是闰年
if (!isNaN(inputYear)) {
if (inputYear >= 2000 && inputYear <= 3000) {
if (inputYear % 4 == 0 && inputYear % 100 != 0) {
console.log(`您输入的${inputYear},是闰年!`);
} else if (inputYear % 400 == 0) {
console.log(`您输入的${inputYear},是闰年!`);
} else {
console.log(`您输入的${inputYear},是平年!`);
}
} else {
console.log(`您输入的${inputYear},不是在2000-3000的年份!`);
}
} else {
console.log(`您输入的${inputYear},不是在2000-3000的年份!`);
}
8、如何判断是多少年的多少天。
用户输入年月日,请输出是当年的第几天
console.log(`请输入年份:`);
let inputYear = rs.question();
console.log(`请输入月份:`);
let inputMonth = rs.question();
console.log(`请输入日:`);
let inputDay = rs.question() - 0;
//月份减1(累加当前月之前月份的天数)
let temp = inputMonth - 1;
//总天数
let sum = inputDay;
// 1\3\5\7\8\10\12 31
// 4\6\9\11 30
switch (temp) { //匹配月份(根据不同的月份+31或+30)
case 11:
sum += 31;
case 10:
sum += 30;
case 9:
sum += 31;
case 8:
sum += 30;
case 7:
sum += 31;
case 6:
sum += 31;
case 5:
sum += 30;
case 4:
sum += 31;
case 3:
sum += 30;
case 2:
if (inputYear % 400 == 0 || (inputYear % 4 == 0 && inputYear % 100 != 0)) {
sum += 29;
} else {
sum += 28;
}
case 1:
sum += 31;
}
console.log(`您输入的${inputYear}年${inputMonth}月${inputDay},是${inputYear}年的第${sum}天!`);
/**
* 选择排序法(升序)
* 第1次比较:
* 拿到数组中下标为0的值,依次后面下标的值进行比较。
* 下标为0的值小位置不动,反之与其互换位置。
* 一直比较到最后一个值,第1次比较结束。
* 第2次比较:
* 拿到数组中下标为1的值,依次后面下标的值进行比较。
* 下标为1的值小位置不动,反之与其互换位置。
* 一直比较到最后一个值,第2次比较结束。
* 第n次比较:
* 拿到数组中下标为n的值,依次后面下标的值进行比较。
* 下标为n的值小位置不动,反之与其互换位置。
* 一直比较到最后一个值,第n次比较结束。
* 直到所有数据比较完成结束。
*/
let arr = [1, 3, 5, 2, 0, 7];
for (let i = 0; i < arr.length; i++) { //拿一个值跟其他所有值进行对比
for (let j = i + 1; j < arr.length; j++) { //遍历每个值
if (arr[i] > arr[j]) {
[arr[i], arr[j]] = [arr[j], arr[i]];
}
}
}
// console.log(arr);
/**
* 冒泡排序法(升序)
* 相邻的2个数进行比较,前面的数比后面的数大,则互换位置。
* 反之位置不变。
*/
let arr = [1, 3, 5, 2, 0, 7];
for (let i = 1; i < arr.length; i++) { //比较次数(轮次)
//由于每一次外层循环会把最大的数放置在数组最后一位
//因此每一次内层循环都可以少比较,相应轮次的内容。
for (let j = 0; j < arr.length - i; j++) {
if (arr[j] > arr[j + 1]) {
[arr[j], arr[j + 1]] = [arr[j + 1], arr[j]];
}
}
}
console.log(arr);