英文:
how do I make a func that will make all vowel letters lowercase, all consonants uppercase, and write numbers in letters?
问题
我是新手学习Swift,正在研究函数。我有一个任务,如标题中所示,但我无法想象如何完成它。我需要创建一个函数,将所有元音字母转换为小写,所有辅音字母转换为大写,并将数字写成字母。
我期望它看起来像这样:
- 原始: "hello, I have been studying swift for 1 month"
- 结果: "hEllO, I hAvE bEEn stUdUIng swIft fOr OnE mOnth"
该函数应该接受一个字符串并返回一个字符串。
我尝试使用元组来实现,我有一个用于每个条件的数组元组,例如:
var lowercase: [Character] = ["a", "e", "i", "o", "u", "y"]
var uppercase: [Character] = ["A", "E", "I", "O", "U", "Y"]
还有一个将数字转换为单词的字典:
let nums = [1:"one", 2:"two", 3:"three", 4:"fourth", 5:"five"]
但我仍然无法使其工作,不知道如何在函数内更改数组的元素。
英文:
I'm new to swift and studying functions rn. I have a task that's given in the title, and I can't really imagine how to do it. I need to make a func that turn all the vowel letters into lowercase, all consonants into uppercase and write numbers in letters
what I expect it to look like:
- original: "hello, I have been studying swift for 1 month"
- the result: "hEllO, I hAvE bEEn stUdUIng swIft fOr OnE mOnth"
the func should accept a string and return a string
I tried doing it with tuples, I had one tuple of arrays for each condition, for example:
var lowercase: [Character] = ["a", "e", "i", "o", "e", "y"]
uppercase: [Character] = ["A", "E", "I", "O", "E", "Y"]
and also a dictionary to turn numbers into words:
let nums = [1:"one", 2:"two", 3:"three", 4:"fourth", 5:"five"]
but I still can't make it work, don't know how to change arrays' elements inside the func
答案1
得分: -2
只翻译代码部分:
func transformString(_ input: String) -> String {
let vowels = "aeiouAEIOU"
var newString = ""
for char in input {
if vowels.contains(char) {
newString.append(char.lowercased())
} else {
newString.append(char.uppercased())
}
}
return newString
}
print(transformString("hello, I have been studying swift for 1 month"))
英文:
There may be many ways to achive the desired result.
func transformString(_ input: String) -> String {
let vowels = "aeiouAEIOU"
var newString = ""
for char in input {
if vowels.contains(char) {
newString.append(char.lowercased())
} else {
newString.append(char.uppercased())
}
}
return newString
}
output
print(transformString("hello, I have been studying swift for 1 month"))
(in ur question u says u want to convert vowels to lowercase and others to uppercase but in expected result it is in vice versa. So adjust the answer according to ur scenario)
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论