week11作业—A - 必做题11-1—

题目

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

输入格式

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

输出格式

如果在第 202020 年或者之前就能买下这套房子,则输出一个整数 MMM,表示最早需要在第 MMM 年能买下;否则输出"Impossible"。输出时每行末尾的多余空格,不影响答案正确性

样例输入

50 10

样例输出

8

思路

for循环不断计算第i年的存款和房价,在能买时跳出循环,并置flag为1,否则不做处理,最后根据flag值输出能否能买和第几年能买。

代码

#include<iostream>
using namespace std;
float price=200;
int main() 
{
    
    
 int n,k,sum=0;;
 cin>>n>>k;
 int flag=0;
 int i;
 for(i=1;i<=20;i++)
 {
    
    
  sum+=n;
  if(sum>=price)
  {
    
    
   flag=1;
   break;
  }
  price+=price*k/100.0;
 }
 if(flag==0)
  cout<<"Impossible"<<endl;
 else
  cout<<i<<endl;
 return 0;
}

猜你喜欢

转载自blog.csdn.net/alicemh/article/details/105889826