mission2b.adb

Pour télécharger, clic-droit sur ce lien : mission2b.adb
with GAda.Text_IO ;

procedure Mission2b is


   --
   -- Mission 2, partie 1 : fonction Delta_Cap
   --
   -- Cette fonction Delta_Cap est incorrecte.
   -- À vous de corriger son algorithme.
   --
   function Delta_Cap(Cap_Actuel : Float ; Cap_Voulu : Float) return Float is
      Ecart_Angle : Float ;
   begin
      Ecart_Angle := Cap_Voulu - Cap_Actuel ;

      if Ecart_Angle < 0.0 then
         Ecart_Angle := Ecart_Angle + 180.0 ;
      end if ;

      return Ecart_Angle ;
   end Delta_Cap ;

   
   --
   -- Mission 2, partie 1 : procédure de test de Delta_Cap
   -- 
   -- Cette procédure est incomplète, à vous de la rendre utile.
   --
   procedure Tester_Delta_Cap(CapA : Float ; CapV : Float) is
   begin
      GAda.Text_IO.Put_Line (Aff => "Le cap actuel vaut " & Float'Image(CapA) ) ;
   end Tester_Delta_Cap ;
 
   --
   -- Mission 2, partie 2 : fonction Caps_Egaux
   --
   
   
   --
   -- Mission 2, partie 2 : procédure de test de Caps_Egaux
   --
   
   --
   -- Mission 2, parties 1 et 2 : réalisation de plusieurs tests
   --
   procedure Tests_Unitaires is
   begin
      Tester_Delta_Cap (CapA => 0.0,   CapV => 45.0) ;
      Tester_Delta_Cap (CapA => 45.0,  CapV => 0.0) ;
      Tester_Delta_Cap (CapA => 350.0, CapV => 10.0) ;
      Tester_Delta_Cap (CapA => 10.0,  CapV => 350.0) ;
      Tester_Delta_Cap (CapA => 30.0,  CapV => 285.0) ;
      
      -- Ajouter vos propres tests unitaires
   end Tests_Unitaires ;
   

   --
   -- Mission 2, partie 3 : procédure Orienter_au_sol
   --
   
   
   --
   -- Mission 2, partie 3 : procédure Tester_Cap
   --
   
   
   --
   -- Mission 2, partie 4 : procédure Orienter_en_vol
   --
   
   
   --
   -- Mission 2, partie 4 : procédure Realiser_Vol_Demo
   --


begin
   
   -- Effectuer tous les tests unitaires de Delta_Cap et Caps_Egaux
   Tests_Unitaires ;

end Mission2b ;