Initiation Linux - TP3

Vous travaillerez aujourd'hui dans le répertoire /home/etudiantX/td2/.

Entrées/sorties

Créez un nouveau fichier es.cpp :

#include <stdio.h>

main() {
	int n;
	for (int i=0; i < 10; i++) {
		scanf("%d", &n);
		printf("vous avez entre : %d\n\n\n\n", n);
	}
}

Compiler ce fichier source en précisant le nom de l'exécutable à créer : es. Exécuter le.

Créez un fichier texte entrees contenant :

1
2
3
4
5
6
7
8
9
10
11
12

Affichez le contenu de entrees dans le terminal. Exécuter le programme es en redirigeant les entrées à partir du fichier entrees.

Exécutez maintenant le programme es en redirigeant les sorties vers le fichier sorties. Affichez le contenu du fichier sorties dans le terminal.

Fichier batch

Créez un fichier es.batch contenant les commandes permettant de :

Modifiez les droits d'accés sur ce fichier pour le rendre exécutable. Exécutez-le.

Gestion des processus

Créez un fichier boucle.cpp contenant le code suivant :

#include <stdio.h>

main() {
	char s[255];
	while (true) { // boucle infinie
		scanf("%s", &s);
		printf("vous avez entre : %s\n\n", s);
	}
}

 

Archive

Créez une archive contenant tous les fichiers que vous avez créés depuis le début de ce tp.

Supprimez tous les fichiers que vous avez créés depuis le début de ce tp (excéptée l'archive que vous venez de créer bien sûr !).

Extrayez maintenant tous les fichiers de l'archive.

Algorithmique

Ecrivez un programme (en pascal ou en langage algorithmique) qui calcule la factorielle d'un nombre donné de trois manières différentes : en utilisant une boucle POUR, une boucle TANTQUE puis une boucle REPETER.

Quel est la boucle la plus adaptée pour ce programme ?

Ecrivez un autre programme qui compte le nombre de lettres saisies par l'utilisateur (on s'arretera lorsque l'on rencontrera un point '.'). Vous utiliserez plusieurs boucles différentes.

Quel est la boucle la plus adaptée pour ce programme ?