Ondanks het feit dat schapen en geiten sterk op elkaar lijken en met elkaar kunnen gekruist worden, behoren ze tot verschillende geslachten binnen de subfamilie van de Caprinae11 van de familie Bovidae22. Geiten behoren tot het geslacht Capra33 en bezitten 60 chromosomen, terwijl schapen tot het geslacht Ovis44 behoren en maar 54 chromosomen hebben. Door dit verschil in chromosomen zal een paring tussen een schaap en een geit in de meeste gevallen tot een doodgeboren nageslacht leiden. Praktijkvoorbeelden suggereren echter dat een nakomeling levensvatbaar kan zijn, hoewel het zonder DNA-onderzoek niet uit te sluiten is of het een chimaera betreft.
Het jong van een vrouwtjesschaap (ooi) en een geitenbok noemt men een gaap. Het jong van een geitenvrouwtje (sik) en een mannetjesschaap (ram) noemt men scheit. Beide combinaties leken onvruchtbaar, maar op 29 december 2012 werden in Nederland twee lammetjes geboren uit een bevruchting door een gaap. Analoog noemt men de kruising van een mannetjesleeuw (Panthera leo) met een tijgerin (Panthera tigris) een lijger. Een lijger heeft dus ouders van verschillende soorten uit hetzelfde genus.
In deze opgave schrijven we twee functies die helpen om namen te verzinnen voor het nageslacht na kruising van twee soorten. Gevraagd wordt:
Schrijf een functie splitsing waaraan een woord moet doorgegeven worden dat enkel bestaat uit letters (zowel hoofdletters als kleine letters zijn toegelaten). De functie moet het gegeven woord opsplitsen in een prefix en een suffix, waarbij de prefix bestaat uit alle medeklinkers vooraan het woord. Als medeklinkers beschouwen we de letters die verschillend zijn van a, e, i, o en u. De functie moet een tuple teruggeven dat de prefix en de suffix van het woord bevat, met behoud van hoofdletters en kleine letters.
Voorbeelden>>> splitsing('schaap')
('sch', 'aap')
>>> splitsing('geit')
('g', 'eit')
Schrijf een functie kruising waaraan twee woorden moeten doorgegeven worden die enkel bestaan uit letters (zowel hoofdletters als kleine letters zijn toegelaten). De functie moet een tuple van twee woorden teruggeven, waarvan het eerste gevormd wordt door de samenstelling van de prefix van het eerste gegeven woord en de suffix van het tweede gegeven woord, en het tweede gevormd wordt door de prefix van het tweede gegeven woord en de suffix van het eerste gegeven woord. De gegeven woorden moet hierbij opgesplist worden in een prefix en een suffix met behulp van de functie splitsing.
Voorbeelden>>> kruising('schaap', 'geit')
('scheit', 'gaap')
>>> kruising('leeuw', 'tijger')
('lijger', 'teeuw')
>>> kruising('hond', 'kat')
('hat', 'kond')
def splitsing(woord:str) -> tuple def kruising(woord1: str, woord2:str) -> tuple
while
lus met een "teller" die de letters van het woord overloopt tot je een klinker
vindt.
while
een extra voorwaarde toe:
teller < len(woord)
splitsing
gebruiken voor de functie kruising
?Mine OM, Kedikilwe K, Ndebele RT, Nsoso SJ (2000). Sheep-goat hybrid born under natural conditions. Small ruminant research: the journal of the International Goat Association 37(1-2) 141-145. 56
Stewart-Scott IA, Pearce PD, Dewes HF, Thompson JW (1990). A case of a sheep-goat hybrid in New Zealand. New Zealand veterinary journal 38(1), 7-9. 67
Tucker EM, Denis B, Kilgour L (1989). Blood genetic marker studies of a sheep-goat hybrid and its back-cross offspring. Animal genetics 20(2), 179-186. 78