js练习题 (2)

DAY 2

☆☆☆

判断三角形

根据三角形的三条边长(长、中、短三条边),来判断三角形类型。
提示:
(1) 一个三角形的边应该都为正数
(2) 一个三角形的边都应该满足三角形条件:两边之和大于第三边
钝角三角形:任意两边的平方和小于第三边的平方,如:aa+bb<c*c

var triangle = prompt("输入三条边长,以空格相隔开。")
var lenarr = triangle.split(" ");
function istriangle(a, b, c) {
    a = parseInt(a), b = parseInt(b), c = parseInt(c);
    if (a + b > c & a + c > b & c + b > a) {
        if (a == b || a == c || c == b) {
            if (a == b & b == c) {
                alert("等边三角形");
                return;
            }
            alert("等腰三角形")
        } else if (a ** 2 + b ** 2 == c ** 2 || b ** 2 + c * 2 == a ** 2 || a ** 2 + c ** 2 == b ** 2) {
            alert("直角三角形")
        } else if (a ** 2 + b ** 2 < c ** 2 || c ** 2 + b ** 2 < a ** 2 || c ** 2 + a ** 2 < b ** 2) {
            alert("钝角三角形")
        } else {
            alert("锐角三角形")
        }
    } else {
        alert("不满足三角形边长要求!")
    }
}
istriangle(lenarr[0], lenarr[1], lenarr[2]);

☆☆☆☆

水仙花数

例:水仙花数 153=111+555+333
输入一个数,判断是不是水仙花数

var sxh = parseInt(prompt('输入一个数字,判断是不是水仙花数'))
var b = parseInt(sxh / 100)
var s = parseInt(sxh % 100 / 10)
var g = sxh % 10
if (b * b * b + s * s * s + g * g * g == sxh) {
    alert('是水仙花数')
} else {
    alert('不是水仙花数')
}

☆☆☆☆

按年/月/日的顺序输入一个任意日期,在页面输出:这是这一年的第几天(arrey)

如:2016年1月2日 是2016年的第2天,而2016年12月31日则是2016年的第366天(因为闰年2月会多一天)
闰年共有366天(1月~12月分别为
闰年:31天、29天、31天、30天、31天、30天、31天、31天、30天、31天、30天、31天)。————366
平年:31天、28天、31天、30天、31天、30天、31天、31天、30天、31天、30天、31天)。————365

//方法一
function outYrarDay() {
    var userdate = prompt("输入日期:")
    var dateArr = userdate.split("/");
    var allDay = 0;
    var pingyear = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
    year = parseInt(dateArr[0]), month = parseInt(dateArr[1]), day = parseInt(dateArr[2])
    if (yearDays() == 366) {
        pingyear[1] = 29;
        for (let i = 0; i < month - 1; i++) {
            allDay = allDay + parseInt(pingyear[i])
        }
        allDay = allDay + day
        console.log("闰年第:" + allDay + "天");
    } else {
        for (let i = 0; i < month - 1; i++) {
            allDay = allDay + parseInt(pingyear[i])
        }
        allDay = allDay + day
        console.log("平年第:" + allDay + "天");
    }
    return allDay;
}
outYrarDay()

//方法二
var year = parseInt(prompt('请输入年:'))
var month = parseInt(prompt('请输入月:'))
var day = parseInt(prompt('请输入日:'))
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
    switch (month) {
        case 1: sumDay = (day); break;
        case 2: sumDay = (day + 31); break;
        case 3: sumDay = (day + 31 + 29); break;
        case 4: sumDay = (day + 31 + 29 + 31); break;
        case 5: sumDay = (day + 31 + 29 + 31 + 30); break;
        case 6: sumDay = (day + 31 + 29 + 31 + 30 + 31); break;
        case 7: sumDay = (day + 31 + 29 + 31 + 30 + 31 + 30); break;
        case 8: sumDay = (day + 31 + 29 + 31 + 30 + 31 + 30 + 31); break;
        case 9: sumDay = (day + 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31); break;
        case 10: sumDay = (day + 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30); break;
        case 11: sumDay = (day + 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31); break;
        default:
            sumDay = (day + 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30); break;
            break;
    }
    alert('这是' + year + '年(闰年)第——' + sumDay + '天')
}
else {
    switch (month) {
        case 1: sumDay = (day); break;
        case 2: sumDay = (day + 31); break;
        case 3: sumDay = (day + 31 + 28); break;
        case 4: sumDay = (day + 31 + 29 + 31); break;
        case 5: sumDay = (day + 31 + 29 + 31 + 30); break;
        case 6: sumDay = (day + 31 + 29 + 31 + 30 + 31); break;
        case 7: sumDay = (day + 31 + 29 + 31 + 30 + 31 + 30); break;
        case 8: sumDay = (day + 31 + 29 + 31 + 30 + 31 + 30 + 31); break;
        case 9: sumDay = (day + 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31); break;
        case 10: sumDay = (day + 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30); break;
        case 11: sumDay = (day + 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31); break;
        default:
            sumDay = (day + 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30); break;
            break;
    }
    alert('这是' + year + '年(平年)第——' + sumDay + '天')
}

☆☆☆☆

输入月份,判断所属季节

12/1/2属于冬季,3/4/5属于春季,6/7/8属于夏季,9/10/11属于秋季

var month = parseInt(prompt("输入月份"))
        if (month == 12 || month == 1 || month == 2) {
            alert("冬季")
        } else if (month == 3 || month == 4 || month == 5) {
            alert("春季")
        } else if (month == month == 6 || month == 7 || month == 8) {
            alert("夏季")
        } else if (month == 9 || month == 10 || month == 11) {
            alert("秋季")
        } else {
            alert("wtf????")
        }
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值