Commit 8918f23e authored by Dimitri Racordon's avatar Dimitri Racordon
Browse files

Add the Swift part of the exam

parent 03d11058
......@@ -29,7 +29,8 @@ En se connectant sur la machine cuilxa.unige.ch par SSH copier le fichier distan
## Swift et débuguage
1. Complétez le code de la fonction `isPalindrome` dans le fichier `code/Palindrome.swift`, laquelle retourne `true` si son argument est un palindrome. Pour rappel, un palindrome est une séquence de caractères qui peut se lire indifférement de gauche à droite ou de droite à gauche.
2. A l'aide d'un debugger, identifiez et corrigez le bug qui s'est glissé dans la fonction `primes` dans le fichier `Numbers.swift`, laquelle est supposée retourner la liste des nombres premiers contenus dans le tableau reçu argument.
## GIT
......
/// Returns the prime numbers in `elements`.
func primes(_ numbers: [Int]) -> [Int] {
var primes: [Int] = []
for n in numbers {
var isPrime = true
for m in 1 ..< n {
if n % m == 0 {
isPrime = false
break
}
}
if isPrime {
primes.append(n)
}
}
return primes
}
let array = Array(2 ..< 50)
let primesInArray = primes(array)
print("\(array) contains the following prime numbers: \(primesInArray)")
/// Returns whether or not the given text is a palindrome.
func isPalindrome(_ text: String) -> Bool {
// Write your code here.
//
// - Hint:
// Check the official documentation on Swift.String to see how to manipulate string
// indices (https://developer.apple.com/documentation/swift/string).
fatalError("not implemented")
}
for string in ["kayak", "koala"] {
let isStringAPalindrome = isPalindrome(string)
print("'\(string)' is \(isStringAPalindrome ? "" : "not ")a palindrome")
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment