开发一款软件,根据公式(身高-108)*2=体重,可以由10斤左右的浮动
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript">
var height = prompt("请输入您的身高");
var weight = prompt("请输入把你的体重");
//标准体重
var standard_weight = (height - 108) *2;
console.log(standard_weight);
//体重的极值:
var min_weight = standard_weight -10;
var max_weight = standard_weight +10;
//判定你的体重是否符合标准
if(weight > min_weight && weight <= max_weight){
alert("标准体重");
}else{
alert("体重不标准");
}
</script>
</head>
<body>
</body>
</html>
输入分数,判定成绩等级(if 和 switch两种写法)
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript">
var score = prompt("请输入成绩,我们将为您打分");
switch (true){
case score >= 90:
alert("成绩为优秀");
break;
case score >= 60 && score <=89:
alert("成绩良好");
break;
case score <=59:
alert("成绩一般");
break;
default:
break;
}
</script>
</head>
<body>
</body>
</html>
输入月份,显示当月的天数,利用case穿透简化代码
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<script type="text/javascript">
if(1 || 3 || 5 || 7 || 8 ||10 ||12){
}
var month = prompt("请输入月份");
var year = prompt("请输入年份");
switch (Number (month)){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
alert("31天");
break;
case 4:
case 6:
case 9:
case 11:
alert("30天");
break;
case 2:
if(year % 4 === 0 && year % 100 !==0 || year % 400 ===0){
alert("29天");
}else{
alert("28天");
}
default:
break;
}
</script>
<body>
</body>
</html>
根据日期,判断这个日期是这一年的第几天
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 根据日期,判断这个日期是这一年的第几天。 (使用switch 穿透编写)
// 例如: 2016,02,11,计算后结果为42
// 1. 拆出8位数的日期字符串;
// 2. 根据年月日判定当前日期已经经过了多少天;
var date_string = prompt("请输入八位数的日期");
// 20200226
// 拆分日期: 取得日期字符串的后两位数字;
var date = date_string % 100;
// 拆分月份: date_string / 100; 202002.26 => 取整 => 202002 % 100
var months = parseInt(date_string / 100) % 100;
// 年份 : 20200226 / 10000 => 2020.0226 => 取整 => 2020
var years = parseInt(date_string / 10000);
// console.log(date , months , years);
// 2. 根据年月日判定当前日期已经经过了多少天;
// 前面所有月份的日期总和 :
// 5.20
// 1 月份天数 + 2月份天数 + 3月份天数 + 4月份天数;
// + 20;
var days = 0;
switch( months - 1 ){
case 11 :
days += 30
case 10 :
days += 31
case 9 :
days += 30
case 8 :
days += 31
case 7 :
days += 31
case 6 :
days += 30
case 5 :
days += 31
case 4 :
days += 30
case 3 :
days += 31;
case 2 :
// 判定平年闰年;
if(years % 4 === 0 && years % 100 !== 0 || years % 400 === 0){
days += 29;
}else{
days += 28;
}
case 1 :
days += 31;
}
days += date;
console.log(days);
</script>
</body>
</html>
入职薪水10k,每年涨幅5%,50年后工资多少
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 入职薪水10K,每年涨幅5%,第50年工资多少
var salary = 10000;
// 涨薪需要重复执行50次!;
// for(var i = 0 ; i < 50 ; i ++){
// console.log(1)
// }
// 循环的作用 : 重复执行50次代码;
for(var i = 0 ; i < 50 ; i ++){
salary *= 1.05;
}
console.log(salary);
</script>
</body>
</html>
计算1~100之间所有偶数的和
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
//计算1~100之间所有偶数的和
1. 获取 1 ~ 100 之间所有偶数;
for(var i = 1; i <= 100; i ++){
// 判断偶数;
if( i % 2 === 0){
// 是偶数;
console.log(i);
}
}
// 2. 求和 !;
1 + 2 + 3 + 4 + 5;
var sum = 0;
sum += 1;
// sum => 1;
sum += 2;
// sum => 3
sum += 3;
// sum => 6
sum += 4;
sum += 5;
// 容器 :
var sum = 0;
for(var i = 1 ; i <= 100; i ++){
if( i % 2 === 0){
// i 就是偶数;
sum += i;
}
}
console.log(sum)
// 优化 : 量力而行 ;
var sum = 0;
for(var i = 2 ; i <= 100; i += 2){
sum += i;
}
console.log(sum)
</script>
</body>
</html>
闰年
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
//计算1000~2000之间的闰年(每行四个,打印到页面)
// 1. 如何获取 1000 ~ 2000 年之间的闰年;
// 穷举 :
// for(var i = 1000 ; i <= 2000 ; i ++){
// // i => 1000 ~ 2000;
// if( i % 4 === 0 && i % 100 !== 0 || i % 400 === 0){
// // 这个逻辑里面 ,document.write API执行一次则表示我们向页面上输出了一次内容;
// document.write(i + " ");
// }
// }
// 2. 记录什么时候打印了四个!;
// count => 记录在页面上的输出次数的;
// for(var i = 1000, count = 0; i <= 2000 ; i ++){
// if( i % 4 === 0 && i % 100 !== 0 || i % 400 === 0){
// // 这个逻辑里面 ,document.write API执行一次则表示我们向页面上输出了一次内容;
// document.write(i + " ");
// count ++;
// }
// // 逻辑 => 判断什么时候输出了四个数字;
// if( count === 4 ){
// // 判定结束之后,一定要将计数器清零!;
// count = 0;
// document.write("</br>");
// }
// }
</script>
</body>
</html>
水仙花数
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 计算100~999之间的水仙花数
// 水仙花数 : 自恋数 , 三叶草数 ....
// 自恋数 :
// 1. 是一个三位数
// 2. abc === a ³ + b ³ + c ³;
// 穷举 :
// for(var i = 100; i <= 999 ; i ++){
// // 1. 拆分!;
// }
// 拆分数字 :
// for(var i = 100; i <= 999 ; i ++){
// // 1. 123
// // 个位数的拆分;
// var ge = i % 10;
// // 十位数的拆分;
// // 123 / 10 => 12.3 =取整> 12 % 10 => 2;
// var shi = parseInt(i / 10) % 10;
// // 百位数的拆分;
// var bai = parseInt(i / 100);
// console.log(bai,shi,ge);
// }
// 计算数字的n次方;
// var res = Math.pow(2,4);
// console.log(res);
// 计算条件 :
// for(var i = 100; i <= 999 ; i ++){
// // 1. 123
// // 个位数的拆分;
// var ge = i % 10;
// // 十位数的拆分;
// // 123 / 10 => 12.3 =取整> 12 % 10 => 2;
// var shi = parseInt(i / 10) % 10;
// // 百位数的拆分;
// var bai = parseInt(i / 100);
// if(Math.pow(ge,3) + Math.pow( shi , 3) + Math.pow( bai , 3) === i ){
// console.log(i);
// }
// }
// ES6 的乘方 :
// Math.pow(基数,n次方)
// 基数 ** n; 兼容性不好;
// for(var i = 100; i <= 999 ; i ++){
// // 1. 123
// // 个位数的拆分;
// var ge = i % 10;
// // 十位数的拆分;
// // 123 / 10 => 12.3 =取整> 12 % 10 => 2;
// var shi = parseInt(i / 10) % 10;
// // 百位数的拆分;
// var bai = parseInt(i / 100);
// if(ge ** 3 + shi ** 3 + bai ** 3 === i ){
// console.log(i);
// }
// }
// 计算水仙花数 :
// 水仙花数 :
// 1. 必须是三位数; abc ;
// 2. abc == a ³ + b³ + c ³;
// 找出水仙花数;
// for(var i = 100; i <= 999; i ++){
// // 根据已知查看谁符合条件;
// // 1. 拆分三位数;
// // 123
// var ge = i % 10;
// // 123 => 12.3 => 取整 => 12 % 10 => 2
// var shi = parseInt(i / 10) % 10;
// // 123 => 1.23
// var bai = parseInt( i / 100);
// // 根据条件去判定 :
// if( i === Math.pow(ge,3) + Math.pow(shi,3) + Math.pow(bai,3)){
// console.log(i);
// }
// }
</script>
</body>
</html>
打印7的倍数
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 循环问题解决方案共两种 :
// 1. 算法解决;
// 2. 穷举解决;
// 穷举解决 : 穷举 => 试;
// 1. 共有100种可能!; => 把一百种可能全部列出来;
// 2. 逐一排查,谁符合规则;
// 打印100以内7的倍数
// 1. 打印 1 ~ 100 之间的所有整数;
// for(var i = 1 ; i <= 100; i ++){
// // 代码会重复执行一百次!;
// console.log(i);
// }
// for(var i = 1 ; i <= 100; i ++){
// // 代码会重复执行一百次!;
// if( i % 7 === 0){
// console.log(i);
// }
// }
// 算法类 :
// 7 的倍数是从7开始每次增加7;
// for(var i = 7 ; i <= 100 ; i += 7){
// console.log(i);
// }
// 性能测试 :
// time 和 timeEnd 之间代码的运行时间会被打印出来,我们通常用这样的测试工具去测试程序的性能!;
// console.time("test");
// // 算法类 :
// // 7 的倍数是从7开始每次增加7;
// for(var i = 7 ; i <= 100 ; i += 7){
// console.log(i);
// }
// console.timeEnd("test");
</script>
</body>
</html>
素数
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 计算1 ~ 100 之间所有的素数
// 素数 : 除了1 和他本身没有可以整除它的数字,这样的数我们就称之为素数;
// 反证法 : 它不是素数;
// 证明 : 除了1 和他本身有可以整除它的数字,那么这个数字就不是素数;
for(var i = 1; i <= 100; i ++){
// i 是 1 ~ 100所有的数字;
// 标志变量 : 给每次循环的每个数字添加上一个标志 ;
// 标志标明 : 假设这个数字就是素数;
// 这个数字是素数;
var flag = true;
// console.log( i , flag );
// 反证 : 除了1 和它本身所有的数字;
// console.log("---------------------")
// 嵌套循环 : 变量名不能一样;
for(var k = 2 ; k < i ; k++){
// console.log(k);
if( i % k === 0){
flag = false;
break;
}
}
// 经过上述的反证 , 我们根据 flag 判定当前数字是不是素数;
// 如果 flag 是true;
if( flag ){
console.log(i)
}
}
</script>
</body>
</html>
在页面打印等腰三角形
根
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
body{
text-align: center;
}
</style>
</head>
<body>
<script>
// 打印对应行和列的星星;
// 打印矩形 :
// for(var i = 0 ; i < 10 ; i ++){
// // 执行十次;
// document.write("a");
// }
// 打印的a,每个a都独立一行!;
// for(var i = 0 ; i < 10 ; i ++){
// // 执行十次;
// document.write("a");
// document.write("</br>");
// }
// 每行想要打印10个a;
// for(var i = 0 ; i < 10 ; i ++){
// // 执行十次;
// document.write("a");
// document.write("a");
// document.write("a");
// document.write("a");
// document.write("a");
// document.write("a");
// document.write("a");
// document.write("a");
// document.write("a");
// document.write("a");
// document.write("</br>");
// }
// 优化 :
// for(var i = 0 ; i < 10 ; i ++){
// // 执行十次;
// for(var k = 0 ; k < 10 ; k ++){
// document.write("a");
// }
// document.write("</br>");
// }
// 打印直角三角形
// for(var i = 0 ; i < 10 ; i ++){
// // 执行十次;
// // i => 0 1 2 3 4 5 6 7 8 9
// // => + 1
// for(var k = 0 ; k < i + 1 ; k ++){
// document.write("a");
// }
// document.write("</br>");
// }
// 打印等腰三角形 ;
// 每行要打印的a的数量 :
//i : 0 1 2 3 4 5 ... n
//
//打印a的个数 : 1 3 5 7 9 11 .. 2 * n + 1;
// for(var i = 0 ; i < 5 ; i ++){
// // i 的值是 0 1 2 3 4 5 6 7;
// // 2 * i + 1 的值是 : 1 3 5 7 9 ...
// for(var k = 0 ; k < i * 2 + 1 ; k ++){
// document.write("a");
// }
// document.write("</br>")
// }
// // 打印倒着的等腰三角形
// for(var i = 3 ; i >= 0 ; i --){
// // i 的值是 3 2 1 0;
// // 2 * i + 1 的值是 : 7 5 3 1 ...
// for(var k = 0 ; k < i * 2 + 1 ; k ++){
// document.write("a");
// }
// document.write("</br>")
// }
// 空心菱形 :
// 分辨for循环的开头和结尾 :
// 开头结尾打印 a;
// 其余的打印空格;
// for(var i = 0 ; i < 10 ; i ++){
// // i === 0 开头;
// // i === 9 结尾;
// }
for(var i = 0 ; i < 5 ; i ++){
// i 的值是 0 1 2 3 4 5 6 7;
// 2 * i + 1 的值是 : 1 3 5 7 9 ...
for(var k = 0 ; k < i * 2 + 1 ; k ++){
// 分辨开头和结尾;
if( k === 0 || k === i * 2 ){
document.write("a");
}else{
document.write(" ");
}
}
document.write("</br>")
}
// // 打印倒着的等腰三角形
for(var i = 3 ; i >= 0 ; i --){
// i 的值是 3 2 1 0;
// 2 * i + 1 的值是 : 7 5 3 1 ...
for(var k = 0 ; k < i * 2 + 1 ; k ++){
if( k === 0 || k === i * 2 ){
document.write("a");
}else{
document.write(" ");
}
}
document.write("</br>")
}
</script>
</body>
</html>
九九乘法表
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 九九乘法表就是根据 行和列拼接出 的一个乘法口诀表格。
// 9 行 9 列;
// 行 :
// row
for(var row = 1 ; row <= 9 ; row ++){
for(var col = 1; col <= row ; col ++){
// 前面是列 + 行 ;
document.write(col + "*" + row +"=" + col * row + " ");
}
document.write("</br>")
}
</script>
</body>
</html>
函数形式实现
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 九九乘法表的打印;
// function nn(){
// for(var row = 1 ; row <= 9 ; row ++){
// for(var col = 1; col <= row ; col ++){
// // 前面是列 + 行 ;
// document.write(col + "*" + row +"=" + col * row + " ");
// }
// document.write("</br>")
// }
// }
// 对功能的实现;
// 业务;
// for(var m = 0 ; m < 10 ; m ++){
// nn()
// }
</script>
</body>
</html>