Julia
Rappels Primitives Schema présentes dans les traductions ci-dessous Ensemble_Element() Création d'un ensemble vide Initialiser(ensemble) Initialisation d'une iteration d'ensemble Enumeration(ensemble) Expression booléenne de contrôle de l'itération Element(ensemble) Renvoie l'element courant et positionne sur élément suivant Ranger_Element(ensemble,element) Ajoute un élément dans ensemble Lister(ensemble) Liste les élément d'un ensemble File_Elements Création d'un ensemble
Insérer un élément à une position dans un ensemble
function InsererAlaPosition(ensemble,elementAinserer,position) nouvelEnsemble = Ensemble_Element() if position < 1 return ensemble end index = 1 Initialiser(ensemble) while Enumeration(ensemble) && index < position index = index + 1 Ranger_Element(nouvelEnsemble,Element(ensemble)) end if index == position Ranger_Element(nouvelEnsemble,elementAinserer) while Enumeration(ensemble) Ranger_Element(nouvelEnsemble,Element(ensemble)) end end return nouvelEnsemble end
Test
function Test_InsererParPosition() println("File: Les éléments de nombres ") nombres = File_Elements(30,9,111,12,115, 13,14,15,111,100) elementAInserer = 112 position = 3 println("Inserer element ",elementAInserer, " à la position ",position) ensemble = InsererAlaPosition(nombres,elementAInserer,position) elementAInserer = 112 position = 0 println("Inserer element ",elementAInserer, " à la position ",position) ensemble = InsererAlaPosition(nombres,elementAInserer,position) elementAInserer = 114 position = 12 println("Inserer element ",elementAInserer, " à la position ",position) ensemble = InsererAlaPosition(nombres,112,12) end
Swift
Insérer un élément à une position dans un ensemble
func insererParPosition <_Element> (_ ensemble: Ensemble<_Element> ,_ elementAinserer: _Element ,_ position: Int) -> Ensemble<_Element> { var nouvelEnsemble = EnsembleVide(ensemble) if position < 1 { return ensemble } var index = 1 Initialiser(ensemble) while Enumeration(ensemble) && index < position { index = index + 1 let element = Element_Courant(ensemble) Ranger_Element(nouvelEnsemble,element) Element_Suivant(ensemble) } if index == position { Ranger_Element(nouvelEnsemble,elementAinserer) while Enumeration(ensemble) { element = Element_Courant(ensemble) Ranger_Element(nouvelEnsemble,element) Element_Suivant(ensemble) } } return nouvelEnsemble }
copyright A rchitectures A pplicatives A vancées A3-Soft