一、编写一个函数,计算两个数字的和、差、积、商
- 思路:首先定义一个函数,声明式和赋值式都行,然后给3个形参,分别用来接收num1、num2、加减乘除的标识、然后用switch来进行判断,当
b为1
的时候表示2数相加
,当b为2
的时候表示2数相减
,当b为3
的时候表示2数相乘
,当b为4
的时候表示2数相除
。
function a(num1,num2,b){
switch (b){
case 1:
return num1+num2;
break;
case 2:
return num1-num2;
break;
case 3:
return num1*num2;
break;
case 4:
return num1/num2;
break;
}
}
alert(a(1,2,1))
二、 编写一个函数,计算三个数字的大小,按从小到大顺序输出
1. 方法一(基础)
- 思路:我们先假设第一个数是最小的,定义
min
用来存放下标为0的最小值,然后用for循环一一比较,如果有数比这个数小,就将更小的数赋值给min
,然后定义一个max
用来存放最大值,也是通过循环一一比较,将最大的值赋值给max
,最后剩下的那个数就是中间的数
function mySort() {
var min = arguments[0];
var max = arguments[0];
var mid = arguments[0];
for (var i = 0; i < arguments.length; i++) {
if (arguments[i] < min) {
min = arguments[i]
}else if(arguments[i] > max){
max = arguments[i];
}else if(arguments[i] != min && arguments[i] != max){
mid = arguments[i];
}
}
console.log(min,mid,max);
}
mySort(1,4,2);
2. 方法二(冒泡排序)
var numSort = function () {
var arr = arguments;
for (var j = 0; j < arr.length - 1; j++) {
for (var i = 0; i < arr.length - 1 - j; i++) {
if (arr[i] > arr[i + 1]) {
var temp = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = temp
}
}
}
return arr
}
console.log(numSort(1, 6, 4, 5, 123, 213, 3, 8, 9, 4, 5));
三、编写一个函数求一个数字是否是质数
- 思路:质数是只能被自己和1约,首先定义一个flag,初始值为true,用for,初始值为2,因为不需要1,然后用该数依次除以2到自己本身-1的数,如果有一个,flag变为false,则表示这个数不是质数。
var prime = function (num) {
var flag = true
for (i = 2; i < num; i++) {
if (num % i == 0) {
flag = false
}
}
if (flag == false) {
console.log("这个数不是质数");
}
}
prime(9)
四、 编写一个函数,计算任意两个数字之间所能组成的奇数个数,数字必须是个位数
- 比如: 计算0-3之间能组成的奇数个是01、03、11、13、21、23、31、33
var o=function(num1,num2){
for(var i=0;i<=num1;i++){
let num;
for(var j=0;j<=num2;j++){
num=i*10+j;
if(j%2!=0){
console.log(num);
}
}
}
}
o(1,3)
五、某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换,请编写一个函数,传入原文,输出密文
function pa(a) {
var a1 = parseInt(a / 1000); //千
var a2 = parseInt(a / 100) % 10; //百
var a3 = parseInt(a / 10) % 10; //十
var a4 = a % 10; //十
a1 = (a1 + 5) % 10
a2 = (a2 + 5) % 10
a3 = (a3 + 5) % 10
a4 = (a4 + 5) % 10
var a5
a5 = a4
a4 = a1
a1 = a5
a5 = a2
a2 = a3
a3 = a5
var num;
num = a1 * 1000 + a2 * 100 + a3 * 10 + a4
console.log(num);
}
pa(1234)