题目17 ◉‿◉ 仿自由落体实验
本帖最后由 不二如是 于 2017-5-22 07:19 编辑http://xxx.fishc.com/forum/201705/05/225545py2j222x5z6x55n2.png
按照提示,完成代码,秀秀你的编程能力!
不许看答案,否则打屁屁
程序分析:
一球从 100 米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第 10 次落地时,共经过多少米?第 10 次反弹多高?
源代码:
**** Hidden Message *****
○面试题索引贴●
如果喜欢,请订阅{:10_303:} :
HTML5 - 庖丁解牛 + JavaScript - 庖丁解牛
a = #每个‘反弹落地’过程经过的路程,第1次只有落地(100米)
h = 100#每个‘反弹落地’过程,反弹的高度,第1次为100米
print('第1次从%s米高落地,走过%s米,之后又反弹至%s米。' % (h, a, h/2))
for i in range(2,11):#第1次已初始化,再循环9次
a.append(h)#先计算路程,再高度减半,因为一个‘反弹落地’为2个高度
h = h / 2
print('第%s次从%s米高落地,共走过%s米,之后又反弹至%s米。' % (i, h, sum(a), h / 2)) 是这样么
def func(num):
n = 100
h = 100
while num:
n *= 0.5
h += n
num -= 1
print(h,n)
func(10) 辛苦了 window.onload = function () {
let distance = 0;
let height = 100;
let result = {};
function calcu (num, height) {
let distance = 0;
let result = {};
for (let i = 0; i < num; i++) {
distance += height * 2;
height /= 2;
}
result.distance = distance;
result.height = height;
return result;
}
result = calcu(10, 100);
result.distance -= height;
console.log('球在第10次落地式,共经过' + result.distance + '米');
console.log('第10次反弹' + result.height + '米');
}; 谢谢分享 反正我不会 k 1 滴滴滴 看看 {:5_106:} kankan
仿自由落体实验 看看 emm <!DOCTYPE html>
<html>
<head>
<title>17</title>
<meta charset="utf-8">
<script type="text/javascript">
window.onload=function(){
var isp=document.getElementById("isp");
var canvas=document.getElementById("goon");
var mycanvas=canvas.getContext("2d");
// 创建球对象
mycanvas.fillStyle="black";//填充颜色
mycanvas.strokeStyle="red";//描边颜色
var ball=function(x,y,r){
this.x=x;
this.y=y;
this.r=r;
this.draw=function(){//画求方法
mycanvas.beginPath();
mycanvas.arc(this.x,this.y,this.r,0,2*Math.PI,false);
mycanvas.stroke();//描边
};
};
var y=10;
var jul=100;
var ball=new ball(40,y,10);
mycanvas.fill();
var n=100;
var change=true;//下落或弹起
var start=setInterval(function(){yid(100),50})
//下落运动主函数
function yid(h){//n=下落高度,h=下路高度减去球大小
if(n==0){//下落高度为0是停止
clearInterval(start);
isp.innerHTML="铁球总共运动:"+jul;
}
if(change){
if(ball.y<h){
y++;}
if(ball.y==h){
if(change){
n=Math.floor(n/2)
jul+=n;
change=false;}
}
}
else{
if(ball.y>h-n){
y--;}
if(ball.y==h-n){
jul+=n;
change=true;
}
}
mycanvas.clearRect(29,0,30,h+10);
ball.y=y;
ball.draw();
mycanvas.fill();
}
}
</script>
</head>
<body>
<canvas id="goon" width="" height="110"></canvas>
<p id="isp"></p>
</body>
</html> var fall = function(){
var height = 100;
var heights = 0;
for(var i=0;i<10;i++){
height/=2;
heights+=height;
}
console.log(height,heights);
}
fall();
这个值有点小六 本帖最后由 爱喝百岁山 于 2018-10-11 21:30 编辑
private void calHeight()
{
int startH = 100;
int dis = 0;
for (int i = 0;i < 10;++i)
{
dis += startH;
startH = startH / 2;
if (9 == i)
{
dis = dis - startH;
}
}
cout << startH << endl << dis <<endl;
} 看看,学习学习 好像有问题
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
</body>
<script>
var h = 100;
var allH = 100;
for(var i = 2; i < 10; i++) {
allH += h;
h = h / 2;
}
document.write(h + ',' + allH+'<br/>');
</script>
</html>
页:
[1]
2