【问题标题】:How can I know if a number is even or odd using the while operator?使用 while 运算符如何知道数字是偶数还是奇数?
【发布时间】:2022-02-03 01:30:03
【问题描述】:

我怎样才能得到相同的结果,但使用 while 运算符代替?另外,打印哪些是偶数,哪些是奇数

var arrayNumber: Array = [1,2,3,4,5,6,7,8,9,10]

for myInt: Int in arrayNumber {
    if(myInt % 2 == 0) {
        print("\(arrayNumber) is even number")
    } else {
        print("\(myInt) is odd number")
    }
}

【问题讨论】:

  • 你能澄清你的问题吗? while 什么?你想停在第一个奇数吗?打印所有数字的奇数/偶数(在这种情况下,for 更合适)
  • 使用 while 运算符,做与“for in 循环”相同的功能,但使用 while 代替并返回输出为偶数和奇数的输出
  • 这能回答你的问题吗? How to know if a number is odd or even in Swift?
  • 嘿@pkamb,感谢您的帮助,有人已经回答但由于某种原因删除了他的代码,但不幸的是它没有回答我的问题,因为尚未使用while运算符,它需要执行与上面链接中相同的功能,但使用运算符 while 来打印哪些是奇数,哪些是偶数

标签: ios arrays swift xcode integer


【解决方案1】:

最好的办法是在 while 循环中使用迭代器。如果数组中没有更多元素,it.next() 将返回 nil

let arrayNumber = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
var it = arrayNumber.makeIterator()
while let next = it.next() {
    if next % 2 == 0 {
        print("even", next)
    } else {
        print("odd", next)
    }
}

【讨论】:

  • 谢谢 Rob,这是解决问题的好方法,但我需要它来返回奇数而不是 nil 值
  • @YanesSkrabe 你是什么意思你需要返回奇数?你从来没有提到回来。您在上面所做的只是打印。你的意思是你需要打印奇数吗?
  • 是的,是的,打印奇数,有人回答了,但我想作者删除了以下内容: var arrayNumber = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] var index = 0 while index
  • 我敢打赌,你本可以自己拼凑出来的 ;) 无论如何,答案已更新。
  • 感谢您的帮助!
猜你喜欢
  • 1970-01-01
  • 2014-07-26
  • 1970-01-01
  • 2015-02-13
  • 2011-11-12
  • 1970-01-01
  • 2015-05-31
  • 1970-01-01
  • 2015-07-22
相关资源
最近更新 更多