De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Inleiding tot programmeren

Verwante presentaties


Presentatie over: "Inleiding tot programmeren"— Transcript van de presentatie:

1 Inleiding tot programmeren
Robocode Inleiding tot programmeren

2 Inhoud Doel cursus Java-controlestructuren Robotje programmeren

3 Doel cursus Inleiding Java Robocode

4 Java Object-gerichte programmeertaal Sun 1991

5 Robocode 2001 Matthew Nelson IBM Programmeerspelletje

6 Inhoud Doel cursus Java-controlestructuren Robocode

7 Compileren Code ‘vertalen’ voor computer

8 Commentaar // lijn commentaar /* blok Commentaar */
Commentaar wordt niet gelezen door de compiler

9 Declaratie van data private double d = 1.11111; private int i = 5;
private static string s = “tekst” Binnen methode niet private Static als je waardes wil houden tussen ronden (deathcount)

10 If – Else if (voorwaarde) { //doe iets } else { //doe iets anders

11 While() while (voorwaarde) { //blijf dit //en dit doen }

12 Vergelijken a == b - gelijk aan a != b - niet gelijk aan
a < b - kleiner dan a <= b - kleiner dan of gelijk aan a > b - groter dan a >= b - groter dan of gelijk aan s.equals(“string”) - strings vergelijken

13 For() for (int i = 0; i < 6; i++) { System.out.println(i + “”); }

14 Switch switch (i) { case 1: a = 1; break; case 2: a = 2; break;
default: a = 0; break; }

15 Methodes Methodes Verzameling van lijnen code Argumenten Return
Vaak gebruikt voor herhalingen van code of berekeningen

16 Inhoud Doel cursus Java-controlestructuren Robocode

17 Robocode Het programma Een robot bouwen

18 Robocode Java 1.5.0

19 Een gevecht starten

20 Anatomie van een robotje
Vehicle Bewegen Gun Schieten Radar Scannen

21 Een robotje maken

22 Een robotje maken File -> New -> Robot Packagenaam
Naam van de robot Compiler -> Compile (F6)

23 Run() Belangrijkste methode van de robot 2 delen Declaratie
While(true)

24 Color Deel van declaratie import java.awt.Color;
setColors(Color.RED, Color.BLACK, Color.RED);

25 While(true) Oneindige lus Herhaling van strategie robot
Onderbroken door events Stopt indien dood of gewonnen

26 Bewegen turnLeft(aantal graden); turnRight(aantal graden);
turnRight(90) == turnLeft(-90)

27 Bewegen ahead(aantal pixels); back(aantal pixels);
ahead(100) == back(-100);

28 Bewegen turnGunLeft(aantal graden); turnGunRight(aantal graden);
turnGunRight(90) == turnGunLeft(-90)

29 Bewegen getHeading(); getGunHeading();
turnRight(shortAngle(getHeading() + 90));

30 Fire() Schiet een kogel Kracht 0.1 <-> 3
Schieten maakt het geweer warm if (getGunHeat() == 0) { fire(3); }

31 Bullet Bij fire() Robocode maakt Bullet aan Bij events Bullet opvragen

32 Bullet Indien raak Indien mis 3 * K energie terug
4 * K, plus 2 * (K - 1) als K > 1 Schade Indien mis Kogel raakt andere kogel Kogel raakt muur

33 Events Gebeurtenis Eigen code Onderbreken while(true)

34 Events /** * onScannedRobot: What to do when you see another robot */
public void onScannedRobot(ScannedRobotEvent e) { System.out.println(“I’ve seen “ + e.getName()); System.out.println(e.getDistance() + “ pixels away.”); fire(1); }

35 BulletHitBulletEvent
Jouw kogel raakt een andere kogel getBullet() Geeft kogel terug getHitBullet() a = e.getBullet().getPower();

36 BulletHitEvent Je hebt een robotje geraakt getBullet() getEnergy()
getName()

37 BulletMissedEvent Een kogel van jou heeft de muur geraakt getBullet()

38 DeathEvent Je sterft Geen methodes Bijvoorbeeld deathcounter

39 HitByBulletEvent getBearing() getBullet() getHeading() getName()
getPower()

40 Bearing Verschil tussen jouw heading en heading van wat je raakt.
turnRight(e.getBearing()) ;

41 HitRobotEvent Je rijdt tegen een robot getBearing() getEnergy()
getName() isMyFault() if (e.isMyFault()) {

42 HitWallEvent Je rijdt tegen een muur getBearing()

43 RobotDeathEvent Een andere robot sterft. getName()

44 ScannedRobotEvent Je radar (op geweer) ziet een robot getBearing()
getDistance() getEnergy() getHeading() getName()

45 ScannedRobotEvent /**
* onScannedRobot: What to do when you see another robot */ public void onScannedRobot(ScannedRobotEvent e) { System.out.println(“I’ve seen “ + e.getName()); System.out.println(e.getDistance() + “ pixels away.”); fire(1); }

46 WinEvent Je wint de ronde. Geen methodes. Overwinningsdansje
wincounter


Download ppt "Inleiding tot programmeren"

Verwante presentaties


Ads door Google