4 Invoer en uitvoer. 4.1 Toegang tot de standaardbibliotheek
|
|
- Sebastiaan Verstraeten
- 8 jaren geleden
- Aantal bezoeken:
Transcriptie
1 4 Invoer en uitvoer Strikt genomen maken invoer- en uitvoerfaciliteiten geen deel uit van de taal C, zoals dat in FORTRAN wel het geval is, waar de statements READ en WRITE als deel van de taal zijn gedefinieerd. Toch moeten echte programma's met de buitenwereld communiceren. In dit hoofdstuk bespreken we een deelverzameling van de bibliotheek voor standaard-i/0 (input/output), bestaande uit een verzameling functies die bedoeld zijn als standaardfaciliteit voor invoer en uitvoer. We zullen hier niet de hele I/O-bibliotheek behandelen. We beperken ons tot vier functies die met de terminal van de gebruiker communiceren. Dat is voldoende voor het schrijven van volledige werkende programma's. In hoofdstuk 14 zullen we op I/0 terugkomen en programma's bekijken die werken met data die in computerfiles staan. 4.1 Toegang tot de standaardbibliotheek Als een C-programma wordt uitgevoerd, worden door het besturingssysteem automatisch drie files geopend voor gebruik door dat programma. Die files zijn standaardinvoer, standaarduitvoer en standaardfout. Het is de bedoeling dat normale invoer door het programma uit de standaardinvoer wordt gelezen. In een interactieve omgeving zal de standaardinvoer normaal gekoppeld zijn aan de terminal (het toetsenbord) van de gebruiker. Normale uitvoer wordt naar de standaarduitvoer geschreven en dat zal normaal ook de terminal (het beeldscherm) van de gebruiker zijn. Tenslotte wordt er nog een uitvoerfile geopend. Het is de bedoeling dat eventuele foutmeldingen die het programma oplevert naar deze standaardfoutfile worden geschreven. In dit hoofdstuk houden we ons alleen bezig met programma's die met de standaardinvoer en - uitvoer werken. In hoofdstuk 14, waar invoer en uitvoer via files wordt behandeld, bestuderen we de files standaardinvoer, standaarduitvoer en standaardfout nader. In elke bronprogrammafile die naar een functie uit de standaard-i/o-bibliotheek verwijst, moet aan het begin de regel #include <stdio.h> voorkomen. Strikt genomen is dit niet helemaal waar, want alleen bepaalde functies uit deze bibliotheek hebben informatie nodig die in de headerfile stdio.h staan. Maar als we deze regel altijd opnemen, hoeven we niet te onderzoeken of het nodig is of niet. Een nauwkeurige beschrijving van deze statement #include geven we in het volgende hoofdstuk. Hier is het voldoende te zeggen dat een file met de naam stdio.h bepaalde dingen definieert die de standaard-i/o-bibliotheek nodig heeft. Daar worden bijvoorbeeld de standaardinvoer, 1
2 standaarduitvoer en standaardfout gedefinieerd. Deze gegevens worden vanuit deze headerfile in het toepassingsprogramma opgenomen. 4.2 Geformatteerde uitvoer Geformatteerde regels uitvoer worden geproduceerd met de functie printf uit de standaard- I/O-bibliotheek. We hebben de functie printf in hoofdstuk 2 al informeel gebruikt. De volledige en algemene beschrijving van printf luidt: printf(formaat, argument1, argument2,... ); De functie printf formatteert de argumenten en drukt ze in de standaarduitvoer af. De argumenten zijn de expressies die de waarden produceren die moeten worden afgedrukt. De weergave van deze argumenten wordt geregeld door de formatteringsstringformaat. Deze string (zie paragraaf 3.4) bevat twee soorten informatie: gewone karakters, die gewoon in de uitvoer worden gekopieerd, en conversiespecificaties, die de argumenten van printf converteren en afdrukken. In het eenvoudigste geval heeft printf een formaatstring zonder conversie en geen argumenten. In dat geval wordt de string letterlijk naar de standaarduitvoer gekopieerd: printf("een eenvoudige mededeling.\n"); Het resultaat van deze statement is dat de inhoud van de formaatstring in de standaarduitvoer terecht komt. Omdat de formaatstring een newline-symbool als laatste af te drukken karakter bevat, verschijnt latere uitvoer vanaf de linker kantlijn van de regel die na deze uitvoer komt. En deze uitvoer komt na eventuele eerdere uitvoer. Voor elk argument van printf moet een corresponderende conversiespecificatie in de formaatstring staan. Er moet precies het juiste aantal argumenten van de juiste typen zijn, die met de conversies overeenkomen; anders is het resultaat van het uitvoeren van printf onvoorspelbaar. Als een van de conversiespecificaties in de formaatstring onjuist is geformuleerd, is het effect ook onvoorspelbaar. Een conversiespecificatie in de formaatstring begint met het procentteken Daarna komt een reeks van nul of meer opties van de conversie. De specificatie eindigt met een conversieoperator, die als één karakter wordt genoteerd. De volledige definitie voor een conversiespecificatie is: 2
3 Alleen het procentteken en de uit één karakter bestaande conversie-operatie moeten aanwezig zijn. De andere velden zijn optioneel (opt). Verder hebben niet alle combinaties van velden betekenis. De precisiespecificatie regelt bijvoorbeeld het aantal decimale plaatsen dat in een decimaal getal wordt afgedrukt. Dit is een zinloos gegeven als er een integer waarde wordt geformatteerd en afgedrukt. We verkennen in deze paragraaf niet alle mogelijke combinaties. Het zijn er gewoon te veel. We geven hier een uitleg van een aantal voorbeelden van de beginselen van geformatteerde uitvoer. Een minimale conversiespecificatie bestaat uit het procentteken en een conversie-operatie. Deze laatste wordt genoteerd als een van de karakters uit volgende tabel. Het procentteken wordt gebruikt als representatie van het procentteken zelf, omdat dit in formaatstrings verder gereserveerd is voor conversiespecificaties. De uitvoer van printf("de korting bedraagt 10%%\n"); is De korting bedraagt 10% Tabel 4-1 bevat een beknopte beschrijving van elke operatie en is gemakkelijk om de werking even snel op te zoeken. Daarna volgen enkele voorbeelden. Conversieoperatie Toepassing d, i conversie van int naar signed decimaal getal u conversie van int naar unsigned decimaal getal 0 conversie van unsigned naar unsigned octaaf getal x, X conversie van int naar unsigned hexadecimaal getal c conversie van int naar één karakter s conversie naar string f conversie naar signed decimaal floating-point getal (met komma) e, E conversie naar signed decimaal floating-point getal (wetenschappelijke notatie) g, G conversie naar signed decimaal floating-point getal p conversie naar pointer n aantal geschreven karakters Tabel 4-1 Conversie-operaties bij gebruik van printf 3
4 Een argument expressie die bij evaluatie een integer waarde oplevert, wordt geformatteerd met de conversie-operator d. Als de declaraties en toekenningen int a=10, b=15; gelden, produceert de functieaanroep printf ("De som van %d en %d is %d. \n", a, b, a+b); de uitvoer De som van 10 en 15 is 25. De conversie-operatie %d zorgt ervoor dat de waarde van het corresponderende argument naar een signed decimaal getal wordt geconverteerd. Elk voorkomen van %d verbruikt één argument. Het argument moet van type int zijn. De geconverteerde waarde is een reeks decimale cijfers. De reeks is de kortste die nodig is om de waarde af te drukken. De waarde van variabele a (10) vereist bijvoorbeeld twee karakterposities in de uitvoerstroom. In een conversiespecificatie kan ook een minimale veldbreedte staan. In zijn eenvoudigste vorm bestaat deze uit een unsigned decimale integer constante. Als het argument minder karakters oplevert dan de opgegeven veldbreedte, worden de karakters rechts in het veld uitgelijnd en aan de linkerkant met spaties aangevuld. De functieaanroep printf ("De som van %d en %d is %4d \n", a, b, a+b); produceert als uitvoer De som van 10 en 15 is 25 (nota: drie blanco s tussen is en 25!) waarbij de waarde van de expressie a + b wordt weergegeven in een veld met een breedte van vier karakterposities. Maar als de geconverteerde waarde van het argument meer karakters omvat dan de opgegeven veldbreedte, wordt het veld voldoende verbreed om plaats te maken voor de af te drukken waarde. De waarde wordt niet afgekapt, maar de geformatteerde uitvoer ziet er nu anders uit dan verwacht. Zo levert het voorbeeld printf ("De som van %d en %1d is %3d. \n, a, b, a+b); als uitvoer De som van 10 en 15 is 25. 4
5 De conversiespecificatie die bij het argument b hoort, is %1d. Dit zegt dat de waarde moet worden afgedrukt in een veld met breedte 1, maar aangezien de geconverteerde waarde van het argument een veld met breedte 2 nodig heeft, heeft deze grotere breedte voorrang. Floating-point waarden worden met de conversiespecificatie %f weergegeven. De geconverteerde waarde is een reeks decimale cijfers met daarin een decimale punt, maar hoogstens zoveel als nodig is voor het representeren van de waarde. Als er geen precisie wordt gespecificeerd, wordt er uitgegaan van een precisie van zes decimale plaatsen. Als de declaraties en toekenningen float x, y; x = 1.234; y = 56.78; gelden, produceert printf ("%f afgetrokken van %f is %f \n" y, x, x-y); de uitvoer afgetrokken van is De minimale veldbreedte en de precisie kunnen worden opgegeven als twee unsigned integer constanten gescheiden door een punt. Deze elementen zijn beide optioneel. Als de precisie niet wordt opgegeven, wordt de punt weggelaten en wordt de standaardprecisie 6 aangehouden. Zo nodig kan de geconverteerde waarde worden afgerond. Het voorbeeld printf ("%5.2f afgetrokken van %4.2f is %7.2f \n", y, x, x-y); geeft als uitvoer afgetrokken van 1.23 is Tenslotte laten we zien hoe de formattering van een string wordt geregeld. De vereiste conversie-operatie is %s. Als er geen veldbreedte wordt opgegeven, worden de karakters van de string afgedrukt in het kleinste benodigde veld: printf ("[%s] \n", "Hallo allemaal"); levert [Hallo allemaal] 5
6 Een veldbreedte wordt gerepresenteerd als een unsigned decimale integer constante voorafgaand aan de conversie-operatie. De string wordt rechts uitgelijnd en aan de linkerkant met spaties aangevuld: printf ("[%20s] \n","hallo allemaal"); levert [ Hallo allemaal] In geen van de voorbeelden is tot nu toe een vlagkarakter gebruikt. Vlagkarakters wijzigen de betekenis van de hoofdconversie-operatie. In alle voorbeelden waarin de geconverteerde waarde minder karakters beslaat dan de expliciete veldbreedte, wordt de waarde rechts uitgelijnd in het veld en aan de linkerkant met spaties aangevuld. Door een koppelteken als vlagkarakter aan de conversiespecificatie te laten voorafgaan, kunnen we de waarde links laten uitlijnen en aan de rechterkant met spaties laten aanvullen: printf ("[%-20s] \n", "Hallo allemaal"); levert [Hallo allemaal ] Samenvattend: Om een variabele van een bepaald type af te drukken, is een formaat nodig. In volgende tabel geven we voor de meest voorkomende types het overeenkomende (basis)formaat. De parameters x,., en y kunnen weggelaten worden. Type formaat De x komt steeds overeen met een minimale veldbreedte. De y staat int %xd eventueel voor het aantal cijfers na de short int %xhd komma. long int %xld float %x.yf %x.ye %x.yg double %x.ylf %x.yle %x.ylg long double %x.ylf %x.yle %x.ylg Merk op dat wat hier voor %d genoteerd is, ook geldt voor U, 0 en x. Dit zijn natuurlijk minder gebruikte getalvoorstellingen en types (voor U -unsigned). De lezer (programmeur) moet zich strikt aan deze voorschriften houden, anders worden bijvoorbeeld getallen compleet verkeerd afgedrukt (of ingelezen, zie volgende paragraaf) 6
7 4.3 Geformatteerde invoer De functie scanf is de tegenhanger van printf. De stroom invoerkarakters uit de standaardinvoer wordt ontleed aan de hand van een besturingsstring en de ingevoerde waarden worden aan programmavariabelen toegekend. De functieaanroep heeft de vorm scanf(formaat, argument1, argument2,...); Elk argument is het adres van een geheugenlocatie die de bijbehorende invoerwaarde moet krijgen. Elk argument moet dus het adres van de ontvangende variabele zijn. Dit wordt in C genoteerd door middel van de adresoperator, weergegeven als het ampersand-teken (&) voor de naam van de variabele. Verdere details over deze operator worden in hoofdstuk 5 gegeven. Om twee datawaarden in te voeren en op te bergen in locaties waarnaar de identifiers maand en jaar verwijzen, gebruiken we: scanf (" ", &maand, &jaar); De string formaat is een 'plaatje' van de verwachte vorm van de invoer. De functie scanf ontleedt de stroom invoerkarakters aan de hand van de formaatstring. In de formaatstring worden conversiespecificaties gebruikt die lijken op die bij printf. Er moet precies het juiste aantal argumenten aanwezig zijn, die overeenkomen met de conversiespecificaties in de formaatstring, anders zijn de resultaten onvoorspelbaar. Als een conversiespecificatie niet correct is genoteerd, is het effect ook onvoorspelbaar. Behalve conversiespecificaties kan een formaatstring ook witruimtekarakters bevatten. Een witruimtekarakter in de formaatstring heeft als gevolg dat er een of meer witruimtekarakters uit de standaardinvoer worden gelezen en weggegooid. Het eerste karakter in de invoer dat geen witruimtekarakter is, wordt als volgende te lezen karakter beschouwd. Tenslotte kunnen er in een formaatstring andere dan witruimtekarakters en karakters voor een conversiespecificatie voorkomen. Deze andere karakters moeten precies met de resterende karakters in de invoerstroom overeenkomen. Als er geen overeenkomst is, eindigt scanf en blijft het onverwachte karakter in de invoer als volgend beschikbaar karakter staan. En conversiespecificatie begint met een procentteken (%). conversiespecificatie bij scanf is: De vorm van een 7
8 De conversieoperaties die scanf kent, lijken op die van printf en worden in tabel 4-2 getoond. Conversieoperatie Toepassing d, i conversie van signed decimaal getal naar int u conversie van unsigned decimaal getal naar int 0 conversie van unsigned octaaf getal naar unsigned x conversie van unsigned hexadecimaal getal naar int c conversie van één karakter s conversie van string f conversie van signed decimaal floating-point getal (met komma) e conversie van signed decirnaal floating-point getal (wetenschappelijke notatie) g conversie van signed decimaal floating-point getal p invoer van pointer n aantal gelezen karakters Tabe1 4-2 Conversie-operaties bij gebruik van scanf Hoeveel karakters er uit de invoerstroom worden gelezen, hangt van de conversieoperatie af. In het algemeen verwerkt een conversieoperatie een reeks van een of meer karakters totdat (a) er een witruimtekarakter of een andere niet passend karakter wordt gelezen, of (b) het aantal gelezen karakters gelijk is aan de opgegeven maximale veldbreedte. Als de declaraties int dag, maand, jaar; char ch1, ch2; gegeven zijn, verwacht de aanroep van scanf scanf ("%d %d %d", &dag, &maand, &jaar); dat er drie integers worden opgegeven. De eerste integer waarde die gelezen wordt, wordt aan de variabele dag toegekend. Eventuele witruimtekarakters die vóór de cijfers van het getal komen, worden genegeerd. De tweede integer waarde wordt van de eerste gescheiden door een of meer witruimtekarakters en wordt aan de variabele maand toegekend. Hetzelfde gebeurt met de laatste variabele jaar. Als de invoer is:
9 wordt de waarde 31 toegekend aan de variabele dag, 12 aan de variabele maand en 1985 aan de variabele jaar. De invoerwaarden worden door een reeks witruimtekarakters van elkaar gescheiden. Tussen de waarden 31 en 12 staan spaties en/of tabs, en tussen 12 en 1985 staan newline-karakters. De waarde 1985 wordt ook met een newline-karakter afgesloten. Het laatste karakter blijft in de invoerbuffer staan om door de volgende aanroep van scanf te worden verwerkt. In het voorbeeld scanf("%d/%d/%d", &dag, &maand, &jaar); wordt verwacht dat de integer waarden door een /-karakter worden gescheiden. Een voorbeeld van een geldige invoerstroom voor bovenstaande aanroep van scanf is: 12/4/1985 In een conversiespecificatie kan ook een maximale veldbreedte voorkomen. Die wordt opgegeven als een unsigned decimale integer constante ongelijk aan nul. De conversie eindigt als het vereiste aantal karakters is gelezen of als de invoerwaarde eindigt met witruimte of een ongeldig karakter. Het vorige voorbeeld van een aanroep van scanf kan ook worden geschreven als scanf("%2d/%2d/%4d", &dag, &maand, &jaar); zodat er plaats is voor een dag en een maand van 2 cijfers en een jaar van 4 cijfers. Als er maximale veldbreedten worden gebruikt, hoeven er geen witruimtekarakters te worden gebruikt. De invoer kan zo worden ontleed dat de waarde 12 aan de variabele dag wordt toegekend, de waarde 5 aan de variabele maanden de waarde 1985 aan de variabele jaar. Bij gebruik van de conversiespecificatie %c is voorzichtigheid geboden. Bij deze operatie worden eventuele witruimtekarakters aan het begin niet overgeslagen. De aanroep scanf("%d%c%d%c%d", &dag, &ch1, &maand, &ch2, &jaar); kent bij de invoer 5-9/1985 9
10 weer de waarde 5 aan de integer variabele dag toe, de waarde 9 aan de integer variabele maand en de waarde 1985 aan de integer variabele jaar. Aan de karaktervariabelen ch1 en ch2 worden respectievelijk het koppelteken (-) en de slash (/) toegekend. 4.4 De functies getchar en putchar In de vorige twee paragrafen hebben we gezien hoe we met routines voor geformatteerde I/O één karakter kunnen overbrengen. Als de declaratie char ch; gegeven is, kunnen we één karakter uit de standaardinvoer lezen en naar de standaarduitvoer schrijven met: scanf ("%c", &ch) ; printf ("%c", ch) ; Op deze manier gebeurt onnodig dubbel werk. Dat komt doordat scanf en printf beide hun formaatstring moeten verwerken. Voor invoer en uitvoer van één karakter zijn er ook de twee eenvoudigere mogelijkheden getchar en putchar. Strikt genomen moeten we dit geen functies noemen, want zoals we later in het boek zullen zien, zijn het helemaal geen bibliotheekfuncties. Wat ze precies wel zijn, zien we in hoofdstuk 14. Voorlopig kunnen we ze wel als functies beschouwen. De functie putchar heeft één argument en drukt het betreffende karakter af in de standaarduitvoer. Om de waarde van de karaktervariabele ch als uitvoer te produceren, gebruiken we putchar(ch); Om één newline-karakter als uitvoer te produceren, kunnen we gebruiken: putchar( \n ); De functie getchar() leest het volgende karakter uit de standaardinvoerstroom. Er worden aan getchar() geen argumenten opgegeven, maar de haakjes zijn wel verplicht. De waarde van het gelezen karakter wordt in de vorm van een int als functiewaarde afgeleverd. Deze waarde kan in een toekenning worden gebruikt: ch = getchar(); Als de variabele ch van type char is, worden bij de toekenning de juiste conversies uitgevoerd. 10
11 Het oorspronkelijke probleem van het invoeren en weer uitvoeren van één karakter kan nu zo worden opgelost: ch = getchar(); putchar(ch); Opmerking: Indien men wenst te verifiëren of het einde van een bestand gelezen is, kan men de waarde van de ingelezen character vergelijken met EOF. Aangezien EOF een int is, kan men best voor de variabele die de waarde van getchar() krijgt, eveneens een int gebruiken! De invoer/uitvoeroperaties scanf, printf, getchar en putchar kunnen vrijelijk gemengd worden gebruikt. De in te voeren datum 12-10/1985 kan bijvoorbeeld worden gelezen met de functies: scanf ("%d", &dag) ch1 = getchar () ; scanf("%d", &maand); ch2 = getchar () ; scanf ("%d", &jaar); waarna de karaktervariabelen ch1 en ch2 de scheidingstekens tussen de drie getallen bevatten. Als we geformatteerde invoer met scanf gebruiken, moeten we eraan denken dat het invoeren van bijvoorbeeld een getal doorgaat tot de eerste witruimte of een karakter dat geen deel uitmaakt van een getal. De gegeven invoer kan worden gelezen met: scanf ("%d%c%d%c%d", &dag, &ch1, &maand, &ch2, &jaar); De waarde voor de variabele dag wordt gelezen als de karakterreeks tot aan (niet tot en met) het koppelteken. Dat blijft in de invoerstroom staan voor de volgende toekenning. De volgende conversiespecificatie is %c, zodat er één karakter wordt ingevoerd en aan de variabele ch1 wordt toegekend. Dit ene karakter is het koppelteken. Als een gelezen getal door witruimte wordt afgesloten, blijft het witruimtekarakter als eerste karakter achter voor de volgende invoeroperatie. Laten we eens kijken naar een programma dat de gebruiker om een getal vraagt, de door een newline afgesloten waarde leest, de gebruiker vraagt of de waarde juist is en het als één karakter J of N (voor 'ja' respectievelijk 'nee') verwachte antwoord leest. Een eerste poging om dit te programmeren kan zijn: 11
12 printf ("Voer een getal in: ); scanf("%d, &getal); printf("correct?"); antwoord = getchar () ; Nadat het getal is gelezen, blijft het afsluitende newline-karakter in de invoerbuffer staan. Als de vraag Correct? wordt weergegeven, wacht het programma niet op invoer van de gebruiker, maar beschouwt het newline-karakter in de buffer als antwoord. Het programma loopt dan verder zonder dat er nog invoer van de gebruiker wordt gevraagd. Dit is natuurlijk niet de bedoeling. Een eenvoudige oplossing voor dit probleem is het newline-karakter weg te gooien voordat er een antwoord wordt gevraagd. Aangenomen dat het getal door een onmiddellijk volgend newline-karakter is afgesloten, kunnen we één extra karakter lezen. Dat kan in de eerste scanf zelf gebeuren, of met een aparte getchar(). Deze laatste oplossing ziet er zo uit: printf ("Voer een getal in: "); scanf ("%d", &getal); weggooien = getchar(); // verwijder newline uit invoer printf("correct? "); antwoord = getchar(); 4.5 Speciaaltjes. Men kan de uitvoer van printf ook naar een string (rij van characters) sturen. Een voorbeeld: char tekst[256]; sprintf(tekst, "formaat", argumenten); Het enige verschil met printf is dus dat de eerste (extra) parameter de naam van een string is. Hetzelfde kan men doen met sscanf: sscanf(tekst, "formaat", argumenten); Voor het gebruik van het formaat en de argumenten kan men teruggrijpen Zowel printf als sprintf geven ook een resultaat terug. Zo zou men bijvoorbeeld kunnen schrijven: int i; i=printf("voorbeeld %d",5+3); 12
13 i bevat nadien het aantal afgedrukte tekens. Indien dit aantal EOF is, is er een fout gebeurd, bijvoorbeeld: de schijf was vol,. Voor scanf en sscanf kan men hetzelfde zeggen: int i; i=scanf("%d",&j); Hier bevat i het aantal ingelezen variabelen. Indien dit 0 is, is er iets fout. Indien niet kon gelezen worden is dit EOF. 4.6 Invoer vanuit het toetsenbord. Getchar() is een functie die een teken uit de inputbuffer neemt. In sommige gevallen, bijvoorbeeld een menuoptie is het handig een teken rechtstreeks van het toetsenbord te kunnen lezen, zonder de inputbuffer te moeten aanbieden met het <enter> teken. C kent twee functies om rechtstreeks het toetsenbord te lezen: getch(); is een functie die een teken rechtstreeks van het toetsenbord leest. getche(); doet hetzelfde en zet het teken eveneens op het scherm (e van echo). In gebruik (toekenning aan variabele, headerbestand, ) zijn getch en getche gelijk aan getchar. Putch bestaat ook, maar is hetzelfde als putchar. Volgens sommige C compilers is het af te raden putch te gebruiken (minder portabel) kbhit() is een functie die kijkt of een toets van het toetsenbord is ingedrukt. Indien een toets is ingedrukt, geeft de functie een waarde TRUE (waar) af. De header conio.h is vereist. Indien het de bedoeling is tekens van en naar een bestand te schrijven gebruikt men getc en putc: int getc(file *stream); int putc(int c, FILE *stream); Voor het gebruik van het FILE type, verwijzen we eerst naar het hoofdstuk over bestand invoer en uitvoer. 13
14 4.7 Samenvatting 1. Invoer/uitvoerfaciliteiten worden in C geleverd door een aantal functies in de standaardbibliotheek. 2. Bij gebruik van invoer/uitvoer constructies met de systeem-headerfile stdio.h in een programma worden opgenomen door middel van de besturingsregel #include <stdio.h>. 3. Geformatteerde uitvoer wordt gedaan door de bibliotheekfunctie printf. Geformatteerde invoer wordt gedaan door de bibliotheekfunctie scanf. Formatteren is het regelen van de lay-out van de afgedrukte uitvoer en de invoer van het programma. 4. Een formateringsstring bestaat uit een mengsel van witruimtekarakters, gewone karakters en conversiespecificaties. 5. Invoer en uitvoer van één karakter wordt gedaan met de bibliotheek-'functies' getchar en putchar. 14
Een typisch programma in C en C++ bestaat uit een aantal onderdelen:
Eerste stappen in C. Een typisch programma in C en C++ bestaat uit een aantal onderdelen: /* Alles wat op meerdere lijnen staat zoals hier is commentaar. */ // Dit is commentaar op 1 lijn. Geldig tot einde
Nadere informatie17 Operaties op bits. 17.1 Bitoperatoren en bitexpressies
17 Operaties op bits In hoofdstuk 1 is gezegd dat C oorspronkelijk bedoeld was als systeemprogrammeertaal om het besturingssysteem UNIX te implementeren. Bij dit soort toepassingen komt het voor dat afzonderlijke
Nadere informatieWeek 2 : Hoofdstukken 2 en 6; extra stof: inleiding pointers
Week 2 : Hoofdstukken 2 en 6; extra stof: inleiding pointers Hoofdstuk 6: Beslissingen: if-statement en switch-statement. Inleiding: Condities zijn waar (true) of onwaar (false) In C staat het int-getal
Nadere informatiePROS1E1 Gestructureerd programmeren in C Dd/Kf/Bd
Inhoudsopgave 1 Inleiding... 1 2 Toekenning- en herhalingsopdrachten (for loop)... 2 2.1 De wet van Ohm... 3 2.2 De spaarrekening... 3 2.3 De transformator... 3 3 Keuze- en herhalingsopdrachten (if, switch,
Nadere informatieEE1400: Programmeren in C BSc. EE, 1e jaar, , 2e college
EE1400: Programmeren in C BSc. EE, 1e jaar, 2012-2013, 2e college Arjan van Genderen, Computer Engineering 20-11-2012 Delft University of Technology Challenge the future Agenda A.s. woensdagmiddag 14.00
Nadere informatie9 Meer over datatypen
9 Meer over datatypen We hebben al gezien dat het gebruik van symbolische constanten de leesbaarheid van een programma kan verbeteren. Door een geschikte naam (identifier) voor een constante te definiëren,
Nadere informatieWeek 3 : Hoofdstukken 7 en 8; extra stof: invoer met scanf() extra aanvulling op het boek: inlezen met scanf() in C
Week 3 : Hoofdstukken 7 en 8; extra stof: invoer met scanf() extra aanvulling op het boek: inlezen met scanf() in C Voorbeeld Extra_4 In dit voorbeeld lezen we in van toetsenbord met scanf(). Let op de
Nadere informatieEen korte samenvatting van enkele FORTRAN opdrachten
Een korte samenvatting van enkele FORTRAN opdrachten Inhoud 1 Introductie 3 2 De structuur van een FORTRAN programma 3 3 Datatypen, variabelen en declaraties 3 4 Expressies-volgorde van uitwerking 4 5
Nadere informatieTentamen Programmeren in C (EE1400)
TU Delft Tentamen Programmeren in C (EE1400) 3 feb. 2012, 9.00 12.00 Faculteit EWI - Zet op elk antwoordblad je naam en studienummer. - Beantwoord alle vragen zo nauwkeurig mogelijk. - Wanneer C code gevraagd
Nadere informatie1.1 Programmeren en voorbereiding
Een overzicht van C 1.1 Programmeren en voorbereiding 1.2 Programma-uitvoer 1.3 Variabelen, expressies en toewijzing 1.4 Het gebruik van #define en 1.5 Het gebruik van printf() en scanf() 1.6 Programmabesturing
Nadere informatieOperaties op bestanden
Operaties op bestanden C bevat geen speciale taalconstructies voor in- en uitvoer. een verzameling van functies, onderdeel van de standaard C-bibliotheek: fopen fclose fgetc fputc ungetc fscanf fprintf
Nadere informatieTentamen Programmeren in C (EE1400)
TU Delft Tentamen Programmeren in C (EE1400) 5 april 2012, 9.00 12.00 Faculteit EWI - Zet op elk antwoordblad je naam en studienummer. - Beantwoord alle vragen zo nauwkeurig mogelijk. - Wanneer C code
Nadere informatieConstanten. Variabelen. Expressies. Variabelen. Constanten. Voorbeeld : varid.py. een symbolische naam voor een object.
een symbolische naam voor een object. Variabelen Constanten Variabelen Expressies naam : geeft de plaats in het geheugen aan waarde : de inhoud van het object identifier : een rij van letters en/of cijfers
Nadere informatieHOOFDSTUK 3. Imperatief programmeren. 3.1 Stapsgewijs programmeren. 3.2 If Then Else. Module 4 Programmeren
HOOFDSTUK 3 3.1 Stapsgewijs programmeren De programmeertalen die tot nu toe genoemd zijn, zijn imperatieve of procedurele programmeertalen. is het stapsgewijs in code omschrijven wat een programma moet
Nadere informatieFunctioneel programmeren
Functioneel programmeren Practicumopgave 2: Mastermind Het doel van deze opgave is het implementeren van het spel Mastermind; zie http://nl.wikipedia.org/wiki/mastermind voor een uitleg. Het spel is klein
Nadere informatieAFO 126 - Printen plaatskenmerk-etiketten
AFO 126 - Printen plaatskenmerk-etiketten 126.1 Inleiding Met AFO 126 regelt u het printen van plaatskenmerk-etiketten. U kunt met deze AFO ook de printformaten definiëren waarmee u wilt printen. U kunt
Nadere informatie10 Meer over functies
10 Meer over functies In hoofdstuk 5 hebben we functies uitgebreid bestudeerd. In dit hoofdstuk bekijken we drie andere aspecten van functies: recursieve functies dat wil zeggen, functies die zichzelf
Nadere informatiemaplev 2010/7/12 14:02 page 15 #17 Nadere detaillering van een aantal zaken van Module 1 Geen,, " ", \, save, read, protect, unprotect
maplev 2010/7/12 14:02 page 15 #17 Module 2 Het gebruik van Maple, vervolg Onderwerp Voorkennis Expressies Nadere detaillering van een aantal zaken van Module 1 Geen,, " ", \, save, read, protect, unprotect
Nadere informatieOnline c++ leren programmeren:
Online c++ leren programmeren: Inhoud 1)Waar vind ik een c++ compiler?... 2 2)Hoe start ik een programma in c++?... 2 3)Een eerste c++ programma:... 3 Een eerste programma schrijven:... 3 Mijn eerste programma
Nadere informatieControle structuren. Keuze. Herhaling. Het if statement. even1.c : testen of getal even of oneven is. statement1 statement2
Controle structuren De algemene vorm: 1 bloks door middel van indentatie Keuze Herhaling if expressie :...... In de volgende vorm is het else gedeelte weggelaten: if expressie :... Het if keuze- of conditioneel
Nadere informatieAFO 142 Titel Aanwinsten Geschiedenis
AFO 142 Titel Aanwinsten Geschiedenis 142.1 Inleiding Titel Aanwinsten Geschiedenis wordt gebruikt om toevoegingen en verwijderingen van bepaalde locaties door te geven aan een centrale catalogus instantie.
Nadere informatieWat zijn de verschillen tussen SPSS 9 en SPSS 10?
Wat zijn de verschillen tussen SPSS 9 en SPSS 10? 1.1 De data-editor / het definiëren van variabelen 1.2 Het openen van bestanden 1.3 Output lezen 1.4 Mogelijke problemen 1.1.1 De data-editor Het grootste
Nadere informatieAFO 139 Automatische export
AFO 139 Automatische export 139.1 Inleiding Vubis Smart beschikt over de mogelijkheid om volledig automatisch beschrijvingen te exporteren naar bestanden op de server. Andere bibliotheken (ongeacht of
Nadere informatieTentamen Programmeren in C (EE1400)
TU Delft Faculteit EWI Tentamen Programmeren in C (EE1400) 28 jan 2011, 9.00 12.00 - Zet op elk antwoordblad je naam en studienummer. - Beantwoord alle vragen zo nauwkeurig mogelijk. - Wanneer C code gevraagd
Nadere informatieCollege Notatie, Recursie, Lijsten
College 2016-2017 2. Notatie, Recursie, Lijsten Doaitse Swierstra (Jeroen Bransen) Utrecht University September 13, 2016 Functieapplicatie functieapplicatie associeert naar links: als x in f x y moet kiezen
Nadere informatieAls een PSD selecties bevat, deelt de lijn van het programma zich op met de verschillende antwoorden op het vraagstuk.
HOOFDSTUK 3 3.1 Stapsgewijs programmeren In de vorige hoofdstukken zijn programmeertalen beschreven die imperatief zijn. is het stapsgewijs in code omschrijven wat een programma moet doen, net als een
Nadere informatieModelleren en Programmeren
Modelleren en Programmeren Jeroen Bransen 13 november 2015 Expressies Functies Ingebouwde functies Variabelenbereik Inleveropgave 1 Terugblik Programma is een lijst van opdrachten Terugblik Programma is
Nadere informatieNumerieke benadering van vierkantwortels
HP Prime Grafische Rekenmachine Numerieke benadering van vierkantwortels Doel: De waarde van een vierkantswortel met een recursieve rij benaderen, het schrijven van een klein programma. Sleutelwoorden:
Nadere informatieHandleiding. Loket.nl / Import variabele gegevens
Handleiding Loket.nl / Import variabele gegevens Inhoudsopgave 1. Aanzetten product Import variabele gegevens (50)... 3 2. Bestandsstructuur... 3 2.1. Voorwaarden:... 3 2.2. Voorbeeld bestand:... 3 3.
Nadere informatieC-programmeren. Boek : In zee met C, Leo van Moergestel, Academic Service, ISBN 978 90 395 2479 4
C-programmeren Boek : In zee met C, Leo van Moergestel, Academic Service, ISBN 978 90 395 2479 4 Indeling van de cursus Per week 2 uur theorie en 2 uur practicum. Aanwezigheid bij de theorie is niet verplicht.
Nadere informatieDE INTERACTIEVE SHELL
Hoofdstuk2 De interactieve shell 6 Hoofdstuk 2 DE INTERACTIEVE SHELL In dit hoofdstuk behandelen we: Integers (gehele getallen) en getallen met drijvende komma Expressies Waarden Operatoren Het evalueren
Nadere informatiePersistentie via bestanden. Bestanden
programma is transient Persistentie via bestanden Administratieve gegevens zijn verzameld in het file-object: o.a. waar ergens op de disk de data van het bestand te vinden is. invoer van de gebruiker programma
Nadere informatieEen topprogrammeur in het OO programmeren is Graig Larman. Hij bedacht de volgende zin:
Java Les 2 Theorie Beslissingen Algemeen Net als in het dagelijks leven worden in software programma s beslissingen genomen, naast het toekennen van waarden aan variabelen zijn beslissingen één van de
Nadere informatieProgrammeren met Arduino-software
Programmeren met Arduino-software De software waarin we programmeren is Arduino IDE. Deze software is te downloaden via www.arduino.cc. De programmeertaal die hier gebruikt wordt, is gebaseerd op C en
Nadere informatieVariabelen en statements in ActionScript
Ontwikkelen van Apps voor ios en Android Variabelen en statements in ActionScript 6.1 Inleiding Als we het in de informatica over variabelen hebben, bedoelen we een stukje in het geheugen van de computer
Nadere informatieProgrammeren in Java les 3
4 september 2015 Deze les korte herhaling vorige week loops methodes Variabelen Soorten variabelen in Java: integer: een geheel getal, bijv. 1,2,3,4 float: een gebroken getal, bijv. 3.1415 double: een
Nadere informatieObjective-C Basis. 23 april 2005, Eindhoven Patrick Machielse
Objective-C Basis 23 april 2005, Eindhoven Patrick Machielse patrick@hieper.nl Algemeen // extensies Objective-C code in bestanden met.m extensie // commentaar moet! /* Alles hiertussen wordt genegeerd
Nadere informatie1 Rekenen in eindige precisie
Rekenen in eindige precisie Een computer rekent per definitie met een eindige deelverzameling van getallen. In dit hoofdstuk bekijken we hoe dit binnen een computer is ingericht, en wat daarvan de gevolgen
Nadere informatieUitleg: In de bovenstaande oefening zie je in het eerste blokje een LEES en een SCHRIJF opdracht. Dit is nog lesstof uit het tweede trimester.
In onderstaande oefeningen zijn kleuren gebruikt. Deze dienen aleen om de structuren makkelijker terug te kunnen herkennen. Ze worden niet standaard zo gebruikt. De dunne rood/roze balken zijn ook geen
Nadere informatieVOORBLAD SCHRIFTELIJKE TOETSEN
Technology, Innovation & Society Delft VOORBLAD SCHRIFTELIJKE TOETSEN OPLEIDING TOETSCODE GROEP : ELEKTROTECHNIEK : GESPRG : EP11/EP12 TOETSDATUM : 07-02-2014 TIJD : 13.00 14.30 uur AANTAL PAGINA S (incl.
Nadere informatieReleasenotes. Intramed versie 7.0.1. Intramed versie 7.0.1
Releasenotes Intramed versie 7.0.1 Intramed versie 7.0.1 Hoofdstuk 1 Releasenotes Een Intramed patch: verbeteringen en oplossingen. Intramed versie 7.0 was een versie met belangrijke nieuwe mogelijkheden
Nadere informatieint main() { int m; m = power(2,3) /* berekent 2^3 en geeft de resultaat naar m terug */ }
1 Functies ( ) voorbeeld: int power(int base, int n) int i, p; p = 1; for ( i=1, i
Nadere informatieBlog-Het gebruik van variabelen in Excel VBA
Blog-Het gebruik van variabelen in Excel VBA Versie : 2012.01.31.1 (Blog http://www.reinder.eu) Dank voor de leuke reacties op het vorige blog en ook dank voor de kritische noot over het nivo dat de gebruiker
Nadere informatiehttp://www.liacs.nl/home/kosters/java/
sheets Programmeren 1 Java college 2, Walter Kosters De sheets zijn gebaseerd op de hoofdstukken 2 tot en met 6 van: D. Bell en M. Parr, Java voor studenten, Prentice Hall, 2002 http://www.liacs.nl/home/kosters/java/
Nadere informatie4EE11 Project Programmeren voor W. College 2, , Blok D Tom Verhoeff, Software Engineering & Technology, TU/e
4EE11 Project Programmeren voor W College 2, 2008 2009, Blok D Tom Verhoeff, Software Engineering & Technology, TU/e 1 Onderwerpen Terugblik Functies Organisatie (architectuur) van programma s Arrays Structuren
Nadere informatiestart -> id (k (f c s) (g s c)) -> k (f c s) (g s c) -> f c s -> s c
Een Minimaal Formalisme om te Programmeren We hebben gezien dat Turing machines beschouwd kunnen worden als universele computers. D.w.z. dat iedere berekening met natuurlijke getallen die met een computer
Nadere informatie{button Installeer Zelfstudie Bestanden, execfile(seedatauk.exe,tutorial.ctb;tutorial nn.see)}
Kringnet Vereffening Deze zelfstudie maakt gebruik van de module Vereffening. Opmerking: Deze zelfstudie kan niet worden uitgevoerd met LISCAD Lite. Doelstelling Het doel van deze zelfstudie is om te laten
Nadere informatieTalstelsels en getalnotaties (oplmodel)
Talstelsels en getalnotaties (oplmodel) herhalingsvragen 1. Waarom werken computers binair? Omdat binaire computers veel makkelijker te maken is. De kans op fouten is ook veel kleiner. het spanningsverschil
Nadere informatieModelleren en Programmeren
Modelleren en Programmeren Jeroen Bransen 11 december 2015 Ingebouwde datastructuren Meer boomstructuren Access specifiers Gebruikersinvoer Codestijl Packages SAT-solver Ingebouwde datastructuren Ingebouwde
Nadere informatieExcellerend Kwartaaltip 2014-2
Excellerend Heemraadweg 21 2741 NC Waddinxveen 06 5115 97 46 richard@excellerend.nl BTW: NL0021459225 Bank: NL72 ABNA 0536825491 KVK: 24389967 Onjuiste invoer! Wanneer je werkt met een Excelbestand waarbij
Nadere informatieEen eenvoudig algoritme om permutaties te genereren
Een eenvoudig algoritme om permutaties te genereren Daniel von Asmuth Inleiding Er zijn in de vakliteratuur verschillende manieren beschreven om alle permutaties van een verzameling te generen. De methoden
Nadere informatieWeek 5 : Hoofdstuk 11+ extra stof: meer over functies. Hoofdstuk 11:
Week 5 : Hoofdstuk 11+ extra stof: meer over functies Hoofdstuk 11: Functies Functies in C lijken heel erg op functies in Java. Maar er is één groot veschil: Java ken uitsluitend invoer-parameters, terwijl
Nadere informatieInstructies en blokken
Herhaling 1 Instructies en blokken Naar elke instructie staat een ; puntkomma Verschillende instructies worden door de accolades in een block samengevat. Een blok is het zelfde als een enkele instructie.
Nadere informatieDatastructuren Programmeeropdracht 3: Expressies. 1 Expressies. Deadline. Dinsdag 8 december 23:59.
Datastructuren 2015 Programmeeropdracht 3: Expressies Deadline. Dinsdag 8 december 23:59. Inleiding. Deze opdracht is losjes gebaseerd op Opdracht 5.13.2 in het boek van Drozdek. U wordt gevraagd expressies
Nadere informatieToets Programmeren, 2YP05 op donderdag 13 november 2008, 09:00-12:00
Toets Programmeren, 2YP05 op donderdag 13 november 2008, 09:00-12:00 TU/e Technische Universiteit Eindhoven Faculteit Wiskunde en Informatica (Na de toets gecorrigeerde versie) PROBLEEM: Sleutels Lees
Nadere informatieIn de tweede regel plaatsen we in het gereserveerde stukje geheugen een getal.
4. Array s Een array is een geïndexeerde variabele. Deze zin zal de nodig vragen oproepen, waarop enige uitleg van toepassing is. Met variabelen hebben we al kennis gemaakt. In een variabele kun je iets
Nadere informatieBijlage Inlezen nieuwe tarieven per verzekeraar
! Bijlage inlezen nieuwe tarieven (vanaf 3.2) Bijlage Inlezen nieuwe tarieven per verzekeraar Scipio 3.303 biedt ondersteuning om gebruikers alle tarieven van de verschillende verzekeraars in één keer
Nadere informatieProgrammeermethoden NA. Week 5: Functies (vervolg)
Programmeermethoden NA Week 5: Functies (vervolg) Kristian Rietveld http://liacs.leidenuniv.nl/~rietveldkfd/courses/prna/ Bij ons leer je de wereld kennen 1 Functies Vorige week bekeken we functies: def
Nadere informatieEE1400: Programmeren in C BSc. EE, 1e jaar, , 3e college
EE1400: Programmeren in C BSc. EE, 1e jaar, 2012-201, e college Arjan van Genderen, Computer Engineering 4-12-2012 Delft University of Technology Challenge the future Hoorcollege Arrays, Pointers en Strings
Nadere informatieHandleiding ChainWise Data import Module
Handleiding ChainWise Data import Module Versie: 1.1 Datum: Januari 2013 Inhoudsopgave 2 Inleiding... 3 3 Uploaden naar tijdelijk tabel... 4 3.1 Uploaden... 4 3.2 Koppelingen... 4 3.3 Opslaan en Errors...
Nadere informatieEXCEL BASIS 2013
EXCEL BASIS 2013 WWW.I-LEARNING.BE - 4 FORMULE-INVOER ALS EXCEL EEN BEREKENING MOET DOEN, MOET JE EEN FORMULE OF EEN FUNCTIE INVOEREN 4.1 OPERATOREN + om op te tellen - om af te trekken / om te delen *
Nadere informatieDeeltentamen Grammatica s en ontleden 22 december 2005
Tentamen Grammatica s en ontleden 22 december 2005 1 Deeltentamen Grammatica s en ontleden 22 december 2005 Let op: opgave 1 t/m 4 tellen voor (slechts) 5 punten mee, opgave 5 voor maar liefst 50 punten,
Nadere informatieVakgroep CW KAHO Sint-Lieven
Vakgroep CW KAHO Sint-Lieven Objecten Programmeren voor de Sport: Een inleiding tot JAVA objecten Wetenschapsweek 20 November 2012 Tony Wauters en Tim Vermeulen tony.wauters@kahosl.be en tim.vermeulen@kahosl.be
Nadere informatieCollege Introductie
College 2016-2017 Introductie Doaitse Swierstra (Jeroen Bransen) Utrecht University September 13, 2016 Waarom is FP anders? in plaats van opdrachten die na elkaar moeten worden uitgevoerd, definiëren we
Nadere informatiePROGRAMMEREN IN C CURSUS VOOR STARTERS. J.W. Welleman. header files. source files. *.h. *.c. compiler. object files. library builder. *.
PROGRAMMEREN IN C CURSUS VOOR STARTERS J.W. Welleman header files *.h source files *.c compiler library builder library files object files *.obj *.lib linker executable *.exe PROGRAMMEREN IN C CURSUS VOOR
Nadere informatieLab Webdesign: Javascript 3 maart 2008
H5: OPERATORS In dit hoofdstuk zullen we het hebben over de operators (of ook wel: operatoren) in JavaScript waarmee allerlei rekenkundige en logische bewerkingen kunnen worden uitgevoerd. Daarbij zullen
Nadere informatieCollege I/O
College 2016-2017 I/O Doaitse Swierstra Verteld door Jurriaan Hage Utrecht University Input en Output Tot dusverre: een module bevat een aantal functiedefinities GHCi drukt de waarde af van een ingetikte
Nadere informatieDe MySQL C API. Variabelen in C Functies in C Pointers in C
LinuxFocus article number 304 http://linuxfocus.org De MySQL C API door Özcan Güngör Over de auteur: Ik gebruik Linux sinds 1997. Vrijheid, flexibiliteit en opensource. Dat
Nadere informatieAFO 241 - Leveranciers
AFO 241 - Leveranciers 241.1 Inleiding[//] Het systeem hanteert een authority bestand voor leveranciers waarin alle leveranciers opgenomen worden. Bij het invoeren van een bestelling wordt een leverancier
Nadere informatie1 Inleiding in Functioneel Programmeren
1 Inleiding in Functioneel Programmeren door Elroy Jumpertz 1.1 Inleiding Aangezien Informatica een populaire minor is voor wiskundestudenten, leek het mij nuttig om een stukje te schrijven over een onderwerp
Nadere informatieSQL datadefinitietaal
SQL datadefinitietaal We kunnen er het schema van de database mee bepalen: metadata toevoegen, wijzigen en verwijderen uit een database. Basiscommando's: CREATE : toevoegen van metagegevens DROP : verwijderen
Nadere informatiePython. Vraag 1: Expressies en types. Vraag 1 b: Types -Ingebouwde functies- Vraag 1 a 3/10/14
Python Vraag 1: Expressies en types Integrated Development Environment (IDE): Ø Wing 101 (gratis te downloaden op www.wingware.com) Oefeningen in de shell >> noemen we de prompt Python commando s = expressies
Nadere informatieQR-code op aanvoerbrief 2.xx.0: Specificaties
QR-code op aanvoerbrief 2.xx.0: Specificaties Door: Bert Velthuijs Datum 1e versie: 5 april 2012 (versie 0.xx) Datum laatste wijziging 20 september 2012 Huidige Versie: 2.xx.0 Wijzigingen 19 juli 2012
Nadere informatieArduino Cursus, Deel 2 Programmeren. Simon Pauw, ZB45, Amsterdam
Arduino Cursus, Deel 2 Programmeren Simon Pauw, ZB45, Amsterdam Programmeren Geen zorgen als je niet alles begrijpt. Doel: Het snappen van bestaande code. Meeste kennis ook toepasbaar buiten de Arduino
Nadere informatieDynamisch geheugen beheer
Dynamisch geheugen beheer + Normaal wordt laats in het werkgeheugen gereserveerd tijdens de comilatie aan de hand van de declaraties van de variabelen. + Deze geheugenreservering is statisch: in het bronbestand
Nadere informatieHandleiding voor implementatie WEBSERVICE GEOCODEREN
Handleiding voor implementatie WEBSERVICE GEOCODEREN Opgesteld door Bridgis BV Datum 13 september 2012 INHOUDSOPGAVE 1 Geocoderen 3 2 Bridgis Adreslocaties 3 3 URL 3 4 Functie 3 5 Input en Output 4 5.1
Nadere informatieProgrammeermethoden NA. Week 5: Functies (vervolg)
Programmeermethoden NA Week 5: Functies (vervolg) Kristian Rietveld http://liacs.leidenuniv.nl/~rietveldkfd/courses/prna2016/ Functies Vorige week bekeken we functies: def bereken(a, x): return a * (x
Nadere informatiecontinue in een for, while of do lus herhaalt de lus vroegtijdig. De volgende herhaling wordt onmiddellijk begonnen.
Hoofdstuk 3: controlestructuren instructies en blokken Naar elke instructie staat een ; Instructies worden door de haakjes {} in een block samengevat. if else if ( expression) statement1; else statement2;
Nadere informatieJörg R. Hörandel Afdeling Sterrenkunde.
Jörg R. Hörandel Afdeling Sterrenkunde http://particle.astro.ru.nl/goto.html?prog1213 1 Alle mensen moeten op blackboard ingeschreven zijn! 2 http://particle.astro.ru.nl/goto.html?prog1213 3 eindcijfer:
Nadere informatieProgrammeermethoden. Controle-structuren. Walter Kosters. week 3: september kosterswa/pm/
Programmeermethoden Controle-structuren Walter Kosters week 3: 17 21 september 2018 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Inleveren opgave 1 Inleveren: digitaal clintonobama1.cc en print van mooi.pdf.
Nadere informatiePROGRAMMA'S SCHRIJVEN
Hoofdstuk 3 Hoofdstuk 3 Programma's schrijven 13 PROGRAMMA'S SCHRIJVEN In dit hoofdstuk behandelen we: Hoe de verwerking van instructies verloopt Strings (tekenreeksen) Stringconcatenatie (oftewel strings
Nadere informatieVergelijkingen met breuken
Vergelijkingen met breuken WISNET-HBO update juli 2013 De bedoeling van deze les is het doorwerken van begin tot einde met behulp van pen en papier. 1 Oplossen van gebroken vergelijkingen Kijk ook nog
Nadere informatieFostPack Importeren verpakkingsfiches via Excel
FostPack Importeren verpakkingsfiches via Excel 1 Inhoudsopgave FostPack Importeren verpakkingsfiches via Excel 1. Algemeen... 3 2. Aandachtspunten bij het importeren van verpakkingsfiches... 3 3. Verpakkingsfiches
Nadere informatieRAAD HET GETAL. Hoofdstuk 4. Het spelletje 'Raad het getal' Voorbeeld van uitvoering van 'Raad het getal' Hoofdstuk 4 Raad het getal 21
Hoofdstuk 4 Raad het getal 21 Hoofdstuk 4 RAAD HET GETAL In dit hoofdstuk behandelen we: import-statements Modules Argumenten while-statements Voorwaarden Blokken Boole-waarden Vergelijkingsoperatoren
Nadere informatieHet gebruik van een spreadsheetprogramma Algemene introductie in het gebruik van spreadsheets Fons Vernooij
Het gebruik van een spreadsheetprogramma Algemene introductie in het gebruik van spreadsheets Fons Vernooij Introductie Een spreadsheetprogramma kan heel veel. Zoveel zelfs dat je bijna vergeet dat hij
Nadere informatieHandleiding OSIRIS Self Service. Schermen en procedures in OSIRIS voor docenten en studenten
Schermen en procedures in OSIRIS voor docenten en studenten Onderhoud en versiebeheer Dit document is eigendom van de projectleider Implementatie Osiris Volg. Wijzigingen aan het document worden geïnitieerd
Nadere informatieJe gaat leren programmeren en een spel bouwen met de programmeertaal Python. Websites zoals YouTube en Instagram zijn gebouwd met Python.
1 Je gaat leren programmeren en een spel bouwen met de programmeertaal Python. Websites zoals YouTube en Instagram zijn gebouwd met Python. Voordat je leert programmeren, moet je jouw pc zo instellen dat
Nadere informatieAutomatische conversie banknummers naar het IBAN formaat
Automatische conversie banknummers naar het IBAN formaat Sdu Advocatensupport Sdu Uitgevers www.scherpinsupport.nl september 2013 1 Inhoudsopgave Overzicht... 3 Converteren banknummers... 3 Rapport maken...
Nadere informatieZelftest Programmeren in COBOL - deel I
Zelftest Programmeren in CBL - deel I Document: n1290test.fm 05/01/2016 ABIS Training & Consulting P.. Box 220 B-3000 Leuven Belgium TRAINING & CNSULTING INLEIDING BIJ DE ZELFTEST PRGRAMMEREN IN CBL -
Nadere informatieAPPLICATIEBOUW 2E COLLEGE: ONTWERPEN, GEBRUIKERSINTERFACES, VARIABELEN & EXPRESSIES. Onderdeel van SmartProducts
APPLICATIEBOUW 2E COLLEGE: ONTWERPEN, GEBRUIKERSINTERFACES, VARIABELEN & EXPRESSIES Onderdeel van SmartProducts INHOUD COLLEGE 2 module4.io.utwente.nl/applicatiebouw Software ontwerpen Gebruikersinterfaces,
Nadere informatieWaarden persistent (blijvend) opslaan gaat in bestanden (files). Lege tekst: eof
Programmeren Blok A Persistente opslag van waarden http://www.win.tue.nl/ wstomv/edu/2ip05/ College 4 Tom Verhoeff Technische Universiteit Eindhoven Faculteit Wiskunde en Informatica Software Engineering
Nadere informatieAAN DE SLAG MET QDAC VOLLEDIG
AAN DE SLAG MET QDAC VOLLEDIG INHOUD Het uiterlijk van QDAC... 2 De rode draad... 4 Openen van een Excel bestand... 4 Totaliseren van velden... 6 Sorteren van velden... 7 Analyses: Gaps... 8 Openen van
Nadere informatieDeel 1: Arduino kennismaking. Wat is een microcontroller, structuur van een programma, syntax,
Deel 1: Arduino kennismaking Wat is een microcontroller, structuur van een programma, syntax, Wat is een microcontroller Wat is een microcontroller? Microcontroller = kleine dedicated computer. - Beperkt
Nadere informatieUNIVERSITEIT ANTWERPEN FACULTEIT WETENSCHAPPEN DEPARTEMENT WISKUNDE-INFORMATICA OBERON CODE CONVENTIONS
UNIVERSITEIT ANTWERPEN FACULTEIT WETENSCHAPPEN DEPARTEMENT WISKUNDE-INFORMATICA OBERON CODE CONVENTIONS Laatste aanpassing: 15 oktober 2003 Inhoudsopgave 1 Bestandsnamen 3 2 Organizatie Bestanden 3 3 Indentatie
Nadere informatieC in plaats van Pascal
C in plaats van Pascal Jeroen Fokker januari 1993 3e, herziene druk INF/DOC-92-01 Vakgroep Informatica Inhoudsopgave 1 Inleiding 1 2 Opbouw van een programma 1 3 Lexicale structuur 3 4 Statements 3 5 Expressies
Nadere informatieV.2 Limieten van functies
V.2 Limieten van functies Beschouw een deelverzameling D R, een functie f: D R en zij c R. We willen het gedrag van f in de buurt van c bestuderen. De functiewaarde in c is daarvoor niet belangrijk, de
Nadere informatieHet programma in dit hoofdstuk vertelt een paar moppen aan de gebruiker.
Hoofdstuk 5 Moppen 36 Hoofdstuk 5 MOPPEN In dit hoofdstuk behandelen we: Het gebruik van het sleutelwoord end als argument in de print-functie om niet naar een nieuwe regel te gaan Escape-tekens Het gebruik
Nadere informatieHandleiding wordpress
Handleiding wordpress Wordpress versie 3.0.4 Handleiding versie 1.1 Auteur Website Geert Hoekzema www.geerthoekzema.nl www.geerthoekzema.nl geert@geerthoekzema.nl 1 Inhoudsopgave Inleiding... 3 Beginnen
Nadere informatieAFO 271 - Beheer parameters drukwerk
AFO 271 - Beheer parameters drukwerk 271.1 Inleiding De besteladministratie is een sterk geparametriseerde module. Een groot aantal van die parameters, met name op het vlak van het printen, is interactief
Nadere informatieVereiste kennis. 1 Java-editor. 2 Het compileren van een programma
3 Vereiste kennis Dit boek richt zich op het leren programmeren door het oefenen met programmeercodes. Veel theorie komt in het begin niet aan de orde. Dat is een grote uitdaging want het is niet makkelijk
Nadere informatie