程序设计思维与实践 Week11 作业 A 必做题11-1

题目描述:

蒜头君从现在开始工作,年薪 NN 万。他希望在蒜厂附近买一套 6060 平米的房子,现在价格是 200200 万。假设房子价格以每年百分之 KK 增长,并且蒜头君未来年薪不变,且不吃不喝,不用交税,每年所得 NN 万全都积攒起来,问第几年能够买下这套房子?(第一年年薪 NN 万,房价 200200 万)

input:

一行,包含两个正整数 N(10 \le N \le 50)N(10≤N≤50),K(1 \le K \le 20)K(1≤K≤20),中间用单个空格隔开。

output:

如果在第 2020 年或者之前就能买下这套房子,则输出一个整数 MM,表示最早需要在第 MM 年能买下;否则输出"Impossible"

输出时每行末尾的多余空格,不影响答案正确性

思路:

模拟,累加每月的工资和放假的上涨,当每月的工资跟不上房价的增速并且还没有攒够钱时,则不可能买得起房。

#include<iostream>
using namespace std;
int main()
{
	double n,x=0,y=200,k;
	int ans=0;
	cin>>n>>k;
	for(int i=1;i<=20;i++)
	{
		x+=n;
		if(i>=2)
		y=(1.0+(k/100.0))*y;
		if(x>=y)
		{
			ans=i;
			break;
		}
	}
	if(!ans)
	cout<<"Impossible";
	else cout<<ans;
	return 0;
}

猜你喜欢

转载自blog.csdn.net/cax1165/article/details/105893564