You need to enable JavaScript to run this app. Scheme Racket get-vowels代码如何同步输出计数与提取的元音字符串
优惠活动
大模型
产品
解决方案
定价
更多

Scheme Racket get-vowels代码如何同步输出计数与提取的元音字符串

核心实现逻辑

现有已可正常运行的代码已经具备全部所需计算能力,无需重构底层逻辑:

  • 自定义通用filter在遍历输入字符串的过程中,已经将所有满足vowel?判断的元音字符完整收集为列表
  • 原count-vowels函数仅提取了该列表的长度作为计数结果,收集到的字符列表本身可直接利用,不需要重复编写遍历匹配流程
  • 原有基于"aeiouyæøå"构建的元音判断逻辑可以完全保留,改造不会影响原有功能的正确性
改造方案
  1. 将过滤得到的元音字符列表存为局部变量,单次遍历即可完成全部计算,避免冗余开销
  2. 同时返回两个结果:元音字符列表的长度(即元音总数)、将列表转回字符串得到的匹配元音串
  3. 按照两行格式依次输出两个结果
可直接运行的参考代码
; 保留原有已验证可正常运行的定义:元音集、vowel?谓词、自定义filter,不做任何修改
(define (count-and-extract-vowels input)
  (define matched-list (filter vowel? (string->list input)))
  ; 同时返回计数与匹配到的元音字符串
  (values 
   (length matched-list)
   (list->string matched-list)))

; 测试调用
(let-values ([(count vowel-str) (count-and-extract-vowels "foobarbaz")])
  (displayln count)
  (displayln vowel-str))
实际运行输出
4
ooaa

内容的提问来源于stack exchange,提问作者Bora Nurgören

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.26 15:54:03