作业01
Mark和John在PK他们的BMI(Body Mass Index,体重指数)。
体重指数是用这个公式计算的:
B
M
I
=
m
a
s
s
/
h
e
i
g
h
t
2
=
m
a
s
s
/
(
h
e
i
g
h
t
∗
h
e
i
g
h
t
)
。
BMI = mass / height^2 = mass / (height * height)。
BMI=mass/height2=mass/(height∗height)。
其中,mass是体重,单位为kg;height为身高,单位为米。
请用 JavaScript 编写一个程序,命名为 bmi.js
,完成如下任务:
-
用变量存储Mark和John的体重以及身高;
-
计算二人的BMI;
-
创建一个布尔变量,用来包含Mark的BMI是否比John更高;
-
打印一个字符串到控制台,包含第三步的变量(比如"Mark的BMI是否比John更高?true")
代码如下:
// mass = 体重 , height = 身高 , BMI = mass/(heigth*height)
// Markm = Mark 的体重 ,Markh = Mark 的身高
// Johnm = John 的体重 ,Johnh = John 的身高
// BMIM = Mark 的BMI值 ,BMIJ = John 的BMI值
//定义Mark与John的身体数据
Markm = 175 , Markh = 60;
Johnm = 169 , Johnh = 65;
//计算二人的BMI指数
BMIM = Markm / (Markh*Markh);
BMiJ = Johnm / (Johnh*Johnh);
//输出二人的BMI
console.log("Mark的BMI为:"+BMIM);
console.log("John的BMI为:"+BMiJ);
//比较二人的BMI
BMI = (BMIM > BMiJ?"Mark的BMI比John高":"Mark的BMI比John低");
console.log(BMI);
结果如下:
作业02
John 和 Mike 都在不同的队打篮球。在最近的3场比赛中,John 的队得了89分、120分和103分,而 Mike 的队得了116分、94分和123分。
用 JavaScript 编写程序,存为 ball.js
,完成以下任务:
- 计算每队的平均分;
- 决定哪支球队平均获胜(平均分最高),并将胜者打印到控制台。在输出中也包括平均分;
- 然后改变分数来显示不同的赢家。别忘了考虑到可能会有平局(平均分相同);
- Mary 也打篮球,她的队得了97分、134分和105分。像前面一样,把平均分胜出者记录到控制台;
- 像前面一样,改变分数以产生不同的赢家,记住可能会有平局。
代码如下:
//Mikescore,Mike队伍的得分 , Johnscore = John队伍的得分 , Maryscore = Mary队伍的得分
//AVGI = Mirk队伍的平均得分 , AVGO = John队伍的平均得分 , AVGA = Mary队伍的平均得分
//初始化各个队伍的得分
let Mikescore = [116,94,123]
let Johnscore = [89,120,103]
let Maryscore = [97,134,105]
//初始化各队总分
let ScoreI = 0;//Mike
let ScoreO = 0;//John
let ScoreA = 0;//Mary
//初始化平均分
let AVGI = 0;//Mike
let AVGO = 0;//John
let AVGA = 0;//Mary
//计算总分
//Mike队伍
for(let i = 0;i<Mikescore.length;i++){
ScoreI = ScoreI + Mikescore[i]
}
//John队伍
for(let i = 0;i<Johnscore.length;i++){
ScoreO = ScoreO + Johnscore[i]
}
//Mary队伍
for(let i = 0;i<Maryscore.length;i++){
ScoreA = ScoreA + Maryscore[i]
}
//计算平均分
//Mike队伍平均分
AVGI = ScoreI/Mikescore.length
console.log("Mike队的平均分为:"+AVGI)
//John
AVGO = ScoreO/Johnscore.length
console.log("John队的平均分为:"+AVGO)
//Mary队伍平均分
AVGA = ScoreA/Maryscore.length
console.log("Mary队的平均分为:"+AVGA)
//判断哪个队伍获胜
if(AVGI > AVGO && AVGI >AVGA){
console.log("Mike队伍获胜,得分为:"+AVGI)
}else if(AVGO > AVGI && AVGO > AVGA){
console.log("John队伍获胜,得分为:"+AVGO)
}else if(AVGA > AVGO & AVGA > AVGI){
console.log("Mary队伍获胜,得分为:"+AVGA)
}else if(AVGI == AVGO && AVGI > AVGA){
console.log("Mike队与John队同时获胜,得分为:"+AVGI)
}else if(AVGI == AVGA && AVGI > AVGO){
console.log("Mike队与Mary队同时获胜,得分为:"+AVGI)
}else if(AVGO == AVGA & AVGO >AVGI){
console.log("John队与Mary队同时获胜,得分为:"+AVGO)
}else{
console.log("三对平局,得分为:"+AVGI)
}
结果如下:
题目给定分数:
任意两队获胜:
三队平局:
作业03
用JavaScript编写程序,取名 star.js
,在控制台输出如下图形:
*
* *
* * *
* * * *
* * *
* *
*
代码如下:
let str = "";//定义一个空字符串作为“*”之间的间隔
for (let row = 1; row <= 4; row++) {//外层循环控制行数,先输出上半部分的4行
for (let j = 1; j <= 4 - row; j++) {
str = str + " "
}
for (let i = 1; i <= row; i++) {//星星数
str = str + "* ";
}
str = str + "\n";//外层循环,每输出一行要换行
}
//下半部分和上半部分大致相同
for (let row = 1; row <= 3; row++) {//外层循环控制行数,输出下半部分的3行
for (let j = 1; j <= row; j++) {
str = str + " "
}
for (let i = 1; i <= 4 - row; i++) {//星星数
str = str + "* ";
}
str = str + "\n";//外层循环,每输出一行要换行
}
console.log(str);
结果如下: