17 Operaties op bits Bitoperatoren en bitexpressies

Maat: px
Weergave met pagina beginnen:

Download "17 Operaties op bits. 17.1 Bitoperatoren en bitexpressies"

Transcriptie

1 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 bitpatronen binnen een woord van de computer moeten worden bewerkt. Deze mogelijkheid biedt C door middel van bitoperatoren Bitoperatoren en bitexpressies Naast de bitvelden in gestructureerde waarden kent C zes operatoren om met bitwaarden van integer typen te werken. De zes bitoperatoren ziet u in tabel Categorie Bitoperator Symbool Bitoperatoren: (unair) bitsgewijs eencomplement bitsgewijs EN & bitsgewijs OF bitsgewijs exclusief OF Schuifoperatoren: schuif naar links «schuif naar rechts» Tabel 17-1 Zoals alle operatoren in C hebben de bitoperatoren een prioriteit en een associativiteit, die bepalen hoe expressies waarin deze en andere operatoren voorkomen, worden uitgewerkt. Verder kunnen alle bitoperatoren, behalve de unaire eencomplement-operator, in combinatie met de toekenningsoperator worden gebruikt. Alle bitoperatoren zijn alleen op integer typen toe te passen. Deze operatoren kunnen dus niet op float of double worden toegepast. Wij zullen ons hier beperken tot een machine met een 16 bits tweecomplement-representatie voor een int van normale lengte. Voor andere architecturen werken de operatoren ongeveer gelijk. De operator, de eencomplement-operator, berekent het bitsgewijze tegendeel van het (enige) operand. Op het operand zijn de gebruikelijke unaire conversies van toepassing. Elke bit in de binaire representatie van het resultaat is het tegendeel of complement van de bit in het operand. 1

2 Als de variabele t de decimale waarde 12 heeft, is de binaire representatie: Dan heeft t de representatie De tweecomplementwaarde van dit resultaat is equivalent met de decimale waarde -13. De bitoperatoren EN (&), OF ( )en exclusieve OF ( ) zijn operatoren met twee operanden. Elk operand wordt in termen van zijn binaire representatie behandeld. Elke bit van het resultaat wordt berekend door de betreffende operator op de corresponderende bits van de operanden uit te voeren. De semantiek van deze drie operatoren ziet u in tabel x y x & y x y x y Tabel 17-2 Uitgaande van de declaraties en initialisaties int p = 123, q = -17; geeft tabel 17-3 een aantal expressies, de binaire representatie van het resultaat van de expressie en de daarmee overeenkomende decimale waarde. Expressie Binaire representatie Decimale waarde p q p & q p q p q Tabel 17-3 Om een gewenste groep bits uit de waarde van een expressie te filteren, kan een masker worden gebruikt. De int constante 3 heeft bijvoorbeeld de binaire representatie

3 en kan met de bitoperator EN worden gebruikt om de twee minst significante bits van een int expressie te bepalen. Zo kent de expressie y = x & 3; aan y de meest rechtse (minst significante) twee bits van de waarde van de integer variabele x toe. Als x de waarde 17 heeft (binair ), dan krijgt y de waarde 1 (binair ). Om de waarde van een bepaalde groep bits uit de waarde van een expressie te bepalen, gebruiken we een masker met enen in op de gewenste bitposities en nullen op de andere. De hexadecimale constante 0x30 is bijvoorbeeld een masker voor de bits 5 en 6 van rechts. Om de minst significante byte van een 16-bits integer op nul te zetten, kunnen we het masker 0xFF00 gebruiken. Om ervoor te zorgen dat de code goed werkt, ongeacht de lengte van een integer, kunnen we het bitsgewijze complement gebruiken om het noodzakelijke masker te maken: linker-byte = woord & (-OxFF) Tenslotte zijn er de schuifoperatoren. Het zijn operatoren met twee integer operanden. Het rechter operand wordt naar een int geconverteerd. Het type van het resultaat is gelijk aan dat van het linker operand. De operator «schuift de binaire representatie van het linker operand zoveel plaatsen naar links als het rechter operand aangeeft. Aan de rechterkant wordt het resultaat met nullen aangevuld. De operator» schuift de binaire representatie van het linker operand zoveel plaatsen naar rechts als het rechter operand aangeeft. Hoe de vrijkomende bits aan de linkerkant eruitzien, hangt van de machine af. Als het linker operand geen teken heeft, wordt de linkerkant met nullen aangevuld. Als het linker operand wel een teken heeft, is het aan de implementator te kiezen of er links nullen of enen komen te staan. In sommige implementaties zijn het altijd nullen; in andere zijn het kopieën van de tekenbit geheel links. Het naar rechts schuiven van een waarde met teken is dus zeer slecht overdraagbaar en moet daarom vermeden worden. In tabel 17-4 ziet u een aantal expressies met de binaire representatie van het resultaat en de decimale waarde daarvan. Er is van uitgegaan dat de integer variabele p de decimale waarde 123 heeft. Expressie Binaire representatie Decimale waarde p p« p» (p»2) & 0xF Tabel

4 Bitexpressies kunnen worden gebruikt voor het comprimeren van data, waardoor minder geheugen nodig is. Op een machine waarop een unsigned int 32 bits beslaat, kunnen vier bytes in één woord worden ingepakt. De functie pak gebruikt de bitoperatoren om bytes te in te pakken: unsigned int pak (char a, char b, char c, char d) unsigned int gepakt; gepakt = a; gepakt = (gepakt «8) b; gepakt = (gepakt «8) c; gepakt = (gepakt «8) d; return (gepakt); De vier bytes in een ingepakte unsigned integer kunnen weer worden verkregen met de functie pakuit: #define MASKER 0XFF void pakuit (unsigned p, char *a, char *b, char *c, char *d) *a = p & MASKER; *b = (p» 8) & MASKER; *c = (p» 16) & MASKER; *d = (p» 24) & MASKER; 4

5 18.3 De goto-statement We besluiten onze behandeling van de programmeertaal C met de enige statement die nog over is. Met de goto-statement kunnen we de besturing van het ene naar het andere deel van een functie laten gaan. De goto-statement heeft de syntaxis goto label; waarin label een identifier is en goto een gereserveerd sleutelwoord. Labels worden niet gedeclareerd zoals variabelen. De label-identifier in een gotostatement moet gelijk zijn aan een label bij een statement in dezelfde functie. Een label wordt in feite gedeclareerd bij de statement waarbij de label hoort. In een gelabelde statement staat de label vóór de statement, ervan gescheiden door een dubbele punt: label : statement Als een goto-statement wordt uitgevoerd, gaat de besturing onmiddellijk naar de statement waar de gelijke label voor staat. Voorbeelden van gelabelde statements zijn: telop : a = b + c + d; fout : printf("fout tijdens uitvoering\n"); Voor een statement kunnen meerdere labels staan: fout : herstel : breekaf : exit(1); Dankzij het vrije formaat van C kunnen we dit voorbeeld ook zo schrijven: fout : herstel : breekaf : exit(1); Ook de lege statement kan gelabeld worden: niets : /* lege statement */ ; We hebben alle programma's in dit boek kunnen schrijven met alleen de besturingsstructuren opeenvolging, selectie en iteratie. Toch kunnen er situaties zijn die bepaalde aspecten van het programmaontwerp moeilijk maken als alleen deze drie structuren kunnen worden gebruikt. Een goed voorbeeld daarvan is het controleren van de geldigheid van invoer. Neem bijvoorbeeld een functie om de elementen van een driedimensionale integer array uit een file te lezen. Zonder controle op de invoer kan de functie er zo uitzien: 5

6 void input3d(fp, matrix, rijen, kolommen, vlakken) FILE *fp; int matrix[][kolommen][vlakken]; int rijen, kolommen, vlakken; int i, j, k; for (i = 0; i < rijen; i++) for (j = 0; j < kolommen; j++) for (k = 0; k < vlakken; k++) fscanf (f p, "%d", &matrix[ i l[j][k]); Een robuust programma controleert zijn invoer en doet iets speciaals als er een fout wordt gedetecteerd. In ons voorbeeld kunnen we bijvoorbeeld controleren of het eind van de file is bereikt. De functie fscanf levert EOF af als het eind van de file is bereikt. Met deze waarde, een logische vlag en extra condities in de for-statement komen we tot een nieuwe versie voor het programma. Als het eind van de file wordt aangetroffen, wordt er een foutrnelding gegenereerd en eindigt het programma. void input3d(fp, matrix, rijen, kolommen, vlakken) FILE *fp; int matrix[] [KOLOMMEN] [VLAKKEN]; int rijen, kolommen, vlakken; int i, j, k; Boolean eof_vlag = FALSE; for (i = 0; i < rijen &&!eof _vlag; i++) for (j = 0; j < kolommen &&!eof_vlag; j++) for (k = 0; k < vlakken &&!eof_vlag; k++) eof_vlag = (fscanf(fp, "%d", &matrix[il[j][k]) == EOF); if (eof_vlag) fprintf(stderr, "Onverwachte eof\n"); exit(1); Door de extra controles ziet de oplossing er wat onhandig uit. Een fatsoenlijker beëindiging krijgen we door vanuit de geneste lussen met een goto-statement naar een punt in de functie te springen waar iets aan de fout kan worden gedaan. 6

7 void input3d(fp, matrix, rijen, kolommen, vlakken) FILE *fp; int matrix[] [KOLOMMEN] [VLAKKEN]; int rijen, kolommen, vlakken; int i, j, k; for (i = 0; i < rijen; i++) for (j = 0; j < kolommen; j++) for (k = 0; k < vlakken; k++) if (fscanf(fp, "%d, &matrix[i][j][k]) == EOF) goto breekaf; return; breekaf : fprintf(stderr, "Onverwachte eof\n"); exit(1); Met een goto-statement kan in C de besturing naar elke andere statement in dezelfde functie worden overgedragen. Bepaalde manieren van springen kunnen bijzonder verwarrend zijn en moeten daarom worden vermeden. Een voorbeeld is springen naar een plek ergens midden in een samengestelde statement, waarbij de initialisatie van variabelen die boven aan de samengestelde statement worden gedeclareerd, worden overgeslagen: goto midden; int som = 0; deler = l; midden: 7

8 Andere vormen van springen die beter kunnen worden vermeden, zijn: 1. springen naar een plaats in het then-deel of het else-deel van een if-statement van buiten de if -statement; 2. springen naar een plaats in de body van een switch-statement; 3. springen naar een plaats in de body van een iteratiestatement. Het ongebreideld gebruik van de goto-statement moet worden vermeden. Het feit dat selectie en herhaling kunnen worden nagemaakt met if - en goto-statements, betekent niet dat dit een betere manier is. De sleutelwoorden while, for en do maken duidelijk dat het om herhaling gaat; if en switch duiden op selectie. Als we deze woorden in een programma zien staan, weten we onmiddellijk om welke vorm van besturing het gaat. Kijkt u bijvoorbeeld eens naar programma 18-5, dat hetzelfde doet als programma U ziet dat de herhaling nu is geïmplementeerd met een combinatie van if en goto, evenals de tests. De logica van het programma is veel minder duidelijk geworden. Programma 18-5 Een stuk tekst bestaat uit een reeks karakters die over een aantal regels loopt en door een punt wordt afgesloten. Tel het aantal 'woorden' in de tekst. Een woord is een karakterstring, van andere woorden gescheiden door witruimte (spaties, tabs en newlines). #include <stdio.h> #define PUNT. #define SPATIE #define TAB \t #define NEWLINE \n #define FALSE 0 #define TRUE 1 main() char c; /* invoerkarakter */ int woorden 0; /* regelteller */ int inwoord FALSE; /* woordindicator */ loop: c = getchar(); /* haal volgend karakter */ if (c == PUNT) /* afsluiten? */ 8

9 goto einde; /* ja - beëindig programma */ if (c == SPATIE c TAB c == NEWLINE) /* witruimte? inwoord = FALSE; /* buiten een woord */ goto lus; /* haal volgend karakter */ if (! inwoord) /* binnen een woord? */ inwoord = TRUE; /* nu in een woord */ woorden++; /* verhoog teller */ goto lus; /* opnieuw voor volgend karakter */ einde: printf("aantal woorden is %d\n", woorden); Doordat de goto-statement de programmeur in staat stelt de structuur die wordt aangebracht door while, if, enzovoort, te vernielen, is het een gevaarlijke statement. De goto-statement dient alleen in uitzonderlijke omstandigheden te worden gebruikt, als de vereiste vorm van besturing niet redelijk kan worden geformuleerd met de in hoofdstuk 6 ingevoerde besturingsprimitieven. Dit komt zo zelden voor, dat de goto-statement vrijwel kan worden vergeten. Dat voorkomt ook de uit deze statement voortvloeiende problemen. 9

Week 2 : Hoofdstukken 2 en 6; extra stof: inleiding pointers

Week 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 informatie

EE1400: Programmeren in C BSc. EE, 1e jaar, , 2e college

EE1400: 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 informatie

HOOFDSTUK 3. Imperatief programmeren. 3.1 Stapsgewijs programmeren. 3.2 If Then Else. Module 4 Programmeren

HOOFDSTUK 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 informatie

4 Invoer en uitvoer. 4.1 Toegang tot de standaardbibliotheek

4 Invoer en uitvoer. 4.1 Toegang tot de standaardbibliotheek 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.

Nadere informatie

Als een PSD selecties bevat, deelt de lijn van het programma zich op met de verschillende antwoorden op het vraagstuk.

Als 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 informatie

Universiteit van Amsterdam FNWI. Voorbeeld van tussentoets Inleiding programmeren

Universiteit van Amsterdam FNWI. Voorbeeld van tussentoets Inleiding programmeren Universiteit van Amsterdam FNWI Voorbeeld van tussentoets Inleiding programmeren Opgave 1: Wat is de uitvoer van dit programma? public class Opgave { static int i = 0 ; static int j = 1 ; int i = 1 ; int

Nadere informatie

C in plaats van Pascal

C 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 informatie

VAN HET PROGRAMMEREN. Inleiding

VAN HET PROGRAMMEREN. Inleiding OVERZICHT VAN HET PROGRAMMEREN Inleiding Als je leert programmeren lijkt het nogal overweldigend om die eerste stappen te doorworstelen. Er zijn dan ook heel wat programmeertalen (Java, Ruby, Python, Perl,

Nadere informatie

10 Meer over functies

10 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 informatie

Syntax- (compile), runtime- en logische fouten Binaire operatoren

Syntax- (compile), runtime- en logische fouten Binaire operatoren Inhoud Syntax- (compile), runtime- en logische fouten Binaire operatoren Operaties op numerieke datatypen Evaluatie van expressies, bindingssterkte Assignment operaties en short-cut operatoren Controle

Nadere informatie

Zelftest Inleiding Programmeren

Zelftest Inleiding Programmeren Zelftest Inleiding Programmeren Document: n0824test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST INLEIDING PROGRAMMEREN Deze

Nadere informatie

Talstelsels en getalnotaties (oplmodel)

Talstelsels 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 informatie

Een typisch programma in C en C++ bestaat uit een aantal onderdelen:

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 informatie

Voorbeeldtentamen Inleiding programmeren (IN1608WI), Oktober 2003, , Technische Universiteit Delft, Faculteit EWI, Afdeling 2.

Voorbeeldtentamen Inleiding programmeren (IN1608WI), Oktober 2003, , Technische Universiteit Delft, Faculteit EWI, Afdeling 2. Voorbeeldtentamen Inleiding programmeren (IN1608WI), Oktober 2003, 14.00-15.30, Technische Universiteit Delft, Faculteit EWI, Afdeling 2. Dit tentamen bestaat uit twee delen. Deel 1 (14.00-14.45, gesloten

Nadere informatie

Vakgroep CW KAHO Sint-Lieven

Vakgroep 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 informatie

Interne voorstelling. types en conversies. Binaire en andere talstelsels. Voorstelling van gegevens: bits en bytes

Interne voorstelling. types en conversies. Binaire en andere talstelsels. Voorstelling van gegevens: bits en bytes Interne voorstelling types en conversies Het geheugen wordt ingedeeld in een aantal gebieden van gelijke grootte. Een gebied van 8 bits noemt men een byte (nible een groep van bits). Een (computer)woord

Nadere informatie

Objective-C Basis. 23 april 2005, Eindhoven Patrick Machielse

Objective-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 informatie

Java. Basissyllabus. Egon Pas

Java. Basissyllabus. Egon Pas Java Basissyllabus Egon Pas 2011 BeanPole bvba Gasmeterlaan 92-9000 Gent BTW BE 472.902.516 Tel: + 32 9 224 42 17 Fax: + 32 9 223 62 88 www.beanpole.be info@beanpole.be 1 Programmeren 1.1 Hoe werkt een

Nadere informatie

Programmeren in Java les 3

Programmeren 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 informatie

Tentamen Computersystemen

Tentamen Computersystemen Tentamen Computersystemen baicosy06 2e jaar bachelor AI, 2e semester 23 september 2013 13u-15u IWO 4.04A (blauw), Academisch Medisch Centrum, Meidreef 29, Amsterdam ZuidOost Het is niet toegestaan communicatieapparatuur

Nadere informatie

OPDRACHT Opdracht 2.1 Beschrijf in eigen woorden wat het bovenstaande PSD doet.

OPDRACHT Opdracht 2.1 Beschrijf in eigen woorden wat het bovenstaande PSD doet. Les C-02: Werken met Programma Structuur Diagrammen 2.0 Inleiding In deze lesbrief bekijken we een methode om een algoritme zodanig structuur te geven dat er gemakkelijk programmacode bij te schrijven

Nadere informatie

http://www.liacs.nl/home/kosters/java/

http://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 informatie

Jörg R. Hörandel Afdeling Sterrenkunde

Jörg R. Hörandel Afdeling Sterrenkunde Jörg R. Hörandel Afdeling Sterrenkunde http://particle.astro.ru.nl/goto.html?prog1415 1 Jörg R. Hörandel Afdeling Sterrenkunde http://particle.astro.ru.nl/goto.html?prog1415 2 Alle studenten moeten op

Nadere informatie

PROGRAMMEREN 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. 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 informatie

Tentamen Programmeren in C (EE1400)

Tentamen 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 informatie

Gegevens invullen in HOOFDLETTERS en LEESBAAR, aub. Belgische Olympiades in de Informatica (duur : maximum 1u15 )

Gegevens invullen in HOOFDLETTERS en LEESBAAR, aub. Belgische Olympiades in de Informatica (duur : maximum 1u15 ) OI 2010 Finale 12 Mei 2010 Gegevens invullen in HOOFDLETTERS en LEESBAAR, aub VOORNAAM :....................................................... NAAM :..............................................................

Nadere informatie

Programmeren met Arduino-software

Programmeren 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 informatie

slides12.pdf December 14, 2001 1

slides12.pdf December 14, 2001 1 Onderwerpen Inleiding Algemeen 12 Getallen Getallen Representaties Rekenen Problemen Piet van Oostrum 12 dec 2001 INL/Alg-12 1 X INL/Alg-12 1 X Getallen Soorten getallen Wat is een getal? Experiment: met

Nadere informatie

Variabelen en statements in ActionScript

Variabelen 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 informatie

Week 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 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 informatie

PROS1E1 Gestructureerd programmeren in C Dd/Kf/Bd

PROS1E1 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 informatie

QR-code op aanvoerbrief 2.xx.0: Specificaties

QR-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 informatie

Pascal uitgediept Data structuren

Pascal uitgediept Data structuren Pascal uitgediept Data structuren MSX Computer & Club Magazine nummer 68-juni/juli 1994 Herman Post Scanned, ocr ed and converted to PDF by HansO, 2001 In deze aflevering wordt bekeken hoe zelf een datastructuur

Nadere informatie

Leren Programmeren met Visual Basic 6.0 Les 3+4. Hoofdstuk 4 : De Selectie

Leren Programmeren met Visual Basic 6.0 Les 3+4. Hoofdstuk 4 : De Selectie Leren Programmeren met Visual Basic 6.0 Les 3+4 Hoofdstuk 4 : De Selectie Visual Basic 6.0 1 Basisstructuren (herhaling) Sequentie (HK2) : Alle opdrachten gewoon na mekaar uitvoeren. Hier worden geen keuzes

Nadere informatie

REEKS I. Zaterdag 6 november 2010, 9u

REEKS I. Zaterdag 6 november 2010, 9u TEST INFORMATICA 1STE BACHELOR IN DE INGENIEURSWETENSCHAPPEN - ACADEMIEJAAR 2010-2011 REEKS I Zaterdag 6 november 2010, 9u NAAM :... VRAAG 1: MINSTENS [5 PUNTEN] Schrijf een methode minstens(), met twee

Nadere informatie

Inhoud leereenheid 4. Inleiding JavaScript. Introductie 99. Leerkern 100. Zelftoets 108. Terugkoppeling 109

Inhoud leereenheid 4. Inleiding JavaScript. Introductie 99. Leerkern 100. Zelftoets 108. Terugkoppeling 109 Inhoud leereenheid 4 Inleiding JavaScript Introductie 99 Leerkern 100 1 Leren programmeren in JavaScript 100 2 Chapter 1: Introduction 101 3 Chapter 2, paragrafen 1 t/m 5 102 4 Chapter 2, paragrafen 6

Nadere informatie

Een eenvoudig algoritme om permutaties te genereren

Een 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 informatie

compileren & interpreteren - compileren: vertalen (omzetten) - interpreteren: vertolken

compileren & interpreteren - compileren: vertalen (omzetten) - interpreteren: vertolken compileren & interpreteren - compileren: vertalen (omzetten) - interpreteren: vertolken - belangrijkste punten: - ontleden van de programmatekst - bijhouden van de datastructuren Data Structuren en Algoritmen

Nadere informatie

start -> id (k (f c s) (g s c)) -> k (f c s) (g s c) -> f c s -> s c

start -> 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

Lab Webdesign: Javascript 11 februari 2008

Lab Webdesign: Javascript 11 februari 2008 H3: HERHALINGSLUSSEN EN LOGICA Om de voorbeelden niet nodeloos lang te maken, zullen we in het vervolg niet altijd de SCRIPT-tags en de HTML-commentaarregels herhalen. Om de JavaScript-opdrachten --de

Nadere informatie

Dynamisch geheugen beheer

Dynamisch 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 informatie

HOOFDSTUK 3. Imperatief programmeren. 3.1 Stapsgewijs programmeren. 3.2 If Then Else. Informatie. Voorbeeld. Voorbeeld: toegangsprijs

HOOFDSTUK 3. Imperatief programmeren. 3.1 Stapsgewijs programmeren. 3.2 If Then Else. Informatie. Voorbeeld. Voorbeeld: toegangsprijs 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 informatie

RCL Arduino Workshop 1

RCL Arduino Workshop 1 RCL Arduino Workshop 1 Leren door doen april 2015 - slides voor RCL Arduino workshop 1 ON4CDU & ON8VQ Workshop Leren door doen Werken in een groep Beperkte tijd Alleen essentiele vragen stellen Thuis oefenen

Nadere informatie

Programmeren (1) Examen NAAM:

Programmeren (1) Examen NAAM: Schrijf al je antwoorden op deze vragenbladen (op de plaats die daarvoor is voorzien) en geef zowel klad als net af. Bij heel wat vragen moet je zelf Java-code schrijven. Hou dit kort en bondig. Je hoeft

Nadere informatie

continue in een for, while of do lus herhaalt de lus vroegtijdig. De volgende herhaling wordt onmiddellijk begonnen.

continue 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 informatie

{ auteur, toelichting }

{ auteur, toelichting } Programmeren Blok A Trilogie van (programmeer)talen http://www.win.tue.nl/ wstomv/edu/ip0/ College Syntaxis (vormleer): Hoe ziet t eruit, hoe schrijf je t? Tom Verhoeff Technische Universiteit Eindhoven

Nadere informatie

TEST INFORMATICA 1STE BACHELOR IN DE INGENIEURSWETENSCHAPPEN - ACADEMIEJAAR

TEST INFORMATICA 1STE BACHELOR IN DE INGENIEURSWETENSCHAPPEN - ACADEMIEJAAR TEST INFORMATICA 1STE BACHELOR IN DE INGENIEURSWETENSCHAPPEN - ACADEMIEJAAR 2011-2012 Zaterdag 5 november 2011, 9u30 NAAM :... VRAAG 1: EVEN VEEL [5 PUNTEN] Schrijf een methode evenveel(), met twee argumenten,

Nadere informatie

S u b n e t t e n. t h e t r u e s t o r y 1100 0000. 1010 1000. 0000 0001. 0000 0001 1111 1111. 1111 1111. 1111 1111. 0000 0000.

S u b n e t t e n. t h e t r u e s t o r y 1100 0000. 1010 1000. 0000 0001. 0000 0001 1111 1111. 1111 1111. 1111 1111. 0000 0000. S u b n e t t e n t h e t r u e s t o r y 1100 0000. 1010 1000. 0000 0001. 0000 0001 1111 1111. 1111 1111. 1111 1111. 0000 0000 Part 1 Inhoud Wat is een subnet?... 2 Waarom?... 3 Het begin.... 3 Een voorbeeld...

Nadere informatie

Vaak wil je een code schrijven, waar je verschillende acties uitvoeren voor verschillende beslissingen. Je kan daarbij keuzestructuren gebruiken.

Vaak wil je een code schrijven, waar je verschillende acties uitvoeren voor verschillende beslissingen. Je kan daarbij keuzestructuren gebruiken. PHP Les 5 : Interessante links: o http://www.dbzweb.be/moermant/ o http://www.ivobrugge.be/cursusweb/html4/formulieren.asp Vaak wil je een code schrijven, waar je verschillende acties uitvoeren voor verschillende

Nadere informatie

FAT32 disk structuur 2007 stam.blogs.com

FAT32 disk structuur 2007 stam.blogs.com FAT32 disk structuur 2007 stam.blogs.com Master Boot Record De Master Boot Record is vrijwel hetzelfde voor alle besturingssystemen. Het ligt binnen de eerste sector van de harddisk: Cylinder 0, Head 0,

Nadere informatie

Tentamen Computersystemen

Tentamen Computersystemen Tentamen Computersystemen baicosy6 2e jaar bachelor AI, 2e semester 21 oktober 213, 9u-11u OMHP D.9 vraag 1 Van een Single Cycle Harvard machine hebben de componenten de volgende propagation delay time:

Nadere informatie

Javascript oefenblad 1

Javascript oefenblad 1 Leer de basis van Javascript. Javascript oefenblad 1 Niels van Velzen Javascript oefenblad 1 Pagina 2 Inleiding Javascript is niet altijd even makkelijk. Vooral aan het begin is het even wennen hoe de

Nadere informatie

Een topprogrammeur in het OO programmeren is Graig Larman. Hij bedacht de volgende zin:

Een 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 informatie

Bij dit hoofdstukken horen geen opgaven.

Bij dit hoofdstukken horen geen opgaven. 6. Programmeertalen Een computer begrijpt eigenlijk alleen maar binaire code (bestaande uit 1 en 0). Om hem/haar makkelijk opdrachten te geven zijn programmeertalen ontwikkeld. Deze moeten een goed gedefinieerde

Nadere informatie

Java Les 3 Theorie Herhaal structuren

Java Les 3 Theorie Herhaal structuren Java Les 3 Theorie Herhaal structuren Algemeen Een herhaal structuur een is programmeertechniek waarbij bepaalde Java instructies worden herhaald net zo lang tot een bepaalde voorwaarde is bereikt. Een

Nadere informatie

VBA voor Doe het Zelvers deel 20

VBA voor Doe het Zelvers deel 20 VBA voor Doe het Zelvers deel 20 Handleiding van Auteur: leofact Augustus 2015 handleiding: VBA voor Doe het Zelvers deel 20 Vorige aflevering In het vorige deel werd besproken hoe je de structuur en vensteropbouw

Nadere informatie

van PSD naar JavaScript

van PSD naar JavaScript 2015 van PSD naar JavaScript F. Vonk versie 2 19-9-2015 inhoudsopgave 1. inleiding... - 2-2. ontwikkelomgeving... - 3-3. programmeerconcepten... - 4 - statement... - 4 - sequentie... - 4 - variabele en

Nadere informatie

Talstelsels, getalnotaties en Ascii code

Talstelsels, getalnotaties en Ascii code Talstelsels, getalnotaties en Ascii code 1 Algemeenheden Digitale systemen werken met nullen en enen omdat dit elektronisch gemakkelijke te verwezenlijken is. De transistor wordt in digitale systemen als

Nadere informatie

Arduino Workshop 1 Zuid-Limburg

Arduino Workshop 1 Zuid-Limburg Arduino Workshop 1 Zuid-Limburg Leren door doen Mei 2016 - slides voor Arduino workshop 1 v2.5 Zuid-Limburg PA3CZS, PA0FOT, ON4CDU, PE1EAM 1 Workshop 1 Workshop 1 concentreert op kennismaking en eenvoudige

Nadere informatie

Java virtuele machine JVM

Java virtuele machine JVM Implementatie Java Java virtuele machine JVM Java programma vertaald naar byte code instructies Byte code instructies uitgevoerd door JVM JVM is processor architectuur kan in principe in hardware worden

Nadere informatie

Faculteit Elektrotechniek - Leerstoel ES Tentamen Schakeltechniek. Vakcode 5A050, 17 november 2004, 9:00u-12:00u

Faculteit Elektrotechniek - Leerstoel ES Tentamen Schakeltechniek. Vakcode 5A050, 17 november 2004, 9:00u-12:00u achternaam : voorletters : identiteitsnummer : opleiding : Tijdens dit tentamen is het gebruik van rekenmachine of computer niet toegestaan. Vul je antwoorden in op dit formulier. Je dient dit formulier

Nadere informatie

Turbo Pascal deel 3 MSX CLUB MAGAZINE 36. Erik van Bilsen. Scanned, ocr ed and converted to PDF by HansO, 2001

Turbo Pascal deel 3 MSX CLUB MAGAZINE 36. Erik van Bilsen. Scanned, ocr ed and converted to PDF by HansO, 2001 Turbo Pascal deel 3 MSX CLUB MAGAZINE 36 Erik van Bilsen Scanned, ocr ed and converted to PDF by HansO, 2001 In deze aflevering van de cursus gaan we scrollen en wel smooth-scroll in maar liefst vier richtingen.

Nadere informatie

Lineaire data structuren. Doorlopen van een lijst

Lineaire data structuren. Doorlopen van een lijst Lineaire data structuren array: vast aantal data items die aaneensluitend gestockeerd zijn de elementen zijn bereikbaar via een index lijst: een aantal individuele elementen die met elkaar gelinkt zijn

Nadere informatie

Programmeermethoden. Recursie. week 11: november kosterswa/pm/

Programmeermethoden. Recursie. week 11: november kosterswa/pm/ Programmeermethoden Recursie week 11: 21 25 november 2016 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Pointers Derde programmeeropgave 1 Het spel Gomoku programmeren we als volgt: week 1: pointerpracticum,

Nadere informatie

PROGRAMMEREN IN CURSUS VOOR NATUUR- EN STERRENKUNDESTUDENTEN 1998/ 99 MAURITS WIJZENBEEK. 11 december 2003

PROGRAMMEREN IN CURSUS VOOR NATUUR- EN STERRENKUNDESTUDENTEN 1998/ 99 MAURITS WIJZENBEEK. 11 december 2003 PROGRAMMEREN IN C CURSUS VOOR NATUUR- EN STERRENKUNDESTUDENTEN 1998/ 99 MAURITS WIJZENBEEK 11 december 2003 ii Inhoudsopgave 1 Inleiding en opzet cursus. 1 2 De computer 3 2.1 Digitale en analoge elektronica

Nadere informatie

Mijn eerste C programma

Mijn eerste C programma Herhaling 1 Mijn eerste C programma 2 Gebruik van de C compiler: gcc -o voorbeeld: gcc -o taak1 taak1.c De instructies in taak1.c woorden naar machinetaal vertaalt --> taak1.

Nadere informatie

Voorbeeld: Simulatie van bewegende deeltjes

Voorbeeld: Simulatie van bewegende deeltjes Voorbeeld: Simulatie van bewegende deeltjes Simulatie - object Ruimte - objecten Deeltje - objecten Button - objecten Simulatie Samenhang van objecten sim geërfd van Form stap zelf gedeclareerd auto r1

Nadere informatie

Python voor Natuur- en Sterrenkundigen Week 1

Python voor Natuur- en Sterrenkundigen Week 1 Python voor Natuur- en Sterrenkundigen Week 1 Kristian Rietveld http://liacs.leidenuniv.nl/~rietveldkfd/courses/pmpy2015/ Wat is Python & Waarom Python? "Scripttaal", ontworpen door Guido van Rossum eind

Nadere informatie

Python. Vraag 1: Expressies en types. Vraag 1 b: Types -Ingebouwde functies- Vraag 1 a 3/10/14

Python. 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 informatie

Jörg R. Hörandel Afdeling Sterrenkunde http://particle.astro.ru.nl/goto.html?prog1516

Jörg R. Hörandel Afdeling Sterrenkunde http://particle.astro.ru.nl/goto.html?prog1516 Jörg R. Hörandel Afdeling Sterrenkunde http://particle.astro.ru.nl/goto.html?prog1516 1 Jörg R. Hörandel Afdeling Sterrenkunde http://particle.astro.ru.nl/goto.html?prog1516 2 wiskunde om 8:45 in HG00.023

Nadere informatie

DDS chips. DDS = Direct Digital (frequency) Synthesis. Output = sinusvormig signaal. Maximum frequentie = ½ klokfrequentie

DDS chips. DDS = Direct Digital (frequency) Synthesis. Output = sinusvormig signaal. Maximum frequentie = ½ klokfrequentie www.arduino.cc Arduino en DDS DDS chips DDS = Direct Digital (frequency) Synthesis Output = sinusvormig signaal Maximum frequentie = ½ klokfrequentie Frequentie bepaald door tuning word Grootste fabrikant:

Nadere informatie

Let op dat de scoping regels gerespecteerd blijven; het volgende voorbeeld mag geen fout melden.

Let op dat de scoping regels gerespecteerd blijven; het volgende voorbeeld mag geen fout melden. Vrije Universiteit Brussel Faculteit Wetenschappen Vakgroep Computerwetenschappen Academiejaar 2009 2010: tweede examenzittijd Interpretatie van Computerprogrammaʼs I schriftelijke test Voorafgaandelijk:

Nadere informatie

colleges recursieve datastructuren college 9 prioriteit van operatoren prioriteit in recursive descent parser

colleges recursieve datastructuren college 9 prioriteit van operatoren prioriteit in recursive descent parser colleges recursieve datastructuren college 9 interpreteren: waarde van bomen bepalen transformeren: vorm van bomen veranderen parseren herkennen van expressie in de tekst herkennen van functies onderwerp

Nadere informatie

import java.io.*; één klasse public class Hallo { public static void main (String[] a) ...met één functie System.out.println("Hallo!

import java.io.*; één klasse public class Hallo { public static void main (String[] a) ...met één functie System.out.println(Hallo! Voorbeeld Java-programma import java.io.*; één klasse...met één functie...met één opdracht public class Hallo { public static void main (String[] a) { System.out.println("Hallo!"); accolades begrenzen

Nadere informatie

Cursus Algoritmiek - - - najaar 2005

Cursus Algoritmiek - - - najaar 2005 Cursus Algoritmiek - - - najaar 2005 Practicumopdracht 4 : werken met kale gegevensbestanden 1. Achtergrond In de 2 e en de 3 e practicumopdracht heb je al kennis gemaakt met het via het toetsenbord laten

Nadere informatie

5.7.1 Priemgetallen Driehoek van Pascal Matrix-product Begrippen... 42

5.7.1 Priemgetallen Driehoek van Pascal Matrix-product Begrippen... 42 Inhoudsopgave 1 Algoritmes en computerprogramma s 1 1.1 Basiselementen van een computer............................ 1 1.2 Algoritmes........................................ 1 1.3 Som van twee getallen..................................

Nadere informatie

Binair Binair = tweewaardig Beperkt aantal mogelijke waarden (discreet aantal in amplitude) Wij zijn gewoon aan decimaal (tiendelig)

Binair Binair = tweewaardig Beperkt aantal mogelijke waarden (discreet aantal in amplitude) Wij zijn gewoon aan decimaal (tiendelig) Binair Binair = tweewaardig Beperkt aantal mogelijke waarden (discreet aantal in amplitude) Wij zijn gewoon aan decimaal (tiendelig) In elektronische realisatie zijn 10 verschillende toestanden moeilijk

Nadere informatie

Getalformaten, timers en tellers

Getalformaten, timers en tellers Getalformaten, timers en tellers S_CU CU S PV R CV DEZ CV_BCD S_ODT S TV BI R BCD 1 pagina 1 Getalformaten (16 bits) PG CPU BCD W#16#296 Voorteken (+) 2 9 6 0 0 0 0 0 0 1 0 1 0 0 1 0 1 1 0 Positieve getallen

Nadere informatie

Planning. 1. Mini College. 2. Introductiecursus Imperatief Programmeren. 3. Crash and Compile (vanaf 17:00 uur)

Planning. 1. Mini College. 2. Introductiecursus Imperatief Programmeren. 3. Crash and Compile (vanaf 17:00 uur) Planning 1. Mini College 2. Introductiecursus Imperatief Programmeren 3. Crash and Compile (vanaf 17:00 uur) Geschiedinis van de Codemonkeys imperatief programmeren voor beginners Geschiedenis van de Codemonkey

Nadere informatie

Registers & Adressering. F. Rubben, ing 2008-2010

Registers & Adressering. F. Rubben, ing 2008-2010 Registers & Adressering, ing 2008-2010 Inhoud Leerstof tot nu toe Opbouw registers Benaming registers Opbouw data Verloop programma Leerstof tot nu toe: Bouw PLC Intern Extern fabrikanten Aansluiten I/O

Nadere informatie

NAAM: Programmeren 1 Examen 29/08/2012

NAAM: Programmeren 1 Examen 29/08/2012 Programmeren 29 augustus 202 Prof. T. Schrijvers Instructies Schrijf al je antwoorden op deze vragenbladen (op de plaats die daarvoor is voorzien). Geef ook je kladbladen af. Bij heel wat vragen moet je

Nadere informatie

Talstelsels. Het is belangrijk om de volgende twee zaken uit elkaar te houden:

Talstelsels. Het is belangrijk om de volgende twee zaken uit elkaar te houden: Talstelsels 1. Inleiding Wie professioneel met computers omgaat, krijgt te maken met verschillende talstelsels: tweetallig (binair), zestientallig (hexadecimaal) en soms ook achttallig (octaal). Dit verhaal

Nadere informatie

THEORIE TALSTELSELS. 1 x 10 0 = 1 (een getal tot de macht 0 = 1) 8 x 10 1 = 80 2 x 10 2 = x 10 3 = Opgeteld: 9281d(ecimaal)

THEORIE TALSTELSELS. 1 x 10 0 = 1 (een getal tot de macht 0 = 1) 8 x 10 1 = 80 2 x 10 2 = x 10 3 = Opgeteld: 9281d(ecimaal) THEORIE TALSTELSELS De binaire code Het geheugenelement van de computer kan slechts twee verschillende waarden bevatten. De schakelingen uit de computer werken daarom met een tweetallig ofwel binair stelsel.

Nadere informatie

Online c++ leren programmeren:

Online 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 informatie

Automaten. Informatica, UvA. Yde Venema

Automaten. Informatica, UvA. Yde Venema Automaten Informatica, UvA Yde Venema i Inhoud Inleiding 1 1 Formele talen en reguliere expressies 2 1.1 Formele talen.................................... 2 1.2 Reguliere expressies................................

Nadere informatie

Inleiding programmeren

Inleiding programmeren Inleiding programmeren Docent: José Lagerberg Assistenten: Robin de Vries, Jordy Perlee, Dimitri Belfor, Stephen Swatman, Erik Kooistra, Daan Kruis, Daniel Louwrink Cursusinformatie: https://staff.fnwi.uva.nl/j.m.lagerberg

Nadere informatie

C-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 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 informatie

Objectgeoriënteerd programmeren in Java 1

Objectgeoriënteerd programmeren in Java 1 Objectgeoriënteerd programmeren in Java 1 CPP Javaprogrammeur Bijeenkomst 3 Leereenheden 7, 8, 9 De Java API Java bevat een grote bibliotheek standaardklassen: de Java API Voorbeelden java.lang basisklassen

Nadere informatie

Onafhankelijke verzamelingen en Gewogen Oplossingen, door Donald E. Knuth, The Art of Computer Programming, Volume 4, Combinatorial Algorithms

Onafhankelijke verzamelingen en Gewogen Oplossingen, door Donald E. Knuth, The Art of Computer Programming, Volume 4, Combinatorial Algorithms Onafhankelijke verzamelingen en Gewogen Oplossingen, door Donald E. Knuth, The Art of Computer Programming, Volume 4, Combinatorial Algorithms Giso Dal (0752975) Pagina s 5 7 1 Deelverzameling Representatie

Nadere informatie

Seriële bluetooth verbinding ATmega128

Seriële bluetooth verbinding ATmega128 Opdracht2 Bij deze opdracht worden verschillende taken gemaakt. De taken communiceren onderling met elkaar via een message queue of synchroniseren met elkaar via semaforen. A: Maak een taak aan die de

Nadere informatie

Bij elkaar behorende instructies die een probleem oplossen of een taak uitvoeren.

Bij elkaar behorende instructies die een probleem oplossen of een taak uitvoeren. Programma Structuur Diagram: Een gestructureerd programma is een programma dat we gemakkelijk kunnen begrijpen. Dit kunnen we bereiken door het programma op te bouwen uit drie programmacomponenten: Als

Nadere informatie

Proeftentamen in1211 Computersystemen I (Opm: de onderstreepte opgaven zijn geschikt voor de tussentoets)

Proeftentamen in1211 Computersystemen I (Opm: de onderstreepte opgaven zijn geschikt voor de tussentoets) TECHNISCHE UNIVERSITEIT DELFT Faculteit Informatietechnologie en Systemen Afdeling ISA Basiseenheid PGS Proeftentamen in1211 Computersystemen I (Opm: de onderstreepte opgaven zijn geschikt voor de tussentoets)

Nadere informatie

Hoofdstuk 0. Van Python tot Java.

Hoofdstuk 0. Van Python tot Java. Hoofdstuk 0. Van Python tot Java. In dit eerste hoofdstuk maken we de overstap van Python naar Java. We bespreken de verschillen en geven wat achtergrondinformatie. In het volgende hoofdstuk gaan we dieper

Nadere informatie

Uitwerkingen Tweede deeltentamen Imperatief programmeren Vrijdag 15 oktober 2010, 11.00-13.00 uur

Uitwerkingen Tweede deeltentamen Imperatief programmeren Vrijdag 15 oktober 2010, 11.00-13.00 uur Uitwerkingen Tweede deeltentamen Imperatief programmeren Vrijdag 15 oktober 2010, 11.00-13.00 uur 1. (2 punten per deelvraag) Deze opgave bestaat uit een aantal tekstvragen. Houd het antwoord kort: een

Nadere informatie

Inleiding Digitale Techniek

Inleiding Digitale Techniek Inleiding Digitale Techniek Week 4 Binaire optellers, tellen, vermenigvuldigen, delen Jesse op den Brouw INLDIG/25-26 Optellen Optellen is één van meest gebruikte rekenkundige operatie in digitale systemen.

Nadere informatie

Datastructuren: stapels, rijen en binaire bomen

Datastructuren: stapels, rijen en binaire bomen Programmeermethoden Datastructuren: stapels, rijen en binaire bomen week 12: 23 27 november 2015 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Inleiding In de informatica worden Abstracte DataTypen (ADT s)

Nadere informatie

4EE11 Project Programmeren voor W. College 1, 2008 2009, Blok D Tom Verhoeff, Software Engineering & Technology, TU/e

4EE11 Project Programmeren voor W. College 1, 2008 2009, Blok D Tom Verhoeff, Software Engineering & Technology, TU/e 4EE11 Project Programmeren voor W College 1, 2008 2009, Blok D Tom Verhoeff, Software Engineering & Technology, TU/e 1 Betrokkenen Circa 100 deelnemers (W, 3e-jaars) Joris Remmers (W) Patrick Anderson

Nadere informatie

Beknopte handleiding voor Derive 5.0 for Windows

Beknopte handleiding voor Derive 5.0 for Windows - Lesbrief Beknopte handleiding voor Derive 5.0 for Voorspelbaarheid en Populaties in de tijd Doelgroep Klas 5 t/m 6 havo en vwo Vakken en domeinen Algemene natuurwetenschappen VWO Wiskunde VWO: A domein

Nadere informatie

Informatie over. 5VWO DT51: JavaLogo. Casper Bezemer. Toetsweek 1 13 oktober 2016

Informatie over. 5VWO DT51: JavaLogo. Casper Bezemer. Toetsweek 1 13 oktober 2016 Informatie over 5VWO DT51: JavaLogo Casper Bezemer Toetsweek 1 13 oktober 2016 1 Informatie Voor toets DT51 wordt jou gevraagd Java(Logo) programma s te schrijven. De eerste opdracht is een Krimpfiguur,

Nadere informatie

Functies. Huub de Beer. Eindhoven, 4 juni 2011

Functies. Huub de Beer. Eindhoven, 4 juni 2011 Functies Huub de Beer Eindhoven, 4 juni 2011 Functies: je kent ze al Je hebt al verschillende PHP functies gebruikt: pi() om het getal π uit te rekenen. sin( 0.453 ) om het de sinus van het getal 0.453

Nadere informatie