条件语句体内是否有可能存在多个语句?

2023-12-23

我主要是一名 C++(因此是一名 OO/命令式)程序员,我觉得很奇怪的是,在条件语句中,每个求值只能有一个语句,例如函数式语言 Scheme 中的 if 语句。

例如:

 (let ((arg1 0) (arg2 1))
   (if (> arg1 arg2)
       arg1
       arg2)))

错误示例:

(let ((arg1 0) (arg2 1))
  (if (> arg1 arg2)
      (arg1 (display "cool"))
      (arg2 (display "not cool"))))

给我一个类型为“程序应用程序:预期程序,给定:2;参数为:#void”的错误

这可以通过将所述条件语句放入已定义函数体内的不同语句中来解决,例如,条件语句的正文每次都有单独的语句,如下所示:

(if (condition) statement1a statement2a)
(if (condition) statement1b statement2b)

等等...

不用说,它不太实用。更不用说重复的代码开销了。

我在这里错过了什么还是真的没有其他办法?


(let((arg1 0)(arg2 1))
  (if (> arg1 arg2) 
      (begin
        (display arg1)
        (newline)
        (display "cool"))
      (begin
        (display arg2)
        (newline)
        (display "not cool"))))

当您说 (arg1 (display "cool")) 时,您暗示 arg1 应该是一个过程。

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

条件语句体内是否有可能存在多个语句? 的相关文章

  • 如何使用多个问号“?”一个语句中的冒号“:”在javascript中被解释? (条件运算符)

    我知道简单的条件语句是如何解释的 比如 condition expr1 expr2 但我想知道这样的说法该如何解读 function arc return da gt d3 svg arcMax r0 String1 String2 r0
  • Python:内联 if 语句 else 不执行任何操作

    如果 Django 模型的字段匹配条件 则将其分配给一个值 g Car objects get pk 1234 g data version my dict dataVersion if my dict else expression fa
  • 如何使用 DrRacket 遵循 SimplyScheme 书籍

    我希望能够操纵句子 以便我可以将它们作为输入并根据单个字母等内容返回输出 例如 ends e 命令将返回所有以 e 结尾的单词 ends e only the good die young gt the die 不幸的是 e 是一个字符串
  • 检查 FTP 文件夹是否存在任何与掩码匹配的文件的批处理文件

    我需要创建一个批处理文件来访问受保护的 FTP 站点 检查文件类型 txt 存在 如果存在则进行下一步 如果不存在则返回0并结束作业 我进行了广泛的搜索 但找不到任何解决方案 这不是一项简单的任务 特别是当您需要检查与掩码匹配的文件 而不是
  • 方案中的配对组合

    我试图找到可以使用方案中的 N 对列表进行的各种组合 这是我到目前为止所处的位置 define pair combinations list of pairs if null list of pairs nil let first caar
  • MySQL查看数据是否为NULL

    我需要在 Select 中放置一个 Case 来检查我添加到视图中的数据是否为 NULL 在这种情况下我希望它只输入零 或者不输入零 你的意思是这样的吗 SELECT IF field IS NULL 0 field 还有 IFNULL S
  • PHP - While/Else 错误? [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我有以下
  • Gitlab-CI:有条件的allow_failure

    我最近开始为我的代码实现自动测试 我注意到 CI 没有捕获编译器的警告 即使有警告 测试也显示为成功 我最初为编译器添加了一个标志 将警告转化为错误allow failure True 但问题是编译器在第一个警告 gt 错误时停止 并没有完
  • Scheme 和 Common Lisp 之间的实际区别是什么? (或任何其他两种 Lisp 方言)

    注意 我并不是在问学哪个 哪个更好或者诸如此类的问题 我选择了 SICP 的免费版本 因为我觉得它读起来很好 我听说过有关它的好东西 并且我对编程的这一方面很感兴趣 我知道Scheme 是Lisp 的一种方言 我想知道 Scheme 和Co
  • 如何在 ifelse 中使用示例

    我有以下清单 x rep a 100 如果我使用下表 ifelse x a sample c 1 100 1 0 当我第一次运行时 我得到以下输出 1 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22
  • SQL Server 条件流

    如果我写两个SELECT中的语句IF EXISTS条件与AND这些选择查询之间的子句 即使第一个查询是否都会执行两个查询SELECT返回假 IF EXISTS SELECT AND EXISTS SELECT BEGIN END 在这种情况
  • Java 能够选择是加还是减

    我有两个问题 第一是为什么我不能添加运算符 我可以添加第一个和第二个整数 但不能添加运算符 第二个问题是我需要创建一个永无止境的循环 有没有比 while 循环更简单的方法 基本上的想法是 如果他们选择 如果会说错误的运算符 请重试 imp
  • java中可以有switch(java.lang.Object)吗?

    我的应用程序需要有类型的 switch case 语句String 我需要这样的东西 Object list1 list1 Object list2 list2 Object list3 list3 Object option list1
  • 从 for 循环中的 if else 语句的最后一行提取信息 Python

    我认为这是不可能的 但我想我会问以防万一 所以我试图编写一个内存高效的 p ython 程序来解析通常大小为 100 gigs 的文件 我想做的是使用 for 循环读取一行 多次分割不同的字符并将其全部写入同一个循环中 诀窍是该文件包含以
  • 正则表达式接受 4 条规则中的 3 条

    我似乎无法让正则表达式正确满足以下要求 长度在 8 到 20 之间的字符串 必须包含至少 1 个大写字母字符 至少 1 个小写字母字符 以及至少 1 个数字或至少 1 个特殊字符字符 或两者 假设特殊字符仅限于包括 我最初是这样写的 A Z
  • 为什么我的 if 语句没有按我预期的方式工作?

    我正在尝试实现以下目标 我向我的 SQL 数据库询问使用SELECT FROM subjects 这样做之后我要求使用数组mysqli fetch assoc 在那之前一切都很好 现在的问题是 当我尝试在每个循环中修改 genero 的值
  • 如何在不超过最大值的情况下增加变量?

    我正在为学校开发一个简单的视频游戏程序 我创建了一个方法 如果调用该方法 玩家将获得 15 点生命值 我必须将生命值保持在最大值 100 并且由于我目前的编程能力有限 我正在做这样的事情 public void getHealed if h
  • Excel 2003 中的 IFERROR

    我通过阅读几个线程了解到IFERROR在 Excel 2003 中由IF ISERROR 我尝试从 Excel 2007 复制的代码是 IFERROR A1 我知道必须有一个简单的解决方案将其转换为IF ISERROR 但我没有任何效果 意
  • 当满足动态条件时退出递归函数

    使用来自的函数生成汉明距离 t 内的所有比特序列 https stackoverflow com questions 40813022 generate all sequences of bits within hamming distan
  • 如何使用“*ngIf else”?

    我正在使用 Angular 并且我想使用 ngIf else 自版本 4 起可用 在此示例中 div content here div div other content here div 我怎样才能实现相同的行为ngIf else 角度

随机推荐

  • 如何获取数组包含特定值的子项

    我有一个数据库方案 其本质上是相同的文档 https firebase google com docs database ios structure data fanout An index to track Ada s membershi
  • 在画布上图像的不透明部分周围绘制边框

    我正在使用以下方法在画布上绘制图像drawImage 它是一个被透明像素包围的 PNG 如下所示 如何向画布上该图像的可见部分添加纯色边框 澄清一下 我不想要一个围绕图像边界框的矩形 边界应该围绕草地 我确实考虑过使用阴影 但我并不真正想要
  • 当不带句点的链接方法调用时“不接受参数”

    我有一堂课 class Greeter def hi print hi this def hello print hello this def and this 我想致电new Greeter hi and hello as new Gre
  • npm 发布到 Artifactory 不起作用

    我已经根据此处给出的说明设置了 Artifactory http www jfrog com confluence display RTF Npm Repositories http www jfrog com confluence dis
  • webbrowser iframe 在默认浏览器中打开

    我有 WebBrowser 控件可以在默认浏览器中打开链接 如下所示 private void webBrowser1 Navigating object sender WebBrowserNavigatingEventArgs e if
  • 如何使用 Bazel 构建使用 OpenCV 的项目 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 使用 Bazel 构建使用 OpenCV 库的 C 代码的最佳方法是什么 即 构建规则是什么样的 应该如
  • CSS 使 div 100% 宽度与 body 相关,而不是它的父 div

    I have div style width 500px div style width 100 div div 子 div 占用其父 div 的 100 宽度 有没有一种方法可以强制它采用 100 的 body 宽度而不是父 div 相对
  • ThreadPool 适合这种线程场景吗?

    我有一个场景 如果可能的话 我试图通过在用户实际需要结果之前预获取结果的一些子元素来将其变成响应速度更快的 UI 我不清楚如何最好地处理线程 所以我希望有人可以提供一些建议 Scenario 有一个搜索表单 NET 富客户端 使用户能够为给
  • 创建游程 ID,同时允许游程中存在一定长度的间隙

    我最初发布了一个问题here https stackoverflow com questions 66478148 create a list of vectors from a vector where n consecutive val
  • Protractor - 如何通过自定义(非 HTML)属性定位元素?

    我正在使用 Selenium WebDriver 和 Protractor 在我的 Angular 项目上运行 e2e 测试 假设我有一个像这样的元素 div div 如何找到上面的元素 我尝试过element by css div my
  • 在 PHP 中压缩文件时删除目录结构

    我在 PHP 中压缩文件时遇到了一些问题 我有一个压缩文件数组的函数 这些文件都位于不同的目录中 该函数如下所示 function create zip files array destination overwrite false add
  • 如何使用 pywin32 从 ms 项目中的任务使用情况中提取数据?

    我正在尝试使用 pywin32 Python 库将数据从 MSProject mpp 文件提取到 Excel 文件 我希望我的员工在其中注册他们的工作时间 我可以从任何我想要的字段中提取数据 但任务使用表除外 该表显示每天任务 一个人 X
  • 未捕获的类型错误:Module.cwrap 不是函数

    我需要在浏览器端解码 h264 数据 因为我使用 emscripten 在 Web Assembly 中构建 openh264 库 我已经成功构建它并尝试在 java 脚本中使用它来解码 h264 数据 但我收到以下一行的一个错误 var
  • Sqlite for iOS 是用哪种线程模式编译的?

    这一页http www sqlite org threadsafe html http www sqlite org threadsafe html提到 单线程 多线程 连载 iOS 5中集成的sqlite是用什么模式编译的 好的 所以 s
  • 用于获取 PancakeSwap 上币安智能链代币价格的 API

    我有一个代币的地址 我需要获取它的 BUSD 或 BNB 价格 如果没有其他办法的话 使用付费API是没有问题的 该代币可能不会出现在热门列表中 因此最好直接从 PancakeSwap 获取价格 这是直接从 PancakeSwap 获取的方
  • 隐藏后的CSS无限动画不重置(Chrome)

    这里我有一个 CSS 关键帧动画的例子 你可以在这个演示 http jsfiddle net umbreak q234Lsx8 1 该代码每 1 4 秒就会将 img 缩放到 0 75 然后返回到其原始 1 比例 效果很好 然后我添加一个简
  • 如何使用 CSS 动画更改 CSS 动画中的字体颜色

    我正在努力做到这一点 以便当我打开页面时 test将显示为红色并且testing将显示为白色 当页面打开时 我要保留一个延迟 如果您运行该程序 您将看到 Css hero h1 display block width fit content
  • iOS 蓝牙后台模式

    我希望继续扫描蓝牙设备 并且希望应用程序在后台运行 是否可以 似乎如果我有一个连接的蓝牙设备 并且有数据传输 那么该应用程序就会在后台保持唤醒状态 但是 如果我只是在后台扫描 似乎即使我有Uses Bluetooth LE accessor
  • 在 ext4 上覆盖小文件是原子的吗?

    假设我们有一个文件FILE SIZE字节 并且 FILE SIZE lt min page size physical block size 文件大小永远不会改变 即truncate 或附加write 从未执行过 仅通过使用以下命令完全覆盖
  • 条件语句体内是否有可能存在多个语句?

    我主要是一名 C 因此是一名 OO 命令式 程序员 我觉得很奇怪的是 在条件语句中 每个求值只能有一个语句 例如函数式语言 Scheme 中的 if 语句 例如 let arg1 0 arg2 1 if gt arg1 arg2 arg1