Quiz – Uge 3 – torsdag – første time

Slides:



Advertisements
Lignende præsentationer
T1 – OPGAVE 14.2 LINETT & SABRINA Klasse Varer namespace Opgave_14._2 { class Varer { private string vare; private string farve; private double.
Advertisements

KONCEPT Klasser og objekter En klasse beskriver et World ArrayList
Collectionklasser Klassifikation og anvendelse. Collections Motivation –hvorfor bruge collections? Realisering af en-til-mange relationer –Importer, erklær,
Forelæsning 3.1 Collections Javas for-each løkke
Interfaces – brug. Overblik Tidligere: –Interfaces Comparable gør det muligt at bruge Collections metoderne –min, max, sort, … –Algoritmemønstre Find.
Forelæsning 5.1 Brug af klassen Collections og interfacet Comparable samt parametriserede typer Projektuge: Ants and Spiders / Lommeregner dIntProg,
FEN IntroJava AAU1 Klasser og objekter Grundbegreber Student-Course.
Fundamentale sprogbegreber
FEN IntroJava AAU1 Endnu mere om Klasser og Objekter Mange til mange relationer Student-Course v3.
03 – Udtryk og metoder. 2 NOEA2009Java-kursus – Udtryk og metoder Udtryk i Java Java har standard udtrykene… Værditildeling Subrutiner og funktionskald.
Forelæsning 7.1 – repetition
Identitet vs lighed. Spørgsmål Hvad udskriver run metoden? 1.”Ens!” 2.”Forskellige!” 3.Ved ikke public class Driver{ public static void run(){ String.
Paradigmer i Programmering 3. Højere ordens funktioner Idag: Højere ordens funktioner Algebraiske datatyper Næste gang: I/O, Filer, interaktive programmer.
Begreber og Redskaber 4. Plan for idag Om metoder, parametre, returværdier Et par ord om objekt-orientering Håndkøring af programmer.
Begreber og Redskaber 3. Plan for idag Om metoder, parametre, returværdier Overblik over klasser,objekter,nedarvning Et par ord om objekt-orientering.
Quiz 3.1. Quiz 1 – Assignment dIntProg, E14 Hvad er værdierne af x og y efter udførelse af følgende program? 1.x er 6, y er 3 2.x er 8, y er 5 3.x er.
I o p o DAIMI, AU, November 1999Programkonstruktion I9E.1 Konstruktion og brug af klasser – en stak og en HP-regnemaskine push pop.
Introduktion til programmering Repetition - ArrayList.
 Jens Bennedsen 2002Objektorienteret systemudvikling Design -> kode Mapning af et klassediagram til kode.
 Michael E. Caspersen, 2000Introducerende objektorienteret programmering6A.1 Programmering med interfaces – en stak og en HP-regnemaskine push pop.
Programmering med interfaces Separering af specifikation, anvendelse og implementation.
Programmering med interfaces – en stak og en HP-regnemaskine push pop.
Collectionklasser Klassifikation og anvendelse. dIntProg, F08Collectionklasser.2 Samlinger af objekter Objektreferencer –for at holde fast i et objekt.
Jesper Mosegaard Multimedie Programmering E2003 MMProg uge44 Java til Lingo Klasser, statements og lister.
Programmering med interfaces – en stak og en HP-regnemaskine push pop.
Virkefeltsregler i Java int i; int j; int k; i = i+j; String t; Sequence s; int i; int j; Sequence s; String s; int i; int j;
Quiz Uge 2 – torsdag. Hvorfor har vi clicker quizzer? Formålet med quizzerne er –at afveksle undervisningsformen – så I ikke falder i søvn –at tvinge.
Algoritmeskabeloner findOne, findAll, findNoOf, findSumOf Primitive typer (forfremmelse og begrænsning) Identitet versus lighed (for objekter, herunder.
Forelæsning Uge 3 – Mandag Niveauer af programbeskrivelser – Statiske / dynamiske beskrivelser ArrayList –Collection med variabelt antal elementer –Der.
Quiz – Uge 4 – torsdag – første time. Skov med hjorte (stag = hjort) Programmér metoden ofSpecies. Metoden skal returnere en hjort af arten species. Hvis.
Forelæsning Uge 5 – Mandag
Forelæsning Uge 5 – Mandag
Forelæsning Uge 2 – Torsdag
Forelæsning Uge 6 – Mandag
Forelæsning Uge 4 – Mandag
Forelæsning Uge 5 – Mandag
Forelæsning Uge 4 – Mandag
Forelæsning Uge 6 – torsdag – repetition
Quiz – Uge 2 – torsdag – første time
Quiz – Uge 3 – mandag – første time
Forelæsning Uge 3 – Mandag
Quiz Uge 2 – mandag.
Quiz – Uge 4 – torsdag – første time
Forelæsning Uge 6 – Mandag
Forelæsning Uge 3 – Mandag
Klasser og objekter (Afsnit i manualen).
Quiz – Uge 3 – torsdag – første time
Forelæsning Uge 4 – Mandag
Forelæsning Uge 2 – Mandag
Forelæsning Uge 3 – Mandag
Forelæsning Uge 5 – Mandag
Forelæsning Uge 5 – Mandag
Programmering.
Forelæsning Uge 4 – Mandag
Quiz – Uge 3 – mandag – første time
Forelæsning Uge 2 – Mandag
Quiz – Uge 4 – torsdag – første time
Quiz Uge 2 – mandag.
Quiz Uge 2 – mandag.
Quiz – Uge 4 – mandag – første time
Forelæsning Uge 3 – Mandag
Quiz – Uge 4 – torsdag – første time
Forelæsning Uge 3 – Mandag
Forelæsning Uge 5 – Mandag
Forelæsning Uge 4 – Mandag
Quiz – Uge 4 – torsdag – første time
Forelæsning Uge 4 – Torsdag
Quiz – Uge 9 – mandag – første time
Quiz Uge 2 – mandag.
Quiz – Uge 3 – mandag – første time
Præsentationens transcript:

Quiz – Uge 3 – torsdag – første time

Assignments Hvad er værdierne af x og y efter udførelse af nedenstående program? int x; int y; x = 2; y = 1; x += y; y = x-y; x -= y; y++; x er 1, y er −1 x er −1, y er 3 x er 4, y er −1 x er 1, y er 3 x = 2 X 3 X 1 y = 1 X X 2 3

Selektion (to if-sætninger) Hvad er værdierne af x og y efter udførelse af nedentående program? int x; int y; x = 1; y = 2; if ( x < y ) if ( x < y-1 ) x = x+1; else y = y-x; x er 2, y er 2 x er 1, y er 2 x er 2, y er 4 x er 1, y er 1 x = 1 y = 2 X 1 else-delen hører til nærmest foregående if-sætning Brug parenteser Brug autoindent x < y x < y−1 1 < 2 1 < 2−1 sand falsk

Selektion (to andre if-sætninger) Hvad er værdierne af x og y efter udførelse af nedenstående program? int x; int y; x = 2; y = 2; if ( x < y ) { x = x+2; } else { if ( x <= y+1 ) { x = x+1; y = y+x; x er 3, y er 5 x er 3, y er 2 x er 2, y er 4 x er 1, y er 3 x = 2 X 3 y = 2 x < y x <= y+1 2 < 2 2 <= 2+1 falsk sand

Quiz – Uge 3 – torsdag – anden time

Realisering af en-til-mange AddressBook ArrayList<Person> persons void addPerson(Person p) void print() String getPhone(String name) int averageAge() Person String getName() String getNumber() int getAge() * Hvilke kodestumper realiserer ovenstående en-til-mange relation? 1 import java.util.*; public class AddressBook { private ArrayList<Person> persons; public AddressBook(){ persons= new ArrayList<Person>(); } 3 public class AddressBook { private ArrayList<Person> persons; public AddressBook(){ persons= new ArrayList<Person>(); } OK Mangler import 2 import java.util.*; public class AddressBook { private ArrayList<Person> persons; public void AddressBook(){ persons= new ArrayList<Person>(); } 4 import java.util.*; public class AddressBook { public AddressBook(){ ArrayList<Person> persons; persons= new ArrayList<Person>(); } Listen initialiseres i metode Listen erklæres lokalt i konstruktør

Antal teenagere Hvilke af nedenstående metoder er lovlige og returnerer antallet af teenagere i en adressebog? 1 public int teenCount{ int result = 0; for (Person p : persons){ if (p.getAge() >= 13 && p.getAge() <= 19) { result = result + 1; } 3 public int teenCount{ int result = 0; for (Person p : persons){ if (p.getAge() > 12 && p.getAge() < 20) { return result; } Compile error: missing return statement Compile error: missing return statement Return statementet udføres kun, hvis listen ikke er tom, og der er mindst en teenager 2 public int teenCount{ int result = 0; for (Person p : persons){ if (13 <= p.getAge() && p.getAge() <= 19) { result = result + 1; } return result; 4 public int teenCount{ int result = 0; for (Person p : persons){ if (p.getAge() < 12 && p.getAge() > 20) { result = result + 1; } return result; OK Forkert test

Sum af listens elementer Hvilke af nedenstående metoder er lovlige og summerer tallene liste? 1 public int sum() { int result = 0; for (int elem : liste) { result = result + elem; } return result; 3 public int sum() { int result = 0; for (int i=1; i <= liste.size(); i++) { result = result + liste.get(i); } return result; OK Run-time error 2 public int sum() { int result = 0; for (int i=1; i < liste.size(); i++) { result = result + liste.get(i); } return result; 4 public int sum() { int result = 0; for (int i=0; i < liste.size(); i++) { result += liste.get(i); } return result; Glemmer første element OK

Find en teenager 1 public Person findTeenager(){ for (Person p : persons){ if (p.getAge() >= 13 && p.getAge() <= 19){ return p; } Compile error: missing return statement Hvilke af metoderne er lovlige og returnerer en teenager (hvis en sådan findes i persons)? 2 public Person findTeenager(){ for (Person p : persons){ if (13 <= p.getAge() && p.getAge() <= 19){ return p; } return null; OK 3 public Person findTeenager(){ Person result = null; for (Person p : persons){ if (13 <= p.getAge() && p.getAge() <= 19){ result = p; } return result; Giver det rigtige resultat, men er ineffektiv

Find alle teenagere Hvilke af følgende metoder er lovlige og returnerer alle teenagere? 1 public Person findAlleTeenagere(){ ArrayList<Person> result = new ArrayList<Person>(); for (Person p : persons){ if (p.getAge() >= 13 && p.getAge() <= 19){ result.add(p); return result; } Compile error: missing return statement 2 public ArrayList<Person> findAlleTeenagere(){ ArrayList<Person> result = new ArrayList<Person>(); for (Person p : persons){ if (13 <= p.getAge() && p.getAge() <= 19){ result.add(p); } return result; OK

Slut – Quiz – Uge 3 – torsdag