题目:某次数学考试,某位学生的名次、年龄、得分之积为在是3783,问:该学生得第几名?成绩多少分?
(PS:看到这题很懵逼,我没想到用纸和笔怎么完成。所以自己动手用计算机得出结果。没有计算机真不会啊。如果您有思路,可以帮我留言喔!)
let result = 3783;
let x = [];//名次变量
let y = [];//年龄变量
let z = [];//得分变量
for(let i = 1; i<=100;i++){
if(i<=60){//假设班里最多有60人,通常情况下成立
x.push(i);//x:[1,60]
}
if(i>=8 && i <=13){//小学生的年龄在8 〜 13岁间
y.push(i);//x:[8,13]
}
if( i <=100){//成绩在1〜100分间
z.push(i);//x:[8,13]
}
}
let arr = [];//结果集
for(let i=0;i<x.length;i++){
for(let j=0;j<y.length;j++){
for(let o=0;o<z.length;o++){
let val = (x[i] * y[j] * z[o]);
if(result === val){
arr.push({x:x[i],y:y[j],z:z[o]});
}
}
}
}
console.log('arr',arr);//[{x: 3, y: 13, z: 97}]