案例一:
计算一个三位数的各位数字之和,比如415的各位之和就是4+1+5=10.
415→加工过程→10
解决问题的思路:
(1)输入要进行计算的数
(2)接收输入存放于num
(3)求出各位a1,除以10求余
(4)求出十位a10,除以100取余,再除以10取整
(5)求出百位a100,除以100取整
(6)进行a1+a10+a100=sum的运算
(7)返回结果sum
var num = prompt("请输入一个三位数");
var a1 = num % 10;//对10求余
var a10 = Math.floor((num % 100) / 10);//对100取余,再除以10取整
var a100 = Math.floor(num / 100);//对100取整
var sun = a1 + a10 + a100;
alert(sum);
通过这个案例,我们学到程序设计的套路:
(1)程序设计分为两个步骤:思路、编码;
(2)思路可以使用自然语言、流程图等一切能描述清楚解决方案的形式来描述;
(3)将思路翻译成对应的代码。
案例二:
根据三角形的三边之长计算三角形的三边面积
prompt函数输入的数据是字符串类型,比方“345”,注意“345”和345的区别:
如果你想输入345,那么应该强制转换类型,虽然JS有时会帮我们自动转换,但有时不靠谱。
<script>
/*
* 1.提示并接收输入三角形三边的长度a,b,c
* 2.获取半周长p = (a + b + c) / 2
* 3.判断输入的数是否合理(任意两边之和不能大于第三边)
* 4.合理则进行海伦公式的运算,不合理则返回false
* 5.输出最后结果
* */
var a = prompt("请输入三角形的第一条边:");
var b = prompt("请输入三角形的第二条边:");
var c = prompt("请输入三角形的第三条边:");
a = Number(a);//将字符串转化成数值类型(parseFloat同理)
b = Number(b);
c = Number(c);
var p = (a + b + c) / 2;//获取半周长
var s = Math.sqrt(p * (p - a) * (p - b) * (p - c));//海伦公式求面积
/*if(a + b > c && a + c > b && b + c > a){ //判断
alert("面积:" + s);
}
else{
alert(false);
}
*/
alert("面积:" + s);
</script>
案例三:
话费计算器,根据通话时长(单位为秒)计算话费,资费标准为0.5元/分钟。
var s = prompt("请输入通话时长(秒):");
var m = Math.ceil(s / 60);//按分钟收费,不满1分钟的按1分钟收费
s = Number(s);
m = Number(m);
var result = m * 0.5;
alert(result + "元");
解决问题的思路:
(1)输入要进行计算的数
(2)接收输入存放于num
(3)求出各位a1,除以10求余
(4)求出十位a10,除以100取余,再除以10取整
(5)求出百位a100,除以100取整
(6)进行a1+a10+a100=sum的运算
(7)返回结果sum
var num = prompt("请输入一个三位数");
var a1 = num % 10;//对10求余
var a10 = Math.floor((num % 100) / 10);//对100取余,再除以10取整
var a100 = Math.floor(num / 100);//对100取整
var sun = a1 + a10 + a100;
alert(sum);
通过这个案例,我们学到程序设计的套路:
(1)程序设计分为两个步骤:思路、编码;
(2)思路可以使用自然语言、流程图等一切能描述清楚解决方案的形式来描述;
(3)将思路翻译成对应的代码。
案例二:
根据三角形的三边之长计算三角形的三边面积
prompt函数输入的数据是字符串类型,比方“345”,注意“345”和345的区别:
如果你想输入345,那么应该强制转换类型,虽然JS有时会帮我们自动转换,但有时不靠谱。
<script>
/*
* 1.提示并接收输入三角形三边的长度a,b,c
* 2.获取半周长p = (a + b + c) / 2
* 3.判断输入的数是否合理(任意两边之和不能大于第三边)
* 4.合理则进行海伦公式的运算,不合理则返回false
* 5.输出最后结果
* */
var a = prompt("请输入三角形的第一条边:");
var b = prompt("请输入三角形的第二条边:");
var c = prompt("请输入三角形的第三条边:");
a = Number(a);//将字符串转化成数值类型(parseFloat同理)
b = Number(b);
c = Number(c);
var p = (a + b + c) / 2;//获取半周长
var s = Math.sqrt(p * (p - a) * (p - b) * (p - c));//海伦公式求面积
/*if(a + b > c && a + c > b && b + c > a){ //判断
alert("面积:" + s);
}
else{
alert(false);
}
*/
alert("面积:" + s);
</script>
案例三:
话费计算器,根据通话时长(单位为秒)计算话费,资费标准为0.5元/分钟。
var s = prompt("请输入通话时长(秒):");
var m = Math.ceil(s / 60);//按分钟收费,不满1分钟的按1分钟收费
s = Number(s);
m = Number(m);
var result = m * 0.5;
alert(result + "元");