# Informatique



# C

Le langage C est un langage compilé, inventé en 1972. C'est un langage très bas niveau (juste un niveau au dessus de l'assembleur).

## <span id="bkmrk-"></span><span class="mw-headline" id="bkmrk-ce-qu%27il-ne-faut-pas-0">Ce qu'il ne **FAUT PAS** faire en C</span>

Il faut toujours indenter et commenter votre code, en C comme dans tous les autres langages. Pour votre culture générale, sachez quand même qu'il existe le concours International de Code C Obfusqué (IOCCC : [https://www.ioccc.org/](https://www.ioccc.org/)) qui récompense les programmes les plus illisibles du concours. Cela vous donne une idée de ce qu'il ne **FAUT PAS** faire en tant que futur ingénieur.

## <span id="bkmrk--0"></span><span class="mw-headline" id="bkmrk-r%C3%A9f%C3%A9rences-utiles-0">Références utiles</span>

- [Page wikipedia : C Language](https://en.wikipedia.org/wiki/C_%28programming_language%29)
- Le cours donné en 3ème année MIC : [Moodle](https://moodle.insa-toulouse.fr/enrol/index.php?id=1261)
- Le manuel de la libc : [https://www.gnu.org/software/libc/manual/pdf/libc.pdf](https://www.gnu.org/software/libc/manual/pdf/libc.pdf)

# Python

## <span class="mw-headline" id="bkmrk-lecture-et-%C3%A9criture--0">Lecture et écriture de fichiers en python</span>

### <span class="mw-headline" id="bkmrk-lecture-de-fichiers-0">Lecture de fichiers</span>

Pour lire un fichier, il faut tout d'abord un descripteur de fichiers. Le descripteur de fichiers pour la lecture :

```Python
fd = open(filename, "r")

```

Les options de cette ligne sont décrites plus en détails un peu après.

Une petite fonction utile permettant de lire un fichier au format texte ou binaire :

```Python
def readfile(filename, binary=False):
    if binary : b_opt="b"
    else:       b_opt=""
      f = open(filename, "r"+b_opt)
      data = f.readlines()
      f.close()
      return data

```

### <span id="bkmrk-"></span><span class="mw-headline" id="bkmrk-%C3%89criture-de-fichiers-0">Écriture de fichiers</span>

Le descripteur de fichiers pour l'écriture :

```Python
fd = open(filename, "w")

```

Une petite fonction utile permettant d'écrire un fichier au format texte ou binaire :

```Python
def writefile(filename, data, binary=False):
  	if binary : b_opt="b"
    else:       b_opt=""
      f = open(filename, "w"+b_opt)
      for e in data:
        f.write(e)
        f.close()
        return data

```

# Faire un rapport INSA avec LaTeX

### Pourquoi utiliser LaTeX pour ton rapport ?

- Génération **automatique** de la table des matières
- Mise en page automatique et **uniforme**
- Produit des rapports INSA qualitatifs
- Beaucoup de ressources disponibles **en ligne** pour tous les besoins
- **Outil de référence** de la publication
- Insertion de dessins, **formules mathématiques** propres, tableaux...
- Open-Source

### Ça ressemble à quoi ?

Jette un coup d’œil à cet [exemple de rapport](https://github.com/ClubInfoInsaT/latex-templates-insa-toulouse/blob/master/Templates/2A/rapport-stage-1A/template-rapport-stage-1A.pdf) avec la nouvelle charte graphique (2023).

[![image-1680180663789.png](https://wiki.etud.insa-toulouse.fr/uploads/images/gallery/2023-03/scaled-1680-/image-1680180663789.png)](https://wiki.etud.insa-toulouse.fr/uploads/images/gallery/2023-03/image-1680180663789.png)

### Comment faire ?

- <span class="mw-headline">Se renseigner sur comment utiliser LaTeX (au besoin)</span>
    - <span class="mw-headline">[Cette page](https://www.learnlatex.org/fr/lesson-03) présente les bases (français)</span>
    - <span class="mw-headline">[Celle-ci](https://fr.overleaf.com/learn) présente l'utilisation d'Overleaf (anglais)</span>
- <span class="mw-headline">Se connecter ou créer un compte sur [Overleaf](https://www.overleaf.com/).</span>
- Ouvrir la [template](https://www.overleaf.com/read/pfwwsrkpcwxp)
- Cliquer sur `Menu` en haut à gauche puis `Copy Project` (dans actions)

Tu peux maintenant parcourir les fichiers `.tex` , si tu as des questions dessus n'hésite pas à [contacter le club info](https://discord.com/invite/9G8cWyK) !

Le contenu principal se trouve dans le fichier `content.tex` . Tu trouveras plus de détails sur l'organisation des fichiers [ici](https://github.com/ClubInfoInsaT/latex-templates-insa-toulouse/tree/master/Templates/2A/rapport-stage-1A).

# Customiser automatiquement son fond d'écran sur les sessions INSA



# Sauvegarder ses mots de passe dans KeepassXC

[KeepassXC](https://keepassxc.org/docs/KeePassXC_GettingStarted.html "KeepassXC") est un gestionnaire de mots de passe open-source. Il permet de générer des mots de passe et les conserver de manière sécurisée. On utilise un mot de passe pour déverrouiller un fichier crypté contenant les mots de passe.

L'installation peut se faire facilement depuis le [site officiel](https://keepassxc.org/download/ "Page de téléchargement KeepassXC").

Une fois l'application ouverte, on peut créer une nouvelle base de données (qui contiendra les mots de passe) en cliquant sur le bouton correspondant. Ensuite, on peut créer une nouvelle entrée.

[![image-1672718241700.png](https://wiki.etud.insa-toulouse.fr/uploads/images/gallery/2023-01/scaled-1680-/image-1672718241700.png)](https://wiki.etud.insa-toulouse.fr/uploads/images/gallery/2023-01/image-1672718241700.png)

Le générateur de mot de passe permet de générer des mots de passe sécurisé sans se casser la tête.

[![image-1672718343077.png](https://wiki.etud.insa-toulouse.fr/uploads/images/gallery/2023-01/scaled-1680-/image-1672718343077.png)](https://wiki.etud.insa-toulouse.fr/uploads/images/gallery/2023-01/image-1672718343077.png)

Informations utiles :

- [Documentation](https://keepassxc.org/docs/KeePassXC_GettingStarted.html "Documentation de KeepassXC") détaillée et imagée
- Il est recommandé d'utiliser l'[extension KeepassXC](https://keepassxc.org/docs/KeePassXC_GettingStarted.html#_setup_browser_integration "Documentation d'installation de l'extension navigateur de KeepassXC") dans le navigateur pour remplir directement les formulaires.
- Le fichier peut être [synchronisé dans le cloud](https://keepassxc.org/docs/#faq-cloudsync "KeepassXC FAQ sur la synchronisation dans le cloud"). Notons que le fichier est crypté et que sans le mot de passe, personne n'a accès aux mots de passe.
- Il est important de conserver attentivement le mot de passe du fichier. Sans celui-ci, les mots de passe sont irrécupérables.
- De nombreux [raccourcis clavier](https://keepassxc.org/docs/KeePassXC_UserGuide.html#_keyboard_shortcuts "Documentation KeepassXC sur les raccourcis clavier") sont disponibles.