条件判断练习

2021-10-18  本文已影响0人  心存美好

练习一

用户输入一个数字,然后判断这个数字能否被5、6整除的情况,根据情况弹出下面4种警告框:比如:

15=>弹出这个数字能被5整除,但是不能被6整除

18=>弹出这个数字能被6整除,但是不能被5整除

14=>弹出这个数字既不能能被5整除,也不能被6整除

var num=parseInt(prompt("请输入要判断的数字"));
if(num % 5 == 0 && num % 6==0){
    console.log(num,"既能被5整除,也能被6整除"); 
}else if(num % 5 == 0 && num % 6 != 0){
    console.log( num,"能被5整除,不能被6整除");   
}else if(num % 5 != 0 && num % 6==0){
    console.log(num,"不能被5整除,能被6整除");    
}else{
    console.log(num,"既不能被5整除,也不能被6整除");    
}

练习二

用户输入一个数字,然后再输入一个数字。然后弹出警告框:
如果输入的两个数奇偶性相同,就弹出"你好,这两个数字奇偶性相同",
否则弹出这两个数奇偶性不同

方法一
var num1 =parseInt(prompt("请输入数字1"));
var num2 =parseInt(prompt("请输入数字2"));
if(num1%2==0 && num2%2==0){
    console.log(num1,num2,"奇偶性相同");
}else if(num1%2!=0 && num2%2!=0){
    console.log(num1,num2,"奇偶性相同"); 
}else{console.log(num1,num2,"奇偶性不相同");
}
方法一优化
var num1 =parseInt(prompt("请输入数字1"));
var num2 =parseInt(prompt("请输入数字2"));
if(num1%2==0 && num2%2==0 ||num1%2!=0 && num2%2!=0){
    console.log(num1,num2,"奇偶性相同");
}else{console.log(num1,num2,"奇偶性不相同");
}
方法二
var num1 =parseInt(prompt("请输入数字1"));
var num2 =parseInt(prompt("请输入数字2"));
if(num1%2 == num2%2){
    console.log(num1,num2,"奇偶性相同");
}else{console.log(num1,num2,"奇偶性不相同");
}
方法三通过和的奇偶性
var num1 =parseInt(prompt("请输入数字1"));
var num2 =parseInt(prompt("请输入数字2"));
if(num1+num2 % 2 == 0) {
    console.log(num1,num2,"奇偶性相同" )
}else{
    console.log(num1,num2,"奇偶性不相同" )
}  
方法三优化
var num1 =parseInt(prompt("请输入数字1"));
var num2 =parseInt(prompt("请输入数字2"));
if(num1+num2 % 2) {
    console.log(num1,num2,"奇偶性不相同" )
}else{    
    console.log(num1,num2,"奇偶性相同" )
}
方法三再优化
var num1 =parseInt(prompt("请输入数字1"));
var num2 =parseInt(prompt("请输入数字2"));
console.log(num1 + " " +num2 +"奇偶性"+((num1 + num2) % 2 ? "不相同" : "相同") )

练习三

某个公司要给员工发年终奖,为了奖励老员工,所以工作时间越长,发的越多,规则如下:
工作满0年 发月薪的1倍月薪年终奖,如果月薪大于8000,那么就是发1.2倍
工作满1年 发月薪的1.5倍月薪年终奖,如果月薪大于10000,那么就是发1.7倍
工作满2年,甚至更多 发月薪的3倍月薪年终奖,如果月薪大于12000,那么就是发3.2倍
用JS编写程序,让用户输入工作了几年,可以输入0,然后输入月薪。然后算年终奖。

方法一
var year =parseInt(prompt("请输入工作年限"));
var yuexin =parseInt(prompt("请输入薪资"));
var jiang=0;
if(year < 1){
    if(yuexin > 8000){
        jiang = yuexin *1.2;
    }else{
        jiang= yuexin *1;
    }
}else if(year <2){
    if(yuexin > 10000){
        jiang = yuexin *1.7;
    }else{
        jiang= yuexin *1.5;
    }
}else if(year <3){
    if(yuexin > 12000){
        jiang = yuexin *3.5;
    }else{
        jiang= yuexin *3;
    }
}else{
    jiang=yuexin*3;
}
console.log("年终奖为",jiang);
方法二提取系数
var year =parseInt(prompt("请输入工作年限"));
var yuexin =parseInt(prompt("请输入薪资"));
var jiang=0;
var xishu=1;
if(year < 1){
    if(yuexin > 8000){
        xishu=1.2;
    }else{
        xishu=1;
    }
}else if(year <2){
    if(yuexin > 10000){
        xishu=1.7;
    }else{
        xishu=1.5;
    }
}else if(year <3){
    if(yuexin > 12000){
        xishu=3.5;
    }else{
        xishu=3;
    }
}else{
    xishu=3;
}
jiang=yuexin*xishu;
console.log("年终奖为",jiang);
方法三优化三目
var yuexin =parseInt(prompt("请输入薪资"));
var jiang=0;
var xishu=1;
if(year < 1){
    xishu= yuexin>8000 ? 1.2:1;
 
}else if(year <2){
    xishu= yuexin>10000 ? 1.7:1.5;

}else if(year <3){
    xishu= yuexin>12000 ? 3.5:3;

}else{
    xishu=3;
}
jiang=yuexin*xishu;
console.log("年终奖为",jiang);

优化switch

var year =parseInt(prompt("请输入工作年限"));
var yuexin =parseInt(prompt("请输入薪资"));
var jiang=0;
var xishu=1;
switch(year){
    case 0:
        xishu= yuexin>8000 ? 1.2:1;
        break;
    case 1:
        xishu= yuexin>10000 ? 1.7:1.5;
        break;
    case 2:
        xishu= yuexin>12000 ? 3.5:3;
        break;
}
jiang=yuexin*xishu;
console.log("年终奖为",jiang);
优化switch年限使用范围值
var year =parseInt(prompt("请输入工作年限"));
var yuexin =parseInt(prompt("请输入薪资"));
var jiang=0;
var xishu=1;
switch(true){
    case year<1:
        xishu= yuexin>8000 ? 1.2:1;
        break;
    case year<2:
        xishu= yuexin>10000 ? 1.7:1.5;
        break;
    case year<3:
        xishu= yuexin>12000 ? 3.5:3;
        break;

}
jiang=yuexin*xishu;
console.log("年终奖为",jiang);

练习四

用户输入一个数字n,计算1+2+3+4+……n的和。
方法一正方向

var result = 0;
for(var i=0;i<=num;i++){
    result += i;
}
console.log(num+"的累和为"+result);

方法二负方向
var num = parseInt(prompt("请输入需要累加的数字"));
var result = 0;
for(var i=num;i>=0;i--){
    result += i;
}
console.log(num+"的累和为"+result);

练习五

用户输入一个数字n

计算: 11.png
var result = 0;
for(var i=2;i<=num;i++){
    result += (i+1)/i;
}
console.log("输入数字"+num+"的结果为"+result);

练习六

用户输入一个数字,在控制台中列出它的所有约数。

for(var i=1;i<=num;i++){
    if(num%i==0){
        console.log(i +"是" + num + "的约数");
    }
}````
####练习七
在控制台输出1~1000之中,所有能被5整除,或者被6整除的数字。 
````for(i=1;i<=1000;i++){
    if(i %5==0 ||i %6==0){
        console.log(i+"能被5或6整除");
    }
}````
上一篇下一篇

猜你喜欢

热点阅读