Algorithmes et structures de données
10 kartExercices sur les séries numériques, matrices et gestion de données aéroportuaires.
10 kart
Tekrar et
Aralıklı tekrar, her kartı uzun süreli hafızalamak için en uygun anda gösterir ve gitgide artan aralıklarla revizyonlar.
Feuille de Rappel : Algorithmes et Structures de Données
Ce document récapitule les concepts clés et les exigences pour les exercices d'algorithmique et de structures de données.
Exercice 1 : Somme de Série Numérique
Objectif : Calculer la somme d'une série spécifique basée sur une entrée utilisateur.
- Saisie utilisateur sécurisée : Demander un nombre `n` entre 1 et 9. Rejeter toute autre valeur.
- Série : `s = i + ii + iii + ...` où le `n`-ième terme est composé de `n` répétitions du chiffre 1.
- Formule du terme `k` : Si le terme est 5 (ex: 55555), il s'agit de `5 * (10^k - 1) / 9`.
- Exemple de calcul : Pour `n = 5` et le chiffre souhaité est 1 (implicite des 'i', 'ii', 'iii'...), la question originale fait une erreur en utilisant "5 + 55 + 555..." mais son explication "le n-ième terme contient n répétitions du chiffre 1" indique que c'est "1 + 11 + 111..." mais l'exemple de solution affiche "5 + 55 + 555 + 5555 + 55555". Nous allons assumer que l'exemple numérique est le cas d'usage où le chiffre utilisé est `n` répété `n` fois.
- Calcul du terme général : Un terme `k` répété `k` fois peut être calculé par
(chiffre_de_repétition * (pow(10, k) - 1)) / 9. Dans l'exemple, le chiffre de répétition est `n`. - Affichage : Afficher la somme calculée `s`.
Note : L'exemple "1459 = 9 + 4*10 + 5*100 + 1*1000" est une décomposition décimale standard et peut être utilisé pour comprendre comment construire un nombre à partir de ses chiffres, mais pas directement pour la série "1+11+111" ou "5+55+555".
Exercice 2 : Traitement de Matrice
Objectif : Manipuler une matrice d'entiers avec des contraintes spécifiques.
- Déclaration : Matrice `MAT` de taille `N * M`.
- Contraintes : `N <= 15`, `M <= 20`.
- Opérations :
- Remplir la matrice : Avec uniquement des valeurs strictement positives.
- Déterminer et afficher l'étendue (range) : C'est la différence entre la valeur maximale et la valeur minimale de la matrice.
- Somme des nombres pairs par colonne :
- Calculer la somme des nombres pairs pour chaque colonne.
- Stocker ces sommes dans un tableau `T`.
- Afficher le tableau `T`.
Exercice 3 : Gestion de Parking Avion
Objectif : Développer une application de gestion pour un parking d'avions.
Structure de Données : Avion
Chaque avion est défini par :
- Numéro d'immatriculation :
Chaîne de caractères unique(clé d'identification). - Désignation : Contient
Nom (Chaîne)etSérie (Entier). - Capacité :
Entier. - Nombre de vols mensuels :
Tableau d'entiers(12 mois, de Janvier à Décembre). - Catégorie :
Chaîne("National" ou "International").
Structure de Données : Parking
- Peut contenir un maximum de 30 avions.
- Représentation : Un tableau statique ou dynamique d'objets (ou structures) "Avion".
Questions et Algorithmes Associés
- Structure du parking : Un tableau d'Avions (ex:
Avion parking[30];ou une liste chaînée si la taille est variable et la limite de 30 est une capacité max et non une taille fixe). - Ajout d'avions : Ajouter 7 avions au parking (initialement vide). Implique une fonction d'ajout.
- Afficher les avions nationaux : Parcourir le parking et afficher les avions de
Catégorie = "National". - Suppression d'un avion :
- Basé sur le
Numéro d'immatriculation. - Nécessite la recherche de l'avion puis sa suppression effective (décalage des éléments si tableau statique, ou modification des pointeurs si liste chaînée).
- Basé sur le
- Calcul des vols annuels pour un avion :
- Prendre le numéro d'immatriculation en entrée.
- Sommer les 12 vols mensuels pour cet avion.
- Calcul des vols annuels totaux pour tous les avions :
- Parcourir tous les avions dans le parking.
- Pour chaque avion, sommer ses vols mensuels (comme en Q5).
- Additionner toutes ces sommes individuelles.
Bir quiz başla
Bilgini etkileşimli sorularla test et