Files
CITISE1/IUT/Info1/TD/Exercices/10.5_tableau_boucle/10.5.md
2026-04-08 20:11:20 +02:00

4.8 KiB
Raw Blame History

{Fonction 1 R : copier les élements dun tableau dentiers dans un autre. E : tab_in un tableau d'entiers, taille_pratique_in un entier, taille_réele_out E/S : tab_out un tableau d'entiers S : Vide } copy : une fonction( tab_in : un tableau d'entiers, taille_pratique_in : un entier, tab_out : un tableau d'entiers, taille_réele_out : un entier ) -> vide Lexique : i : un entier Algorithme : Début Si taille_pratique_in <= taille_réele_out Alors i <- 0 Tant que i < taille_pratique_in Faire tab_out[i] <- tab_in[i] i <- i + 1 Fin

{Fonction 2 R : afficher les élements dun tableau dentiers sous la forme : {e1,e2,e3,...,en} E : tab un tableau d'entiers, taille_pratique un entier S : Vide } afficher_tableau : une fonction( tab : un tableau d'entiers, taille_pratique : un entier ) -> vide Lexique : i : un entier Algorithme : Début i <- 0 Tant que i < taille Faire Ecrire(tab[i], ",") {On aura une virgule à la fin, mais l'enlever complexifierai inutilemment l'algorithme} i <- i + 1 Fin

{Fonction 3 R : tester si deux tableaux sont identiques E : tab1 un tableau d'entiers, taille_pratique_1 un entier, tab2 un tableau d'entiers, taille_pratique_2 un entier S : vrai si les 2 tableau sont identiques } sont_identiques : une fonction( tab1 : un tableau d'entiers, tab2 : un tableau d'entiers, taille_pratique_1 : un entier, taille_pratique_2 : un entier ) -> un booléen Lexique : i : un entier Algorithme : Début Si taille_pratique_1 != taille_pratique_2 Alors Retourner(Faux) i <- 0 Tant que i < taille_pratique_1 Faire Si tab1[i] != tab2[i]: Alors Retourner(Faux) Retourner(Vrai) Fin

{Fonction 4 R : calculer la moyenne des élements dun tableau E : tab un tableau d'entiers, taille_pratique un entier S : un réel : la moyenne de tab } moyenne_tableau : une fonction( tab : un tableau de réels, taille_pratique : un entier ) -> un réel Lexique : i : un entier somme : un réel Algorithme : Début i <- 0 somme <- 0 Tant Que i < taille_pratique Faire somme <- somme + tab[i] Retourner(somme/taille_pratique) Fin

{Fonction 5 R : remplacer les valeurs dun tableau par sa somme cumulée E : tab le tableau d'entiers, taille_pratique un entier E/S : tab le tableau de réels S : vide } somme_cumulee : une fonction( tab : un tableau d'entiers taille_pratique : un entier ) -> vide Lexique : i : un entier j : un entier somme : un réel Algorithme : Début i <- 0 Tant Que i < taille_pratique j <- 0 somme <- 0 Tant Que j <= i Faire somme <- somme + tab[j] j <- j + 1 tab[i] <- somme

        i <- i + 1
Fin

Lexique : Saisie_entiers : une fonction(tab: un tableau d'entiers, taille_réele : un entier) -> un entier copy : une fonction(tab_in : un tableau d'entiers,taille_pratique_in : un entier,tab_out : un tableau d'entiers, taille_réele_out : un entier) -> vide afficher_tableau : une fonction(tab : un tableau d'entiers, taille_pratique : un entier ) -> vide sont_identiques : une fonction(tab1 : un tableau d'entiers, tab2 : un tableau d'entiers, taille_pratique_1 : un entier, taille_pratique_2 : un entier) -> un booléen moyenne_tableau : une fonction(tab : un tableau d'entiers, taille_pratique : un entier) -> un réel somme_cumulee : une fonction(tab : un tableau d'entiers, taille_pratique : un entier) -> vide

# Fonctions 1, 2, 3, 4 et 5
tab1 : un tableau de 1000 entiers
taille_réele_1 : la constante entière := 1000
taille_pratique_1 : un entier

tab1_copie : un tableau de 1000 entiers
taille_réele_copie_1 : la constante entière := 1000

tab2 : un tableau de 1000 entiers
taille_réele_2 : la constante entière := 1000
taille_pratique_2 : un entier

Algorithme : Début taille_pratique_1 <- Saisie_entiers(tab1) taille_pratique_copie_1 <- taille_pratique_1 copy(tab1, taille_pratique_1, tab1_copie, taille_réele_copie_1) afficher_tableau(tab1_copie, taille_pratique_copie_1)

    taille_pratique_2 <- Saisie_entiers(tab2)
    Ecrire(
        "tab1 et tab2 sont identiques : ",
        sont_identiques(tab1, tab2, taille_pratique_1, taille_pratique_2)
        )

    Ecrire("La moyenne de tab1 est : ", moyenne_tableau(tab1, taille_pratique_1))

    somme_cumulee(tab1_copie, taille_pratique_copie_1)
    afficher_tableau(tab1_copie, taille_pratique_copie_1)
Fin