LIACS >Kristian Rietveld >Courses >Programmeermethoden NA, Najaar 2017
headerimg

Banner image by Sebastian Niedlich on Flickr, CC BY-NC-SA 2.0

Programmeermethoden
Werkcollege 1: UNIX

Het eerste werkcollege van het vak Programmeermethoden NA vindt plaats in de computerzalen van het Snellius-gebouw, op dinsdag 5 september 2017, van 11:00 tot 12:45 uur.

Voorbereiding

Als voorkennis wordt bekend verondersteld: eigenlijk niet zoveel, want dit is een van de eerste activiteiten. Wat helpt:

Het eigenlijke werkcollege

Doe achtereenvolgens deze opdrachten:

  1. Laat je naam even aankruisen op de presentielijst, die hopelijk vanzelf langs komt. Komt deze vanwege de drukte niet langs: geen nood!
  2. (Voor zover dat nog niet gedaan is)
    Maak jezelf vertrouwd met de verschillende computersystemen. Volg daartoe de instructies van Hoofdstuk 1.7 (beginnend op pagina 7) van het dictaat Computers en programmeren. Lees eventueel maar eens deze introductie op de website van het C++ college Programmeermethoden.
    Hoe maken we een terminal op de Linux PCs? Zoek een icoontje met een schelp of beeldscherm. Deze is te vinden bij Dash (linksboven in Unity). Soms is een terminal ook op andere manieren op te sporen; je kunt ook zelf ergens een icoon toevoegen. Er zijn vele soorten terminals, kies zelf een die je prettig vindt werken.
  3. Oefen de UNIX-commando's, zie eventueel dictaat, eerste deel, Hoofdstuk 2. Gebruik in het bijzonder:
    • Een internet browser: firefox of chrome (tik bijvoorbeeld in een terminal in: firefox &, of gebruik het icoontje) of een van de vele andere ...
    • ls     overzicht files; tip: ls -lrt
    • cp     kopieer file
    • rm     verwijder file
    • mv     verplaats file
    • cd     verander van directory (map)
    • mkdir     maak nieuwe directory
    • man     hulp over een commando
    • =====
    • chmod     wijzig rechten (voor gevorderden)
    • ps     overzicht processen
    • kill     gooi proces weg
    Probeer maar eens op de website van Programmeermethoden NA de programmeerrichtlijnen te vinden en zet dit op je eigen account (NIET printen!), maak een subdirectory en kopieer/verplaats het document daarnaartoe. En hoe kun je het bekijken?
    VEEL meer informatie staat in dit uitgebreide document. Er is ook een uitgebreide Handleiding UNIX van Piet van Oostrum (in PDF-formaat) beschikbaar.
  4. Oefen met de editor gedit, zie dictaat, Hoofdstuk 2. Zet een aantal zaken goed bij "Preferences" (even zoeken hoe dit loopt in Unity, kijk bovenaan het scherm): "Display line numbers", "Enable automatic indentation", "Insert spaces instead of tabs" "Tab width" op 4. En accolades "matchen". En rechter kantlijn laten zien (op bijvoorbeeld 80 posities). Denk eraan Python-files altijd de extensie .py te geven. Het verschil tussen een terminal en een editor, waarin je een file aan het editen bent, is hopelijk duidelijk.
    Er zijn ook andere editors met syntax-highlighting, zoals gvim, nedit, emacs en kate. Kies zelf een favoriet.
  5. Maak een eerste Python-programma en voer dit uit, zie Hoofdstuk 1.7 en 1.9 uit het dictaat. Schrijf om te beginnen een programma dat een tekstje op het beeldscherm zet. Tik het programma uit het dictaat, pagina 6, over en draai het. Probeer maar eens te snappen wat er gebeurt. Tijdens de colleges wordt dit uitgebreid uitgelegd.
  6. Pas het programma aan zodat het twee in te voeren gehele getallen optelt en het resultaat afdrukt. Hint: kijk eens naar het volgende voorbeeldprogramma:
    # Dit is een regel met commentaar ...
    import math  # voor de "pi" constante
    print "Geef straal, daarna Enter ..",
    straal = float(raw_input())
    if straal > 0:
        print "Oppervlakte:",
        print math.pi * straal * straal
    else:
        print "Niet zo negatief ..."
    print "Einde van dit programma."
    
  7. Laat het gemiddelde van de twee getallen afdrukken, en laat het resultaat op verschillende manieren op het scherm zetten. Afronden?
  8. Je kunt ook interactief met Python werken. In een terminal kun je de interactieve interpreter starten door het commando python te geven zonder programma achter python. De interpreter zal je van harte welkom heten met het prompt >>>. Achter dit prompt kun je Python coderegels invoeren. Bijvoorbeeld
    print "Hallo"
    of
    a = 10 * 4
    print a
    Python is op deze manier een (hele) handige rekenmachine en bovendien kun je heel snel wat dingen uitproberen voordat je deze in je uiteindelijke programma zet.
  9. Oh ja, om uit die interpreter te komen gebruik je het commando
    exit()
    .
  10. (Echt alles af?) En nu de eerste programmeeropgave ...

Huiswerk

Lees het "dictaat Computers en programmeren" nog eens door. En nog eens.

Kun je uit je hoofd een Hello World programma in Python bedenken? En editen? En uitvoeren, oftewel executeren? En werken met de interactieve Python interpreter?