Swift
Rappels Primitives Schema présentes dans les traductions ci-dessous Ensemble_Element() Création d'un ensemble vide Initialiser(ensemble) Initialisation d'une itération d'ensemble Enumeration(ensemble) Expression booléenne de contrôle de l'itération Element(ensemble) Renvoie l'élément 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 Création d'un ensemble
Insérer un élément avant une valeur dans un ensemble séquentiel
func insererParValeurAvant <_Element>(_ ensemble: Ensemble<_Element> ,_ avantElement: _Element ,_ elementAinserer: _Element) -> Ensemble<_Element> { var existe = false let nouvelEnsemble = Ensemble_Element(ensemble) Initialiser(ensemble) while Enumeration(ensemble) && !existe { let element = Element(ensemble) existe = element == avantElement if existe { Ranger_Element(nouvelEnsemble,elementAinserer) } Ranger_Element(nouvelEnsemble,element) } while Enumeration(ensemble) { Ranger_Element(nouvelEnsemble,Element(ensemble)) } return nouvelEnsemble }
Insérer un élément après une valeur dans un ensemble séquentiel
func insererParValeurApres <_Element>(_ ensemble: Ensemble<_Element> ,_ apresElement: _Element ,_ elementAinserer: _Element) -> Ensemble<_Element> { var existe = false let nouvelEnsemble = Ensemble_Element(ensemble) Initialiser(ensemble) while Enumeration(ensemble) && !existe { let element = Element(ensemble) existe = element == apresElement Ranger_Element(nouvelEnsemble,element) } if existe { Ranger_Element(nouvelEnsemble,elementAinserer) while Enumeration(ensemble) { Ranger_Element(nouvelEnsemble,Element(ensemble)) } } return nouvelEnsemble }
Test
func Test_Inserer() {
Afficher("File: Les éléments de nombres ")
let nombres = File(30,9,111,12,115, 13,14,15,111,100)
Lister(nombres)
print("")
var elementAInserer = 999
var apresElement = 111
print("Inserer element \(elementAInserer)
apres element \(apresElement)")
var ensemble = insererParValeurApres(nombres,apresElement,elementAInserer)
Lister(ensemble)
print("")
elementAInserer = 999
apresElement = 100
print("Inserer element \(elementAInserer)
apres element \(apresElement)")
ensemble = insererParValeurApres(nombres,apresElement,elementAInserer)
Lister(ensemble)
print("")
elementAInserer = 999
apresElement = 8
print("Inserer element \(elementAInserer)
apres element \(apresElement)")
ensemble = insererParValeurApres(nombres,apresElement,elementAInserer)
Lister(ensemble)
print("")
elementAInserer = 999
var avantElement = 111
print("Inserer element \(elementAInserer)
avant element \(avantElement)")
ensemble = insererParValeurAvant(nombres,avantElement,elementAInserer)
Lister(ensemble))
print("")
elementAInserer = 999
avantElement = 30
print("Inserer element \(elementAInserer)
avant element \(avantElement)")
ensemble = insererParValeurAvant(nombres,avantElement,elementAInserer)
Lister(ensemble)
}
copyright A rchitectures A pplicatives A vancées A3-Soft