README.md 3.04 KB
Newer Older
Guillaume.Chanel's avatar
Guillaume.Chanel committed
1
# Examen outils informatiques / Formation de base en informatique
Guillaume.Chanel's avatar
Guillaume.Chanel committed
2

Guillaume.Chanel's avatar
Guillaume.Chanel committed
3
**Note**: lorsque la mention "ajouter ce fichier au dépôt" ou "ajouter les chagements au dépôt" apparait il s'agit de créer un commit contenant le fichier ou les modifications apportées. Le commit devra porter comme nom "*SECT*_Q*X*" pour la question *X* de la section *SECT* (par exemple GIT_Q2). Si une question n'a pas de numéro simplement indiquer la section (e.g. SSH).
Guillaume.Chanel's avatar
Guillaume.Chanel committed
4
5
6
7
8
9
10

## GIT

1. *Forker* ce dépôt pour obtenir votre propre version sur gitlab.
2. *Cloner* votre version du dépôt (attention à bien utiliser la version SSH et PAS https).
3. Créer une nouvelle branche portant votre nom.
4. Pour le reste de l'examen vous travaillerez sur cette nouvelle branche uniquement, sauf pour les toutes dernières questions (c.f. question *merge*).
Guillaume.Chanel's avatar
Guillaume.Chanel committed
11
5. Executer le script nommé `script.sh`. Ce script a créé un fichier, ajouter ce fichier au dépôt.
Guillaume.Chanel's avatar
Guillaume.Chanel committed
12
13
14

## Shell / Bash

Guillaume.Chanel's avatar
Guillaume.Chanel committed
15
16
17
18
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.
Guillaume.Chanel's avatar
Guillaume.Chanel committed
19
20
21

## SSH

Guillaume.Chanel's avatar
Guillaume.Chanel committed
22
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.
Guillaume.Chanel's avatar
Guillaume.Chanel committed
23
24
25

## Fichiers

Guillaume.Chanel's avatar
Guillaume.Chanel committed
26
1. Proposer un algorithme (syntaxe libre) permettant d'identifier si un fichier est au format UTF8. Ecrire cet algorithme dans un fichier nommé `isUTF8.alg`. L'ajouter à la racine du dépôt.
Guillaume.Chanel's avatar
Guillaume.Chanel committed
27

Guillaume.Chanel's avatar
Guillaume.Chanel committed
28
2. En utilisant un éditeur hexadecimal, stocker dans un fichier nommé `data.bin` la valeur décimale 256 en *little-endian* sur deux octets. Ajouter ce fichier à la racine du dépôt.
Guillaume.Chanel's avatar
Guillaume.Chanel committed
29
30
31

## Swift et débuguage

32
33
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.
Guillaume.Chanel's avatar
Guillaume.Chanel committed
34
35
36
37
38
39

## GIT

1. Effectuer un *merge* de la branche portant votre nom vers la branche master.
2. Monter le contenu local de votre dépôt vers votre *remote*.
3. Effectuer un *pull request* sur le dépôt originel qui aura pour titre *nom_prenom* où vous indiquerez votre nom et votre prénom.