Algorithmes et structures de données

10 kart

Exercices 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.
Soru
Quel est le but d'un algorithme pour la série 1, 11, 111...?
Yanıt
Calculer la somme des n premiers termes de la série où chaque terme est une répétition du chiffre 1.
Soru
Quelle est la limite pour le nombre n dans l'algorithme de la série?
Yanıt
Le nombre n doit être un entier entre 1 et 9. Les autres valeurs sont refusées par le programme.
Soru
Que représente "n répétitions du digit 1" dans la série?
Yanıt
Si n=3, le terme est 111. Si n=5, le terme est 11111, et ainsi de suite pour chaque terme.
Soru
Quelle est la taille maximale d'une matrice MAT?
Yanıt
La matrice MAT a un maximum de N lignes et M colonnes, avec N <= 15 et M <= 20.
Soru
Comment la matrice MAT doit-elle être remplie?
Yanıt
La matrice MAT doit être remplie uniquement avec des valeurs strictement positives.
Soru
Que doit-on calculer pour chaque colonne de la matrice MAT?
Yanıt
Il faut calculer la somme des nombres pairs pour chaque colonne et stocker les résultats dans un tableau T.
Soru
Quelles sont les informations clés pour un avion?
Yanıt
Un avion est défini par son numéro d'immatriculation, sa désignation (nom et série), sa capacité et sa catégorie.
Soru
Quelle information peut être utilisée pour identifier un avion de manière unique?
Yanıt
Le numéro d'immatriculation est une chaîne de caractères unique qui identifie chaque avion.
Soru
Comment la structure de données du parking des avions est-elle caractérisée?
Yanıt
Le parking peut contenir un maximum de 30 avions, nécessitant une structure capable de gérer cet inventaire.
Soru
Quelle est la capacité maximale d'avions dans le parking?
Yanıt
Le parking est conçu pour accueillir un maximum de 30 avions à la fois.

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 :
    1. Remplir la matrice : Avec uniquement des valeurs strictement positives.
    2. Déterminer et afficher l'étendue (range) : C'est la différence entre la valeur maximale et la valeur minimale de la matrice.
    3. 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) et Sé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

  1. 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).
  2. Ajout d'avions : Ajouter 7 avions au parking (initialement vide). Implique une fonction d'ajout.
  3. Afficher les avions nationaux : Parcourir le parking et afficher les avions de Catégorie = "National".
  4. 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).
  5. Calcul des vols annuels pour un avion :
    • Prendre le numéro d'immatriculation en entrée.
    • Sommer les 12 vols mensuels pour cet avion.
  6. 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