Gameprogrammeren: Variabelen, declaraties en toekenningen

Slides:



Advertisements
Verwante presentaties
1 SOCS Hoofdstuk 1 Programmeertaal C. 2 Kenmerken van C Hogere programmeertaal  Grote verzameling types, strenge type controle  Zelf nieuwe types definiëren.
Advertisements

Hoofdstuk 2 Hallo, C# !.
Numerieke Natuurkunde
CONTROLESTRUCTUREN (DEEL 1)
Consoletoepassing Variabelen Klassen
Algoritmiek Object-georiënteerd Programmeren
LauwersCollege Buitenpost Java Applet programma dat op een website zichtbaar is Java Application programma dat zelfstandig werkt Javascript Scripttaal.
Opgave 1a: void nvoid staat in de header van een methode die geen resultaatwaarde heeft nde aanroep van een void-methode is dan een opdracht i.p.v. een.
Inleiding Informatica Prof. Dr. O. De Troyer Hoofdstuk 3: Werken met numerieke gegevens.
Variabelen Part deux.. Variabelen week 3 0. Herhaling 1. De NullPointerException (p101) 2. Primitieven 3. Scope en levensduur van variabelen 4. Meerdere.
Hoorcollege 2 Basis gameprogrammeren. Soorten programma’s Console- applicatie.
Variabelen Part deux.. Variabelen week 3 0. Herhaling 1. De NullPointerException (p101) 2. Primitieven 3. Scope en levensduur van variabelen 4. Meerdere.
Hoorcollege 4 Objecten en methoden. Eigen methode toevoegen class Painter : Game { public void HandleInput() { … } protected override void Update(GameTime.
Variabelen en berekeningen
tircms02-p les 1 Operating Systems practicum
JAVA: een platformonafhankelijke taal
Inleiding computersystemen en netwerken Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 2.1 Programmeren (2.9) assembler,
Hoofdstuk 3 Methoden om te tekenen.
Hoofdstuk 3 Tekenen en rekenen.
Klasse uit library Android.App Activity Bij het starten van een app: nOperating system maakt een Activity -object aan… n…en neemt dat onderhanden met de.
Klasse uit library Android.App Activity Bij het starten van een app: nOperating system maakt een Activity -object aan… n…en neemt dat onderhanden met de.
Soorten programma’s nConsole- applicatie. Soorten programma’s nConsole- applicatie nWindows- applicatie.
Aangepaste timing nTheorie (16 colleges + 2 deeltentamens) nPraktijk (16 keer, 3 inleveropdrachten) college Tent. 1 Tent. 3 college prakt. 1 prakt. 3 prakt.
Windows-applicatie class HalloWin1 { static void Main ( ) { } Form scherm; scherm = new Form( ); Application.Run(scherm); using System.Windows.Forms; scherm.Text.
Welkom! maandag 16 November 2015 Les B-2.
Variabelen. Wat zijn variabelen? In een programmeertaal zijn er “dingen” nodig die ervoor zorgen dat het programma informatie voor korte of langere tijd.
Windows-applicatie using System.Windows.Forms; using System.Drawing;
Activity Bij het starten van een app:
Aanroep van een methode voert opdrachten uit in de body daarvan
Gameprogrammeren: Objecten en geheugen
Gameprogrammeren: Game Assets
Gameprogrammeren: Lists en interfaces
Gameprogrammeren: Keuzeopdrachten
Gameprogrammeren: Overerving
Hoofdstuk 9.2 Strings.
Gameprogrammeren: Char en String
Gameprogrammeren: Expressies
Windows-applicatie using System.Windows.Forms; using System.Drawing;
Gameprogrammeren: Methoden
Arjan Egges & Paul Bergervoet
vandaag èn vrijdag deadline maandag 12 dec.
Gameprogrammeren: Overerving in Painter
Gameprogrammeren: Player input in Painter
Gameprogrammeren: Programmastructuur
Basis Gameprogrammeren
Gameprogrammeren: Afsluiting
Gameprogrammeren: Willekeurigheid (Randomness)
Tinpro015b-les5 Invoer en Uitvoer.
Gameprogrammeren: Herhalingen
1. Een klasse is… Een groepje opdrachten Een groepje variabelen
Gameprogrammeren: Properties
Tinpro015b-les6 Templates.
Gameprogrammeren: Game Basics
Game Assets, Invoer Verwerken
Syntax van opdracht opdracht naam naam ( expressie ) ; . , expressie
Arjan Egges & Paul Bergervoet
Gameprogrammeren: Recursie
Willekeurigheid en Herhaling
Arjan Egges Paul Bergervoet Wouter van Toll
Aanroep van een methode voert opdrachten uit in de body daarvan
Gameprogrammeren: Tiles en File I/O in Tick Tick
Game: omgaan met tijd (Jewel-Jam)
Gameprogrammeren: Klassen en objecten
Arjan Egges & Paul Bergervoet
Object Communication (Jewel Jam)
Gameprogrammeren: Enemies in Tick Tick
Afscherming 1 hour Monday ochtend morning.
Gameprogrammeren: Sprite sheets
Software Development fundamentals
Gameprogrammeren: Arrays
Transcript van de presentatie:

Gameprogrammeren: Variabelen, declaraties en toekenningen Arjan Egges Paul Bergervoet Wouter van Toll

Variabelen Variabele: geheugenplaats met een naam Declaratie: aangifte van het type van de variabele Toekenningsopdracht: variabele krijgt waarde int x, y; x y 20 x = 20;

Toekenningsopdrachten Expressie aan de rechterkant mag andere variabelen gebruiken Vorige waarde gaat verloren int x, y; x = 20 ; x y 50 20 25 26 y = x + 5 ; x = y * 2 ; y = y + 1 ;

Syntax van opdracht (toekenning)

Syntax van opdracht

Declaratie en toekenningen Eén keer declarareren Mogelijk meerdere toekenningen Declaratie en eerste toekenning int x; int x = 100; x = 100; x = 100; x = 250; x = x + 1; x = 2 * x;

Syntax van declaratie

Type van variabelen int geheel getal double benadering van reëel getal int x; double d; x 10 3 x = 10 ; d = 3.141592653 ; d 3.3333333333 3.141592653 10.0 d = 10 ; x = x / 3 ; d = d / 3 ;

Const declaratie const double pi = 3.1415926535897938; Latere toekenningen verboden pi = 4.0; double straal = 2.0; double oppervlakte = pi * straal * straal;

Syntax van declaratie

Plaats van een declaratie

Standaardtypes Gehele getallen: Getallen met een decimale punt: 1 byte sbyte ± 127 byte 0..255 28-1 2 bytes short ± 32767 ushort 0..65535 216-1 4 bytes int ± 2 miljard uint 0..4 miljard 232-1 8 bytes long ± 1018 ulong 0..1019 264-1 Getallen met een decimale punt: 4 bytes float 7 cijfers, afgerond, ≤1038 8 bytes double 15 cijfers, afgerond, ≤10300 16 bytes decimal 28 cijfers, exact, ≤1028

Constanten Geheel getal (kleinst passende) Getal met een decimale punt string (tekst) hexadecimaal 137 –25 0x1A 0xFF 26 255 0.5 –273.15 6.02E23 1E3 3E–11 602000000000000000000000 1000 0.00000000003 "Hallo!" "A" "" "een \"citaat\"" "\n" "\\"

Typering van operatoren Beide argumenten geheel resultaatwaarde geheel Minstens één floating resultaatwaarde floating bij + operator ook: Minstens één string  resultaatwaarde string 2 + 5 3 * 4 5 / 2 0.5 * 7 10 / 3.0 1.5 * 2.5 “ga” + “me” “€” + bedrag

Verschillende typen int en double zijn voorbeelden van een primitief of built-in type C# kent ook `complexere’ types Color GameTime GraphicsDevice … Deze zitten in libraries zoals MonoGame, .NET, ...

Syntax van primitieve types

Enumerated type Wordt gebruikt om een verzameling verschillende toestanden aan te duiden Bijvoorbeeld: En voor ButtonState (Pressed/Released): enum CharacterClan { Warrior, Wizard, Elf, Spy }; CharacterClan myClan = CharacterClan.Warrior; ButtonState someState = ButtonState.Released;

Enumerated type Nog een voorbeeld: enum MonthType { January, February, March, April, May, June, July, August, September, October, November, December }; enum DayType { Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday }; MonthType currentMonth = MonthType.February; DayType today = DayType.Tuesday;

Type Vector2 Het Vector2-type wordt gebruikt om vectoren in 2D te bewaren. Bijvoorbeeld: Vector2 positie = new Vector2(150.0f, 300.0f); positie = Vector2.Zero; positie = positie + new Vector2(300.0f, 300.0f); float x_waarde = positie.X; positie.Y = 350.0f;

Kleuren Color(...) (0,255,0) (255,0,0) (0,0,255) (0,0,0) (255,255,0) (255,255,255) (0,255,255) (255,0,255) (0,0,255) (0,0,0)

Variabelen van het type Color Variabelenamen Color blueColor, greenColor, redColor, grayColor, whiteColor; blueColor = new Color(0, 0, 255); greenColor = new Color(0, 255, 0); redColor = new Color(255, 0, 0); grayColor = new Color(200, 200, 200); whiteColor = new Color(255, 255, 255); Declaraties Toekenningen We gebruiken `new’ voor niet-primitieve typen Informatie om de kleur te kunnen maken

Mengkleuren new Color(255, 0, 0) new Color(255, 64, 0)

Scope van een variabele In een methode: kan alleen in die methode gebruikt worden In een klasse: kan in alle methoden van de klasse gebruikt worden Die variabelen noemen we dan attributen of membervariabelen De plekken waar een variabele gebruikt kan worden noemen we de scope (het bereik) van een variabele