C/C++编程学习 - 第6周 ⑤ 球弹跳高度的计算

题目链接

题目描述

蒜头君让一个球从某一高度落下(整数,单位米),每次落地后反跳回原来高度的一半,再落下。编程计算气球在第 10 次落地时,共经过多少米?第 10 次反弹多高?

输入格式
输入一个整数 h (1≤h≤100),表示球的初始高度。

输出格式
输出包含两行:

第 1 行:到球第 10 次落地时,一共经过的米数。

第 2 行:第 10 次弹跳的高度。

注意:结果可能是实数,结果用double类型保存。

提示:输出时不需要对精度特殊控制,用cout << ANSWER,或者printf("%g", ANSWER)即可。

Sample Input

18

Sample Output

53.9297
0.0175781

思路

反弹高度是下落高度的一半,因此反弹高度可以由下落高度求出;一共经过的路程可以累加得到。

C++代码:

#include<bits/stdc++.h>
using namespace std;
int main()
{
    
    
	double h;
	while(cin >> h)
	{
    
    
		double sum = h;
		int n = 9;
		while(n--)
		{
    
    
			sum += h;
			h /= 2;
		}
		cout << sum << endl << h / 2.0 << endl;
	}
	return 0;
}

没有C语言基础的同学们,可以先学习一下C语言语法,我会整理好,后面发出来
我已经写好了,可以去C语言程序设计专栏第一周的内容

本周其他练习:

C语言程序设计专栏

C/C++编程学习 - 第6周 ① 计算A+B(新手教程)

C/C++编程学习 - 第6周 ② A*B问题

C/C++编程学习 - 第6周 ③ 班级人数

C/C++编程学习 - 第6周 ④ 奇数求和

C/C++编程学习 - 第6周 ⑤ 球弹跳高度的计算

C/C++编程学习 - 第6周 ⑥ 图像相似度

C/C++编程学习 - 第6周 ⑦ 分离整数的各个数位

C/C++编程学习 - 第6周 ⑧ 简单计算器

猜你喜欢

转载自blog.csdn.net/qq_44826711/article/details/112911922