Sommige beroepen vereisen — of geven in ieder geval expliciete voordelen aan — grote mensen, waaronder beroepen met handenarbeid, ordehandhaving, de meeste professionele sporten, steward en modellenwerk. Buiten deze uitzonderingen lijkt de grootte van een man geen invloed te hebben op de manier waarop hij zijn job kan uitoefenenen. Toch hebben studies aangetoond dat kortere mannen minder betaald krijgen dan langere mannen, met verschillen die vergelijkbaar zijn in omvang als de loonkloof op basis van ras of geslacht. Zo zijn Fortune 500 CEOs gemiddeld 6 voet groot — 3 inches groter dan de gemiddelde Amerikaanse man. Van de 43 Amerikaanse presidenten waren er slechts vijf meer dan een inch kleiner dan het Amerikaanse gemiddelde.

Opgave

Het tekstbestand elections.txt1 bevat een vergelijking tussen de grootte van de winnende presidentskandidaat en de verliezende kandidaat voor elke Amerikaanse presidentsverkiezing sinds 1789. De hoofding van het bestand bestaat uit enkele commentaarregels die beginnen met een hekje (#). Alle andere regels bevatten de volgende informatievelden over een presidentsverkiezing: $$i$$) verkiezingsjaar, $$ii$$) naam winnende kandidaat, $$iii$$) grootte winnende kandidaat (in inch), $$iv$$) grootte winnende kandidaat (in cm), $$v$$) naam verliezende kandidaat, $$vi$$) grootte verliezende kandidaat (in inch), $$vii$$) grootte verliezende kandidaat (in cm), $$viii$$) absolute waarde van verschil in grootte (in inch) en $$ix$$) absolute waarde van verschil in grootte (in cm). De informatievelden worden telkens van elkaar gescheiden door één enkele tab. Je mag ervan uitgaan dat de informatievelden zelf geen tabs of dubbelpunten bevatten.

Gevraagd wordt om — gebruikmakend van de teksteditors vi of vim — een reeks commando's op te stellen die achtereenvolgens de volgende opdrachten uitvoeren. Probeer voor elke opdracht zo weinig mogelijk commando's te gebruiken en zorg er voor dat elk van deze commando's uit zo weinig mogelijk tekens bestaat. De commando's mogen geen programmeerbare filters (bv. awk) gebruiken. Alle opdrachten moeten na elkaar uitgevoerd worden. De opdrachten mogen de eerste regel (hoofding) niet wijzigen, tenzij dit expliciet anders vermeld staat. Ter controle kan je gebruikmaken van de meegeleverde bestanden elections.i.txt, die telkens de inhoud van het bestand bevatten nadat de $$i$$-de opdracht werd uitgevoerd.

  1. Vervang alle tabs door puntkomma's, behalve tussen twee URLs van websites. Deze vervanging moet ook op de eerste regel doorgevoerd worden. Zo moet

    # data: grootte van de Amerikaanse presidenten en hun tegenkandidaten bij de verkiezingen
    # bron: wikipedia
    2012	Barack Obama	6 ft 1 in	185 cm	Mitt Romney [40]	6 ft 1 ½ in ...
    2008	Barack Obama	6 ft 1 in	185 cm	John McCain [41]	5 ft 9 in ...
    2004 George W. Bush 5 ft 11 ½ in	182 cm	John Kerry [19]	6 ft 4 in	193...
    2000 George W. Bush 5 ft 11 ½ in	182 cm	Al Gore [12][42]	6 ft 1 in ...
    ...
    1792	George Washington	6 ft 2 in	188 cm
    1789	George Washington	6 ft 2 in	188 cm
            

    bijvoorbeeld omgezet worden naar (elections.1.txt2)

    # data: grootte van de Amerikaanse presidenten en hun tegenkandidaten bij de verkiezingen
    # bron: wikipedia
    2012:Barack Obama:6 ft 1 in:185 cm:Mitt Romney:6 ft 1 ½ in:187 cm:½ in:2 cm
    2008:Barack Obama:6 ft 1 in:185 cm:John McCain:5 ft 9 in:175 cm:4 in:10 cm
    2004:George W. Bush:5 ft 11 ½ in:182 cm:John Kerry:6 ft 4 in:193 cm:4½ in:11 cm
    2000:George W. Bush:5 ft 11 ½ in:182 cm:Al Gore:6 ft 1 in:185 cm:1½ in:3 cm
    ...
    1792:George Washington:6 ft 2 in:188 cm:::::
    1789:George Washington:6 ft 2 in:188 cm:::::
            
  2. Verwijder alle regels met lege informatievelden (informatievelden met de lege string als inhoud). Hou er ook rekening mee dat het eerste of het laatste informatieveld leeg zouden kunnen zijn. Toegepast op het vorige voorbeeld wordt dit (elections.2.txt3)

    # data: grootte van de Amerikaanse presidenten en hun tegenkandidaten bij de verkiezingen
    # bron: wikipedia
    2012:Barack Obama:6 ft 1 in:185 cm:Mitt Romney:6 ft 1 ½ in:187 cm:½ in:2 cm
    2008:Barack Obama:6 ft 1 in:185 cm:John McCain:5 ft 9 in:175 cm:4 in:10 cm
    2004:George W. Bush:5 ft 11 ½ in:182 cm:John Kerry:6 ft 4 in:193 cm:4½ in:11 cm
    2000:George W. Bush:5 ft 11 ½ in:182 cm:Al Gore:6 ft 1 in:185 cm:1½ in:3 cm
    ...
    1800:Thomas Jefferson:6 ft 2 ½ in:189 cm:John Adams:5 ft 7 in:170 cm:7½ in:19 cm
    1796:John Adams:5 ft 7 in:170 cm:Thomas Jefferson:6 ft 2 ½ in:189 cm:7½ in:19 cm
            
  3. Verwijder de drie velden met lengtes uitgedrukt in inch, en verwijder de tekst " cm" uit de drie velden met lengtes uitgedrukt in centimeter. Toegepast op het vorige voorbeeld wordt dit (elections.3.txt4)

    # data: grootte van de Amerikaanse presidenten en hun tegenkandidaten bij de verkiezingen
    # bron: wikipedia
    2012:Barack Obama:185:Mitt Romney:187:2
    2008:Barack Obama:185:John McCain:175:10
    2004:George W. Bush:182:John Kerry:193:11
    2000:George W. Bush:182:Al Gore:185:3
    ...
    1800:Thomas Jefferson:189:John Adams:170:19
    1796:John Adams:170:Thomas Jefferson:189:19
            
  4. Rangschik de verkiezingen volgens dalende grootte van de winnende kandidaat, en daarna volgens naam van de winnende kandidaat (in alfabetische volgorde) en volgens verkiezingsjaar (in stijgende volgorde). Toegepast op het vorige voorbeeld wordt dit (elections.4.txt5)

    # data: grootte van de Amerikaanse presidenten en hun tegenkandidaten bij de verkiezingen
    # brons: wikipedia
    1860:Abraham Lincoln:192:John C. Breckinridge:188:5
    1864:Abraham Lincoln:192:George B. McClellan:173:20
    1964:Lyndon B. Johnson:192:Barry Goldwater:180:12
    1800:Thomas Jefferson:189:John Adams:170:19
    ...
    1808:James Madison:163:Charles C. Pinckney:175:13
    1812:James Madison:163:De Witt Clinton:191:28
            
  5. Voeg vooraan een extra informatieveld toe dat de opeenvolgende verkiezingen (in hun huidige volgorde) oplopend nummert vanaf 1. Toegepast op het vorige voorbeeld wordt dit (elections.5.txt6)

    # data: grootte van de Amerikaanse presidenten en hun tegenkandidaten bij de verkiezingen
    # bron: wikipedia
    1:1860:Abraham Lincoln:192:John C. Breckinridge:188:5
    2:1864:Abraham Lincoln:192:George B. McClellan:173:20
    3:1964:Lyndon B. Johnson:192:Barry Goldwater:180:12
    4:1800:Thomas Jefferson:189:John Adams:170:19
    ...
    51:1808:James Madison:163:Charles C . Pinckney:175:13
    52:1812:James Madison:163:De Witt Clinton:191:28
            

Richtlijnen bij het indienen

Volg aandachtig onderstaande richtlijnen bij het indienen van je oplossing: