算术运算题

无临时变量交换两个变量

利用异或运算符的特点,a^b^b==a

let a = 1, b = 2
a = a^b
b = a^b
a = a^b

质数判断

大于1的自然数中,只能被1和自身整除的自然数(不要考虑1)

function isPrime (n){
	for (let i = 2; i < n; i++){
		if (n % i == 0) {
			return false
		}
	}
	return true
}

丑数

只能被2、3、5整除的正整数,1是第一个丑数

function isUgly (){
	if (n>=1){
		while (n % 2 == 0) {
			n = n / 2;
		}
		while (n % 3 == 0) {
			n = n / 3;
		}
		while (n % 5 == 0) {
			n = n / 5;
		}
		if (n == 1) {
			return true;
		}
	}
	return false
}

斐波那契数列

从0和1开始,之后的数就是前两个数的和

function fibonacciSequence(n){
	if (n == 0) return 0
	if (n == 1) return 1
	let firstVal = 0
	let secondVal = 1
	let sum = 0
	for (let i = 2; i <n; i++) {
		sum+= firstVal+secondVal
		firstVal = secondVal
		secondVal = sum
	}
	return sum
}
posted @ 2023-01-18 12:00  火丶意志  阅读(52)  评论(0)    收藏  举报