Programmeren in Java les 3



Vergelijkbare documenten
Modelleren en Programmeren

Modelleren en Programmeren

Modelleren en Programmeren

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

Universiteit van Amsterdam FNWI. Voorbeeld van tussentoets Inleiding programmeren

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

Overerving & Polymorfisme

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

6,1. Samenvatting door een scholier 1809 woorden 28 oktober keer beoordeeld. Informatica

Vakgroep CW KAHO Sint-Lieven


Modelleren en Programmeren

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

Objectgericht programmeren 1.

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

APPLICATIEBOUW 3E COLLEGE: OBJECT GEORIËNTEERD PROGRAMMEREN, METHODEN, PARAMETERS, SCOPE VAN VARIABELEN. Onderdeel van SmartProducts

Kwis (3) class X { public void a() { System.out.println("x"); public static void main(string[] args) { X x = new X();

Modelleren en Programmeren

Hoofdstuk 0. Van Python tot Java.

Ingebouwde klassen & methodes

Tentamen Imperatief en Object-georiënteerd programmeren in Java voor CKI

Datatypes Een datatype is de sort van van een waarde van een variabele, veel gebruikte datatypes zijn: String, int, Bool, char en double.

Javascript oefenblad 1

Variabelen en statements in ActionScript

Programmeren met Arduino-software

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

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

Vereiste kennis. 1 Java-editor. 2 Het compileren van een programma

Programmeren in Java 3

SPOJ oplossingen Gilles Callebaut 7 augustus 2015

Uitwerking Aanvullend tentamen Imperatief programmeren Woensdag 24 december 2014, uur

Java Les 3 Theorie Herhaal structuren

Zelftest Programmeren in Java

Tentamen Object Georiënteerd Programmeren TI oktober 2014, Afdeling SCT, Faculteit EWI, TU Delft

Modelleren en Programmeren

Syntax van opdracht. opdracht. expressie. variabele. = expressie ; klasse naam. methode naam. property naam += object

Deel 1: Arduino kennismaking. Wat is een microcontroller, structuur van een programma, syntax,

Java. Basissyllabus. Egon Pas

Zelftest Inleiding Programmeren

MINICURSUS PHP. Op dit lesmateriaal is een Creative Commons licentie van toepassing Sebastiaan Franken en Rosalie de Klerk Bambara

slides12.pdf December 14,

Modelleren en Programmeren

Modelleren en Programmeren

Recursie. public static int faculteit( int n ){ // Deze functie berekent n! // pre: n = N en n >= 0 // post: faculteit = N!

Een korte samenvatting van enkele FORTRAN opdrachten

Tweede deeltentamen Mobiel programmeren - versie 1 Vrijdag 2 februari 2018, uur

Opdrachten herhalen. public void tekenscherm (object o, PEA pea) { int x; x = 1; zolang de voorwaarde geldig is

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

Objectgericht programmeren 1.

Arduino Cursus, Deel 2 Programmeren. Simon Pauw, ZB45, Amsterdam

Windows-applicatie. using System.Windows.Forms; using System.Drawing; class HalloWin1 { static void Main ( )

Inleiding programmeren

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

Controle structuren. Keuze. Herhaling. Het if statement. even1.c : testen of getal even of oneven is. statement1 statement2

Java spiekbrief. Commentaar. Definitie van een methode. Types. Variabelendeclaratie. Definitie van een klasse. Namen. Definitie van een veld

Modelleren en Programmeren: Prolog

Voorbeeld: Simulatie van bewegende deeltjes

VAN HET PROGRAMMEREN. Inleiding

Lab Webdesign: Javascript 3 maart 2008

UNIVERSITEIT ANTWERPEN FACULTEIT WETENSCHAPPEN DEPARTEMENT WISKUNDE-INFORMATICA OBERON CODE CONVENTIONS

Scala. Korte introductie. Sylvia Stuurman

Objectgeoriënteerd programmeren in Java 1

Uitwerking Tweede deeltentamen Imperatief programmeren - versie 1 Vrijdag 21 oktober 2016, uur

Datastructuren en algoritmen

Java spiekbrief. Commentaar. Definitie van een methode. Types. Variabelendeclaratie. Definitie van een klasse. Namen. Definitie van een veld

GEDETAILLEERDE INHOUD

[8] De ene 1 is de andere niet

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

IMP Uitwerking week 13

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

APPLICATIEBOUW 2E COLLEGE: ONTWERPEN, GEBRUIKERSINTERFACES, VARIABELEN & EXPRESSIES. Onderdeel van SmartProducts

Opdracht 4: Dodo wordt slimmer

Ontwerp van Informatiesystemen

Robocode. Inleiding tot programmeren

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

Constanten. Variabelen. Expressies. Variabelen. Constanten. Voorbeeld : varid.py. een symbolische naam voor een object.

Programmeren in Java 3

Modulewijzer Tirdat01

RCL Arduino Workshop 1

PYTHON REEKS 1: BASICS. Mathias Polfliet

OEFENINGEN PYTHON REEKS 1

Functies. Huub de Beer. Eindhoven, 4 juni 2011

Informatica: C# WPO 11

Oefeningen Java Oplossingen

VAN HET PROGRAMMEREN. Inleiding. Het spiraalmodel. De programmeertaal. vervolgens de berekening van het totale bedrag, incl. BTW:

Uitwerking Aanvullende toets Mobiel programmeren - versie 1 Woensdag 23 maart 2016, uur

Programmeren (1) Examen NAAM:

Transcriptie:

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 gebroken getal, bijv. 3.14159274932084 char: een character, bijv. a,b,c,enz boolean: heeft de waarde true of false

Werken met variabelen Twee stappen: declareren: kenbaar maken dat je een variabele wilt gebruiken initializeren: de variabelen een waarde geven wijzigen: aan de variabele een nieuwe waarde toekennen lezen: de waarde van een variabele gebruiken

Declareren en initializeren In de main methode: declareren: int x; initializeren: x=5; Meerdere variabelen: declareren: int x,y,z; initializeren: x=5,y=10,z=30.342;

Variabelen gebruiken Standaard operaties: optellen: x=y+z; aftrekken: y=x-z+y; delen: x=z/3; vermenigvuldigen: x=x*y*z;

De = operator De expressie x=x+1; is in Java toegestaan, terwijl dit wiskundig onjuist is... Tip: Spreek het = teken uit als wordt...

Variabelen printen Gebruik een simpele println();: int x=34,y=65; System.out.println("De waarde van x: "+x+". De waarde van y: "+y); Uitvoer: De waarde van x: 34. De waarde van y: 65

Integers afkappen Wat nu? int x=3,y=2,z; z=x/y; System.out.println("De waarde van z: "+z); integers worden niet afgerond integers worden afgekapt: alles na de komma verdwijnt! De waarde is 1.5, de uitvoer wordt dus: De waarde van z: 1

Strings een String is een lijstje characters, bijv. hallo in Java is een String geen ingebakken datatype strings zijn objecten op strings kan men operaties uitvoeren door methodes aan te roepen

Strings en variabelen public class application public static void main(string[] args) int a=5; String s= hallo allemaal ;... float x=2.54;...

In het geheugen a 5 s hallo allemaal x 2.54

Strings manipuleren... String s="hallo allemaal"; s=s.replace( a, o ); System.out.println(s);... Uitvoer: hollo ollemool

String methodes Naast de replace methode bestaan er een groot aantal andere methodes om strings te manipuleren: characters wissen characters naar lowercase / uppercase volgorde omdraaien zoeken naar een character aantal characters tellen aantal voorkomens van een character tellen etc. zie boek!

Strings en variabelen converteren Mag dit? een string is een lijstje characters een float is een variabele float x; String s= 3.1415 x=s;

Strings en variabelen converteren Mag dit? een string is een lijstje characters een float is een variabele float x; String s= 3.1415 x=s; Nee! Voor een computer is 3.1415 een lijstje van 6 characters en dus geen float.

Variabelen naar strings converteren Met de methode valueof kan men een variabele naar een string converteren. Voorbeeld: int x=345; String s=string.valueof(x);

Strings naar variabelen converteren String x= 1234 ; int x=integer.parseint(x); x=x+1; System.out.println( de waarde van x: +x); Uitvoer: de waare van x: 1235

De if constructie gebruik: conditionele uitvoer van statements reageren op input reageren op andere programma s

Voorbeeld int x=5,y=10;...... if((x*y)>40) System.out.println( x is groter dan 40 );......

algemeen if( logische expressie ) statements

De if else constructie int x=5,y=10;...... if((x*y)>40) System.out.println( x maal y is groter dan 40 ); else System.out.println( x maal y is kleiner of gelijk aan 40......

algemeen if( logische expressie ) statements else statements

De if else if constructie int x=5,y=10;...... if(x>1&&y>50) doe_iets; else if(x>1&&y<50) System.out.println( x is groter dan 1 en y is kleiner dan else...

algemeen if( logische expressie ) statements else if(logische expressie) statements else statements

Veel voorkomende constructies post increment: x=x+1; x++; pre increment: x=x+1; ++x; post decrement: x=x-1; x--; pre decrement: x=x-1; --x; x=x+2; x=x*2; x+=2; x*=2;

Pre en post increment int x,y=10; x=y++; System.out.println("de waarde van x: "+x); Uitvoer?

Pre en post increment int x,y=10; x=y++; System.out.println("de waarde van x: "+x); Uitvoer? De waarde van x: 10 Post increment: eerst uitrekenen, dan ophogen

Pre en post increment int x,y=10; x=++y; System.out.println("de waarde van x: "+x); Uitvoer?

Pre en post increment int x,y=10; x=++y; System.out.println("de waarde van x: "+x); Uitvoer? De waarde van x: 11 Pre increment: eerst ophogen, dan uitrekenen

Loops Maken het mogelijk stukjes code een bepaald aantal malen te herhalen drie soorten: while... do do... while for kunnen met het break statement worden doorbroken.

While loop: flow of control voldaan conditie niet voldaan while blok

While loop: algemene schrijfwijze... while(conditie) body van while loop...

While loop: voorbeeld int i=20; while(i<40) System.out.println("De waarde van i: "+i); i++;

While loop: voorbeeld int i=40; while(i>20) System.out.println("De waarde van i: "+i); i--;

Do while loop is bijna hetzelfde als de while loop, maar: evaluatie van de conditie wordt aan het einde van de loop uitgevoerd, derhalve: wordt tenminste één maal uitgevoerd, ongeacht de conditie

Do while loop: flow of control do blok conditie niet voldaan voldaan

Do while loop: Algemene schrijfwijze do... statements;... while(conditie)

Do while loop: voorbeeld int i=0; do System.out.println("De waarde van i: "+i); i++; while(i<20)

While en do while loop: flow of control do blok voldaan conditie while blok niet voldaan voldaan conditie niet voldaan

For loop veel gebruikt voor loops, waarvan van tevoren bekend is hoe vaak iets moet worden uitgevoerd

For loop: flow of control initialisatie conditie voldaan for blok niet voldaan update

For loop: algemene schrijfwijze Algemene schrijfwijze: for(start expressie;voorwaarde expressie;update expressie) body van for loop start expressie: met welke waarde moet de loop beginnen? voorwaarde expressie: is aan de voorwaarde voldaan? update expressie: verander een variabele (gewoonlijk ophogen)

For loop: werking 1 evalueer de start expressie (variabelen aanmaken/initializeren) 2 evalueer de voorwaarde expressie 3 voorwaarde voldaan? voer de loop body uit, anders stop 4 evalueer de update expressie 5 terug naar stap 2

For loop: voorbeeld int i; for(i=0;i<10;i=i+1) System.out.println("De waarde van i: "+i); Declaratie en initialisatie van de loop variabele op twee regels.

For loop: voorbeeld for(int i=0;i<10;i=i+1) System.out.println("De waarde van i: "+i); Declaratie en initialisatie van de loop variabele op in één keer.

For loop: voorbeeld for(int i=0;i<10;i++) System.out.println("De waarde van i: "+i); Post increment

For loop: nesting int x=0; for(int i=0;i<20;i++) for(int j=0;j<100;j++) x=x+i+j; System.out.println(x);

Het break statement Met het keyword break; kan men uit een loop breken: for(int i=0;i<200;i++) System.out.println(i); if(i>50) break; hoe vaak wordt deze loop uitgevoerd?

Het break statement Met het keyword break; kan men uit een loop breken: for(int i=0;i<200;i++) System.out.println(i); if(i>50) break; hoe vaak wordt deze loop uitgevoerd? antwoord: 52 keer...

Methodes De methode: is een soort bundeling van statements heeft een naam die je zelf kunt kiezen heeft parameters of argumenten heeft een returntype kan men overal in een klasse neerzetten is voorlopig als public gedeclareerd heeft een body en een signatuur kan andere methodes uit dezelfde klasse aanroepen

Methodes in andere talen Java C/C++ Vroegere talen Vroegere talen methode functie procedure (sub)routine

Voorbeeld... public int maximum(int x, int y) if(x>y) return x; else if(x<y) return y; else return 0;

Methodes gebruiken public class voorbeeld public static void main(string[] args) boolean result; result=gokje(5); System.out.println("Resultaat: "+result); public static boolean gokje(int x) if(x==7) return true; return false;

algemene schrijfwijze public static returntype methodenaam(parameters) methode body

Body en signatuur De signatuur van een methode: returntype naam parameters Kortom: de signatuur is alles, behalve de body van een methode

Void methodes Een void methode geeft niets terug: public static void printdegrootste(int x,int y) if(x>y) System.out.println(x); else if(x<y) System.out.println(y); else System.out.println("De waarden zijn gelijk");

Recursie Een methode kan zichzelf aanroepen: public static int faculty(int x) if(x==0)return 1; else return (x*faculty(x-1));

Recursie

Recursie?

Eindige methode? public static void Foo(int x) while(x!=1) if(x%2==0) x/=2; else x=((3*x)+1); return;

Algemene structuur public class voorbeeld public static void main(string[] args) variabelen if-else constructies loops statements public static void methode() variabelen if-else constructies loops statements

Huiswerk lezen over loops en methodes (t/m blz. 118 dus!) oefenen... maken practicumopdracht 3 (zie site) oefenen en experimenteren met kleine programma s