返回首页 返回题库

直角三角形

C++ 入门 GESP二级真题 #浮点数运算

题目描述

题面描述

小双刚学会勾股定理,得知直角三角形的斜边的平方等于两直角边的平方和。

小双创造了直角三角形数列:数列前两项由小双指定,从第三项开始,数列中的每个数字的平方等于前两项的平方和。

例如,第一项是3.0,第二项是4.0,则第三项是5.0 =5 。

其中 表示x的算术平方根,可以使用C++标准库中对应函数计算。

小双给定了数列的前两项,并给定一个数列上限,想让你算算数列的第几项会超过小双给定的数列上限?

输入格式

输入三行,第一行一个浮点数是数列第一项,第二行一个浮点数是数列第二项,第三行一个浮点数表示数列上限。

输出格式

输出一个正整数,表示第几项开始会超过小双给定的数列上限。

样例1

输入:

3.0
4.0
10.0

输出:

6

样例解释1

数列依次为:

3.0,

4.0,

= 5.0,

,

,

因此第6项会超过上限。

样例2

输入:

1.0
1.0
2.0

输出:

4

数据范围

输入均为不超过10000的正数。

题目保证给定第一项小于第二项。


时间限制

1.0 s

内存限制

512.0 MB

💡 查看提示(先自己想一想再看)
考察循环结构、浮点数运算、数学库sqrt函数的使用。需要注意循环终止条件是当前项超过上限,同时要正确计数项数,初始的前两项不要漏算。
⚙ 开始做这道题 0 人做过 · 0 收藏 · 6 浏览

讨论(0)