Remplacer par position

Swift

func remplacerParPosition <_Element>(_ ensemble: Ensemble<_Element>
                                    ,_ element: _Element
                                    ,_ position: Int) 
                                    -> Ensemble<_Element> 
{
   let nouvelEnsemble = Ensemble_Element(ensemble)
   if position < 1 {
      return ensemble
   }
   var index = 1
   var positionTrouvée = false
   Initialiser(ensemble)
   while Enumeration(ensemble) && !positionTrouvée {
      if index == position {
         Ranger_Element(nouvelEnsemble,element)
         positionTrouvée = true
      } else {
         index = index + 1
         Ranger_Element(nouvelEnsemble,Element_Courant(ensemble))
      }
      Element_Suivant(ensemble)
   }
   while Enumeration(ensemble) {
      Ranger_Element(nouvelEnsemble,Element_Courant(ensemble))
      Element_Suivant(ensemble)
   }
   return nouvelEnsemble
}

Test

func Test_Remplacer() {

let ensemble = File(15,3,12,5,13, 2, 11)

   print("")
   element = 45
   var position = 7
   print("Remplacer par élément \(element) à la position \(position)")
   nouvelEnsemble = remplacerParPosition(ensemble,element,position)
   print("")
   Lister(nouvelEnsemble)

   print("")
   element = 45
   position = 0
   print("Remplacer par élément \(element) à la position \(position)")
   nouvelEnsemble = remplacerParPosition(ensemble,element,position)
   print("")
   Lister(nouvelEnsemble)

   print("")
   element = 45
   position = 10
   print("Remplacer par élément \(element) à la position \(position)")
   nouvelEnsemble = remplacerParPosition(ensemble,element,position)
   print("")
   Lister(nouvelEnsemble)
}

copyright A rchitectures A pplicatives A vancées A3-Soft