发表于: 2020-03-10 19:01:58
2 1462
今天完成的事情
/**
* 判断是不是奇数
* @param {number} n 是不是奇数
* @returns {boolean}
*/
function isOdd(n) {
return n % 2 !== 0;
}
/**
* 判断是不是素数
* @param {number} n 是不是素数
* @returns {boolean}
*/
function isPrime(n) {
if (n < 2) {
return false;
}
for (var i = 2; i < n; i++) {
return n % i !== 0;
}
return false;
}
/**
* 求和
* @param {number} arr
* @returns {boolean}
*/
function sumOfArray(arr) {
var sum = 0;
for (var i = 0; i < arr.length; i++) {
sum += arr[i]
}
return sum
}
/**
* 取数组最大值
* 如果数组长度为0返回undefined
* @param {number} m 取最大数
*/
function maxOfArray(m) {
if (m.length === 0) {
return
}
var max = 0; //m[0] 省略 !max
for (var i = 0; i < m.length; i++) {
if (!max || m[i] > max) {
max = m[i]
}
}
return max
}
/**
* 判断一个数组是不是稀松数组
* @param {*} arr
*/
function hasEmptyInArray(arr) {
//稀松数组的特定:下标连续
for (i = 0; i < arr.length; i++) {
if (!(i in arr)) {
return true;
}
}
return false;
}
/**
* 判定某年是不是闰年
* @param {number} y
*/
function isLeap(y) {
return y % 4 === 0 && y % 100 !== 0 || y % 400 === 0;
}
/**
* 得到某年某月的天数
* @param {number} year
* @param {number} month
*/
function getDays(year, month) {
if(month===2){
return isLeap(year)?29:28;
}else if(month<8 &&isOdd(month) || month>=8 &&!isOdd(month)){
return 31;
}else{
return 30;
}
}
/**
* 得到数组中出现频率最高的数字和频率
* 返回一个对象
* @param {*} number
* @param {*} frequency
*/
function getTopFreqInArray(arr) {
var record={};
for(var i=0;i<arr.length;i++){
var n=arr[i];
if(record[n]){
record[n]++;
}else{
record[n]=1;
}
}
var result;
for(var prop in record){
if(!result ||record[prop]>result.frequency){
result={
number:+prop,
frequency:record[prop]
}
}
}
return result;
}
//根据用户输入的数输出哥德巴赫猜想
var num = +prompt("请输如大于2的偶数");
function judge() {
if (isNaN(num) || num <= 2 || isOdd(n)) {
console.log("输入错误")
return;
}
for (var i = 0; i < num; i++) {
var j = num - i;
if (isPrime(j) && isPrime(j)) {
console.log(`${num}=${j}+${i}`)
}
}
}
judge()
//根据输入的年输出每个月的天数
var num = +prompt("请输入年(1900~2100)");
function begin() {
if (isNaN(num) || num <1900|| num>2100) {
console.log("输入错误")
return;
}
for(var i=1;i<=12;i++){
var days=getDays(num,i);
console.log(`${num}年${i}月,${days}天`)
}
}
begin()
明天计划的事情:
继续学习
遇到的问题:
无
收获:
基础知识
评论