博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
3、流程语句相关练习
阅读量:4606 次
发布时间:2019-06-09

本文共 9920 字,大约阅读时间需要 33 分钟。

数学函数

/

x的y次方
Math.pow(x, y)
/
// alert(Math.pow(2, 3));

/*

Math.random()
【注】随机0~1的任意数。
[0, 1)
【注】随机0~9的任意整数。
*/

// alert(Math.random());        var num = parseInt(Math.random() * 10);        alert(num);
1、输入年月日,输出当前年第几天。2018.05.17 。month
var year = 2018;            var month = 5;            var date = 17;            var currentDay = 0;            switch(month){                case 12:                    currentDay += 30;                case 11:                    currentDay += 31;                case 10:                    currentDay += 30;                case 9:                    currentDay += 31;                case 8:                    currentDay += 31;                case 7:                    currentDay += 30;                case 6:                    currentDay += 31;                case 5:                    currentDay += 30;                case 4:                    currentDay += 31;                case 3:                    currentDay += 28;                case 2:                    currentDay += 31;                case 1:                    currentDay += date;                    break;                default:                    alert("error");                    break;            }            if (year % 400 == 0 || year % 4 == 0 && year % 100 != 0) {                if(month > 2){                alert(currentDay + 1);                }else{                alert(currentDay);                }            }else{            alert(currentDay);}
2、个人所得税

image

var salary = 20000;            var tax = 0;            // salary = salary - 3500;            salary -= 3500;            if(salary >= 0 && salary <= 500){                tax = salary * 0.05;            }else if(salary > 500 && salary <= 2000){                tax = salary * 0.1;            }else if(salary > 2000 && salary <= 5000){                tax = salary * 0.15;            }else if(salary > 5000 && salary <= 20000){                tax = salary * 0.2;            }else if(salary > 20000 && salary <= 40000){                tax = salary * 0.25 - 1;            }else if(salary > 40000 && salary <= 60000){                tax = salary * 0.3 - 3;            }else if(salary > 60000 && salary <= 80000){                tax = salary * 0.35 - 6;            }else{                tax = salary * 0.4 - 10;            }            alert(tax); //3300
3、循环习题
1、打印100–200之间所有能被3或者7整除的数                        /*for(var i = 100; i <= 200; i++){                if(i % 3 == 0 || i % 7 == 0){                    document.write(i + "
"); } }*/ 2、打印九九乘法表 /*for(var i = 1; i < 10; i++){ //输出九九乘法表的式子 for(var j = 1; j <= i; j++){ document.write(j + "X" + i + "=" + i * j + " ") } document.write("
"); }*/ 3、判断一个数是合数,还是质数。 var num = 6; /* 分析: 肯定能被1和它本身整除。 2~6 */ var isYes = false; //布尔值,记录是否是合数。 for(var i = 2; i < num; i++){ if(num % i == 0){ //判断出来是合数 isYes = true; // alert(i); break; } } if(isYes == true){ alert("这是一个合数"); }else{ alert("这是一个质数"); } 4、求出1-1/2+1/3-1/4…..1/100的和 var i=1; i*-1*-1 var sum = 0; for(var i = 1; i <= 100; i++){ if(i % 2 == 0){ sum -= 1 / i; }else{ sum += 1 / i; } } alert(sum); 5、输出20-30之间能被3整除的数,5个一行。 /* var count = 0; //用于计数 for(var i = 30; i <= 80; i++){ if(i % 3 == 0){ //没找一个符合条件的元素,就计数一次 if(count % 4 == 0){ document.write("
"); } document.write(i + " "); count++; } }*/ 6、打印1000-2000年,所有的闰年,四个一行输出。 var count = 0; //用于计数 for(var i = 1000; i <= 2000; i++){ if(i % 400 == 0 || i % 4 == 0 && i % 100 != 0){ if(count % 4 == 0){ document.write("
"); } document.write(i + " ") count++; } } 7、100-1000以内的水仙花数 /* 1、找出所有三位数 */ for(var i = 100; i < 1000; i++){ //2、将每一位数取出 123 // 【注】关键点:将每一位取出 var a = i % 10; // var b = parseInt(i / 10) % 10; var b = parseInt(i % 100 / 10); var c = parseInt(i / 100); // var sum = a * a * a + b * b * b + c * c * c; var sum = Math.pow(a, 3) + Math.pow(b, 3) + Math.pow(c, 3); if(i == sum){ //3、水仙花数 document.write(i + "
"); } } 8、宰相的麦子:相传古印度宰相达依尔,是国际象棋的发明者。 有一次,国王因为他的贡献要奖励他,问他想要什么 。达依尔说:“只要在国际象棋棋盘上(共64格)摆上这么些麦子就行了: 第一格一粒,第二格两粒,……,后面一格的麦子总是前一格麦子数的两倍, 摆满整个棋盘,我就感恩不尽了。” 国王一想,这还不容易,刚想答应,如果你这时在国王旁边站着, 你会不会劝国王别答应,为什么? var tmp = 1; //每一格的麦子数 var sum = 0; //求和 for(var i = 0; i < 64; i++){ sum += tmp; tmp *= 2; } alert(sum); //18446744073709552000 9、打印1——100的所有数,除了7的倍数和带7的数。 关键点:取出个位和十位,去进行判断 除了7的倍数 或 带7的数 (1)/*for(var i = 1; i <= 100; i++){ //1、剔除7的倍数 var a = i % 10; var b = parseInt(i / 10) % 10; if((a == 7 || b == 7) || i % 7 == 0){ continue; } document.write(i + "
"); }*/ (2)/*for(var i = 1; i <= 100; i++){ //1、剔除7的倍数 if(i % 7 == 0){ continue; } var a = i % 10; var b = parseInt(i / 10) % 10; if(a == 7 || b == 7){ continue; } document.write(i + "
"); }*/ (3)找出7的倍数和带数字7的值 /*for(var i = 1; i <= 100; i++){ if(i % 7 == 0){ document.write(i + "
"); }else{ var a = i % 10; var b = parseInt(i / 10) % 10; if(a == 7 || b == 7){ document.write(i + "
"); } } }*/ 10、求1!+2!+3!+4!+5! 1 + 2 + 6 + 24 + 1 20 分析: 1、加五次 2、每一次里面应该如何循环。 var sum = 0; for(var i = 1; i <= 5; i++){ var amass = 1; for(var j = 1; j <= i; j++){ amass *= j; } sum += amass; } alert(sum); //153 11、输入两个数,求两个数的最大公约数(*****) //能够同时整除两个数的最大数 9 6 3 15 5 5 关键字 1.先找出两个数中最小的那个数 */ var num1 = 15; var num2 = 5; //1、找出两个数中的较小数 /*var min = 0; if(num1 < num2){ min = num1; }else{ min = num2; } alert(min);*/ var min = num1 < num2 ? num1 : num2; // alert(min); while(1){ if(num1 % min == 0 && num2 % min == 0){ break; } min--; } // alert("最大公约数是:" + min); 12、输入两个数,求两个数的最小公倍数(****) 9 6 18 8 4 8 关键点 1. 先找出两个数中的最大数 2. 最大数++,找出能被两个数整除的数(退出循环) var num1 = 15; var num2 = 5; var max = num1 > num2 ? num1 : num2; while(1){ if(max % num1 == 0 && max % num2 == 0){ break; } max++; } // alert(max); 13、输入两个数n,a,如果n==3, a == 2; 输出 2 + 22 + 222 的值。(不用输出式子)(****) 如果n == 4, a == 3; 输出 3 + 33 + 333 + 3333的值。 1、n = 3,相加三次,每次相加比前一次相加的数,多一位 2、每次多的这个位数的值为a */ /* 3 + 33 + 333 + 3333 */ var n = 4; var a = 3; var sum = 0; var tmp = a; //关键点:每一次累加的数。 for(var i = 0; i < n; i++){ sum += tmp; tmp = tmp * 10 + a; } // alert(sum); 14、五位数中,对称的数称为回文数,找出所有的回文数。 如12321(***) 关键点:将每一位数都取出来。 /*var num = 12321; var a = num % 10; var b = parseInt(num / 10) % 10; var c = parseInt(num / 1000) % 10; var d = parseInt(num / 10000); if(a == d && b == c){ alert("这就是一个回文"); }*/ for(var i = 10000; i < 100000; i++){ var a = i % 10; var b = parseInt(i / 10) % 10; var c = parseInt(i / 1000) % 10; var d = parseInt(i / 10000); if(a == d && b == c){ document.write(i + "
"); } }

转载于:https://www.cnblogs.com/zhongchao666/p/9275469.html

你可能感兴趣的文章
基于Bootstrap表单验证
查看>>
程序员的职业规划
查看>>
lsof命令详解
查看>>
常用模块,异常处理
查看>>
父窗口与子窗口之间的传值
查看>>
eclipse 找不到 tomcat 的解决方案
查看>>
HDU 1890--Robotic Sort(Splay Tree)
查看>>
MapXtreme2004初学者资料(整理)--有些功能很有价值
查看>>
connection string for Excel/Access 2010
查看>>
【转】【Python】Python中的__init__.py与模块导入(from import 找不到模块的问题)
查看>>
学习wavenet_vocoder之环境配置
查看>>
常用Maven命令
查看>>
[2]一个简单的JAVA程序
查看>>
Docker启动mysql的坑2
查看>>
JS中的对象数组
查看>>
j2ee爬坑行之二 servlet
查看>>
如何开启mysql的慢查询
查看>>
test命令的用法
查看>>
2018年东北农业大学春季校赛 D wyh的迷宫【搜索】
查看>>
一张图教你位运算
查看>>