Commit 1017a120 authored by Guillaume.Chanel's avatar Guillaume.Chanel
Browse files

Merge branch 'master' into 2019-changes

parents aebbdde3 34fb54df
......@@ -11,18 +11,18 @@
1. Créer une nouvelle branche portant votre nom.
2. Pour le reste de l'examen vous travaillerez sur cette nouvelle branche uniquement, sauf pour les toutes dernières questions (c.f. question *merge*).
3. Taper la commande *./script.sh* dans la racine du dépôt pour executer le script. Ce script a créé un fichier, ajouter ce fichier au dépôt.
3. Taper la commande `./script.sh` dans la racine du dépôt pour executer le script. Ce script a créé un fichier, ajouter ce fichier au dépôt.
## Shell
1. Supprimer **TOUS** les fichiers se terminant par *.txt dans le dossier *txt*. Ajouter les changements au dépôt.
2. Supprimer le fichier *toerease* du dossier *damn*. Ajouter les changements au dépôt.
3. Le fichier *data.csv* contient des données au fomat colonne. Visualiser les 5 premières lignes de ce fichier et les stocker dans un fichier nommé *data-excerpt.csv*. Ajouter ce fichier au dépôt.
4. En combinant les commandes vues en cours ainsi que la commande *cut* (c.f. man), trouver une commande (i.e. une ligne) permettant d'obtenir *uniquement* le poucentage d'utilisation de la lettre "X". Ecrire cette commande dans un fichier nommé *extract-line.sh* et ajouter ce fichier à la racine du dépôt.
1. Supprimer **TOUS** les fichiers se terminant par \*.txt dans le dossier `txt`. Ajouter les changements au dépôt.
2. Supprimer le fichier `toerease` du dossier `damn`. Ajouter les changements au dépôt.
3. Le fichier `data.csv` contient des données au fomat colonne. Visualiser les 5 premières lignes de ce fichier et les stocker dans un fichier nommé `data-excerpt.csv`. Ajouter ce fichier au dépôt.
4. En combinant les commandes vues en cours ainsi que la commande `cut` (c.f. man), trouver une commande (i.e. une ligne) permettant d'obtenir *uniquement* le poucentage d'utilisation de la lettre "X". Ecrire cette commande dans un fichier nommé `extract-line.sh` et ajouter ce fichier à la racine du dépôt.
## SSH
En se connectant sur la machine [cuilxa.unige.ch](cuilxa.unige.ch) par SSH copier le fichier distant /usr/local/chanel/toget à la racine de votre dépôt local. Ajouter ce fichier au dépôt.
En se connectant sur la machine [cuilxa.unige.ch](cuilxa.unige.ch) par SSH copier le fichier distant `/usr/local/chanel/toget` à la racine de votre dépôt local. Ajouter ce fichier au dépôt.
## Fichiers
......@@ -30,7 +30,8 @@ En utilisant un éditeur hexadecimal, stocker dans un fichier nommé **data.bin*
## 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 (partie 2)
......
/// 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