买房子问题(break,continue,return的区别)

2023-05-16

问题描述:

  • 蒜头君从现在开始工作,年薪 NN 万。他希望在蒜厂附近买一套 6060 平米的房子,现在价格是 200200 万。假设房子价格以每年百分之 KK 增长,并且蒜头君未来年薪不变,且不吃不喝,不用交税,每年所得 NN 万全都积攒起来,问第几年能够买下这套房子?(第一年年薪 NN 万,房价 200200 万)
  • 输入格式
  • 一行,包含两个正整数 N(10 \le N \le 50)N(10≤N≤50),K(1 \le K \le 20)K(1≤K≤20),中间用单个空格隔开。
  • 输出格式
  • 如果在第 2020 年或者之前就能买下这套房子,则输出一个整数 MM,表示最早需要在第 MM 年能买下;否则输出"Impossible"
  • 输出时每行末尾的多余空格,不影响答案正确性
  • 样例输入
  • 50 10

  • 样例输出
    8

代码:

#include <iostream>
#include <iomanip>
#include <cstdio>
#include <cmath>
#include <string>
using namespace std;
int main() {
	int n;  //年薪
	int k;  //年利率
	cin >> n >> k;
	double sum = 0;//年薪之和
	int m = 0;  //m年
	double price = 200;//房价
	for (int m = 1; m <= 20; m++) {
		sum = sum + n;
		if (sum >= price) {
			cout << m;
			return 0;     //返回值在里面,在外面会出错 多输出一个impossible
		}
		price = price * (1 + k / 100.0);
	}
   cout << "Impossible";
	//return 0;
}

注 :return 0,break,continue的作用

简要:break是跳出当前整个循环语句,而continue是跳过当前循环的某一个条件语句的动作,return则是跳出当前函数而不往下继续执行

详细:

break: 此语句导致程序终止包含它的循环,并进行程序的下一阶段(整个循环后面的语句),即,不是跳到下一个循环周期而是退出循环。如果break语句包含在嵌套循环里,它只跳出最里面的循环。

如下代码

1

2

3

4

5

6

7

8

9

10

public class Test {

    public static void main(String[] args) {

        for(int i=0; i<10; i++){

            if(i==5){

                break;

            }

            System.out.print(i+" ");

        }

    }

}

可以看到程序输出了01234到5的时候跳出了循环

 

 

continue:循环语句里有此语句时,程序运行到此语句时,不在执行循环体里continue后面的语句而是跳到下一个循环入口处执行下一个循环。

把break改为continue

1

2

3

4

5

6

7

8

9

10

public class Test {

    public static void main(String[] args) {

        for(int i=0; i<10; i++){

            if(i==5){

                continue;

            }

            System.out.print(i+" ");

        }

    }

}

 

可以看到只有5没有输出,也即当i=5时没有执行打印操作,直接到下一次循环

 

而return是表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值,由return后面的参数指定。return后函数就结束了,后面的语句不再执行

1

2

3

4

5

6

7

8

9

10

11

12

13

14

public class Test {

    public static void fun(){

        for(int i=0; i<10; i++){

            if(i==5){

                return;

            }

            System.out.print(i+" ");

        }

        System.out.println("hello");

    }

    public static void main(String[] args) {

        fun();

    }

}

 

可以看到后面的hello并没有打印出来

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

买房子问题(break,continue,return的区别) 的相关文章

  • Javascript 中嵌套函数的返回值[重复]

    这个问题在这里已经有答案了 我有一个设置如下的函数 function mainFunction function subFunction var str foo return str var test mainFunction alert
  • 如何在C++中“返回一个对象”?

    我知道这个标题听起来很熟悉 因为有很多类似的问题 但我要求问题的不同方面 我知道将东西放在堆栈上和将它们放在堆上之间的区别 在Java中我总是可以返回对 本地 对象的引用 public Thing calculateThing Thing
  • 电子表格函数中返回数组

    下面的代码返回一个数组 我想在电子表格中使用它作为 Excel 公式来返回数组 但是 当我这样做时 它只将第一个值返回到单元格 无论如何 是否可以返回与数组大小相同的范围内的数组 Function LoadNumbers Low As Lo
  • 打破Java中的for循环[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 在我的代码中 我有一个 for 循环
  • Python函数返回字典?

    我是一名 Python 初学者 我遇到了一个我不理解的函数的输出 我无法提供所有代码 因为其中一些是我公司的 IP 我基本上使用我们的一位开发人员编写的库从数据仓库中提取指标 然后我想在另一个应用程序中使用这个指标值 当我获得该值时 我会将
  • 在 Go 函数中返回本地数组的切片安全吗?

    如果我返回作为函数或方法的局部变量的数组切片 会发生什么情况 Go 是否将数组数据复制到创建的切片中make 容量与切片大小或数组大小匹配吗 func foo uint64 var tmp 100 uint64 end 0 for tmp
  • 为什么我们应该总是从函数返回值?

    我不是一个编程高手 但多次听程序员说我们应该始终从函数返回值 我想知道原因 函数不需要返回任何内容 如果您查看 C 函数 您会发现其中许多函数不需要返回任何内容 好吧 不是明确地 void nonReturningFunction cons
  • 使用 lodash 按值(整数)对数组进行排序

    我真的很挣扎 但我找不到解决方案 我有一个数组 我想按值 所有整数 对其进行排序 我想 好吧 让我们使用 lodash 肯定有一个方便的功能 不知怎的 我不知道该怎么做 到目前为止我得到了这个 myArray 3 4 2 9 4 2 如果我
  • lambda 始终返回“1”

    有这样的代码 include
  • 为什么powershell会收集未捕获的值并将其作为数组返回

    尽管我认为以下代码应该返回单个值 但它返回一个数组 function Do Something 123 return 456 Do Something GetType will say Object 我了解到 如果我想避免这种情况 我必须将
  • jQuery Cycle 插件 - 如何返回当前显示幻灯片的索引号?

    我目前正在使用Malsup 的 Cycle 插件 http jquery malsup com 我只是想知道是否可以让循环插件返回当前显示幻灯片的索引号 我想在特定幻灯片处于活动状态时更改页面内容 不知道如何实现这一点 你可以这样做 on
  • C# 要么返回 false 要么什么也不做

    我想知道是否有办法不必重复相同的事情如果施工而是调用一个状态检查 成功后无法返回true 有人知道这个问题更好的标题吗 bool Enable if GetStatus ref status Trace WriteLine Error re
  • java 中的 Try-with-resources 和 return 语句

    我想知道是否放一个return里面的声明尝试资源block 防止资源自动关闭 try Connection conn return conn createStatement execute 如果我写这样的东西将会联系被关闭 Oracle 文
  • 在Python中,如果我返回“with”块内,文件仍然会关闭吗?

    考虑以下 with open path mode as f return line for line in f if condition 文件是否会正确关闭 或者是否使用return以某种方式绕过上下文管理器 https docs pyth
  • 从 WCF 服务返回接口

    我有一些 NET 远程处理代码 其中在某些服务器端类中实现的工厂方法返回具体对象的接口 也在同一台服务器上执行 NET 远程处理会自动创建代理 并允许我将接口传递给客户端 然后客户端可以直接调用它们 接口示例 public interfac
  • 返回吃异常

    我至少发现了以下行为weird def errors try ErrorErrorError finally return 10 print errors prints 10 It should raise NameError name E
  • 单个返回语句与多个返回语句? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何声明一个变量来存储通过引用返回的对象?

    C 参考仍然让我感到困惑 假设我有一个创建类型对象的函数 方法Foo并通过引用返回它 我假设如果我想返回该对象 它不能是在堆栈上分配的局部变量 所以我必须在堆上分配它new Foo makeFoo Foo f new Foo return
  • Ruby 中 return 的意义是什么?

    有什么区别return只需放置一个变量 如下所示 没有回报 def write code number of errors if number of errors gt 1 mood Ask me later else mood No Pr
  • 中断并标签,“标签 MyLabel 丢失”

    我有这样的代码 if condition1 break MyLabel while true some code here MyLabel if condition2 break more code here 我收到此错误 标签 MyLab

随机推荐

  • (转)Julia PkgServer 镜像服务

    https mp weixin qq com s DyegFcNEjieJspc 3B5G6w Julia PkgServer 镜像服务 原创 Johnny Chen JuliaCN 昨天 长久以来 xff0c 受国内网络环境影响 xff0
  • python : pandas库的后继者polars库

    polars库是python的又一dataframe库 xff0c 显然 xff0c 在pandas库的光芒下 xff0c 要上位是不容易的 xff0c 必须有过硬的功夫 一 用法基本一致 从长相上看 xff0c 两者有孪生相 xff0c
  • 证券类私募主要需求及核心服务商

  • Python:同花顺全数据接口

    前往 xff1a http quantapi 10jqka com cn page 61 home 如果是windows 根据不同用户 xff0c 可以选择不同的下载 1 iFinDPy 模块 下载完成后 xff0c 会出现一个DataIn
  • 使用Python中PIL图形库进行截屏

    目的 xff1a 通过使用Python的一个图形库PIL xff08 Python Image Library xff09 对屏幕进行截图 步骤 xff1a 1 下载PIL xff08 路径 xff09 并安装 2 新建文件 截屏 py x
  • 详解Python中pyautogui库的最全使用方法

    详解Python中pyautogui库的最全使用方法 在使用Python做脚本的话 xff0c 有两个库可以使用 xff0c 一个为PyUserInput库 xff0c 另一个为pyautogui库 就本人而言 xff0c 我更喜欢使用py
  • python : pandas 中多重索引multiindex与多个标的dataframe

    多个标的dataframe 如何转成多重索引的dataframe 有点象 xff0c 有中证500股票的数据 xff0c 如何把这500只股票 xff0c 整成一个多重索引的dataframe span class token functi
  • 关于Rust中的自引用:差之毫厘?!

    先设计一个自引用类型 xff0c 然后能过std mem swap来观察其变化 xff1a 一 为什么自引用没有出现预期的问题 use std mem derive Debug struct SelfRef name String ptr
  • Rust std::mem::transmute实例讲解

    Rust std mem transmute实例讲解 时间 2022 04 08 本文章向大家介绍Rust std mem transmute实例讲解 xff0c 主要分析其语法 参数 返回值和注意事项 xff0c 并结合实例形式分析了其使
  • Julia : 如何一行实现99乘法表?

    我个人的方法如下 xff0c 还有什么更简洁的么 xff1f 一 V1 0 span class hljs built in map span y span class hljs subst gt span println reduce s
  • 整理了一份史上最全的DevOps 工具链

    2018 02 07 朱少民 软件质量报道 在列出DevOps 工具链之前 xff0c 介绍一下什么是DevOps xff0c 虽然DevOps这个概念现在还没有标准的定义 xff0c 但我们可以追溯一下其过去九年的历史发展过程 xff08
  • https://zhuanlan.zhihu.com/p/36070173

    https zhuanlan zhihu com p 36070173
  • 几款SSH客户端

    SecureCRT Xshell Putty等都仅仅是客户端软件 xff0c 一般用于Windows客户端计算机 xff0c 因此 xff0c 无论选择哪款客户端SSH工具都是可以的 1 SecureCRT 8 1版本 SecureCRT是
  • Rust: 如何与DLL文件进行交互?

    Rust除了有FFI方式与外部或其它语言交互外 xff0c 还可以通过DLL的方式进行交互 更一步了解 xff0c 可以参考 xff1a https www insp top article how to implement dynamic
  • 八问数据中台:关于数据中台你想知道的都在这里!

    八问数据中台 xff1a 关于数据中台你想知道的都在这里 xff01 原创 xff1a 筱愚她爸 凯哥讲故事系列 1周前 数据中台最近特别火 xff0c 各个企业都在关注如何构建自己的数据中台 xff0c 利用数据中台打造数据驱动的经营能力
  • 小白学python系列————【Day45】面向对象魔法方法及元类详细

    今日内容概要 反射实战案例面向对象的魔法方法 双下方法 魔法方法实战演练元类简介创建类的两种方式元类的实际应用元类之双下new方法 反射实战案例 1 实战一 xff1a 加载配置文件纯大写的配置 span class token comme
  • Python将自己的Py文件(或包)发布至pip上

    Python将自己的Py文件 xff08 或包 xff09 发布至pip上 开始只打包一个py文件第一步在Pypi和Github上拥有自己的账号第二步 有一个python库 pgzero template pyREADME mdLICENS
  • Linux下搭建Git服务器

    目录 步骤一 安装Git xff1a 步骤二 服务器端创建git用户 xff08 管理Git服务 xff09 服务器端的Git配置公钥 生成rsa证书文件 步骤三 服务器端创建Git仓库 步骤四 客户端clone服务器端git仓库 1 在客
  • java -jar启动 报错: Error: Unable to access jarfile

    原因 xff1a 找不到jar包 xff0c 路径名称不对 xff1b 解决方案 xff1a 不要自己手动拼写输入jar包路径 xff0c 直接复制路径或tab键补齐
  • 买房子问题(break,continue,return的区别)

    问题描述 xff1a 蒜头君从现在开始工作 xff0c 年薪 NN 万 他希望在蒜厂附近买一套 6060 平米的房子 xff0c 现在价格是 200200 万 假设房子价格以每年百分之 KK 增长 xff0c 并且蒜头君未来年薪不变 xff