tentaplugg.nu av studenter för studenter Kurskod Kursnamn UU-76062 Inledande programmering i Java Datum 2014-07-13 Material Tentamen Kursexaminator Betygsgränser Tentamenspoäng G 30; VG 36 40 (VG) Övrig kommentar
Tenta 2014-08-13 UPPGIFT 1 int a = 1; int b = a + 1; int c = a + b - 1; if(b > a) { if(c > b) { if(a > c) { if(a == b && b == c && c == a) { a = b * c; else { b = a * c; Variablerna a, b och c har samma värde vid minst ett tillfälle. Sant Variabeln c har samma värde genom hela koden. Sant Variabeln a ändrar värde vid minst två tillfällen i koden. Sant Variabeln b har genom hela koden ett större värde än variabeln c. Falskt Summan av variablerna a, b och c är genom hela koden mer än 7. Falskt 2 import greenfoot.*; /** * A tank that can fire its canon at other tanks. */ public class Tank extends Actor { private Canon _canon; /** * Constructs a tank with the given canon. * * @param canon the canon our tanks is equiped with */ public Tank(Canon canon) { _canon = canon; @Override public void act() { //Kod visas ej /* * Fire the canon */ private void fire() { Actor missile = _canon.fire(); getworld().addobject(missile, getx(), gety()); Alla parametrar och returvärden är kommenterade och kommentarerna är korrekt formaterade. Sant missile är både ett objekt och en lokal variabel. Sant _canon är en parameter. Falskt Canon är en klass. Sant Metoden fire i klassen Tank kan anropas från andra klasser. Falskt
UPPGFT 3 int[] numbers = new int[5]; int a = 0; for(int i = 5; i > 0; i --) { numbers[i - 1] = i; while(a > 8) { for(int number : numbers) { a += number; Variabeln a ändrar värde minst två gånger i koden. Falskt Arrayen numbers innehåller 6 element efter koden. Falskt Variabeln a har värdet 10 efter koden. Falskt Variabeln a har värdet 19 efter koden. Falskt Arrayen numbers innehåller 5 element efter koden. Sant UPPGIFT 4 import greenfoot.*; /** * A Ghost with a story to tell. * * @author Birger Drake * @version 2014-06-18 */ public class Ghost extends Actor { private Story _story; /** * Constructs a Ghost with the given Story. * * @param story the story the Ghost wants to tell. */ public Ghost(Story story) { _story = story; @Override public void act() { World world = getworld(); world.addobject(_story.tell(), getx(), gety()); Alla parametrar och returvärden är kommenterade och kommentarerna är korrekt formaterade. Sant Klassen Ghost har exakt en konstruktor. Sant Koden innehåller minst två tilldelningar. Sant Koden innehåller exakt två metodanrop. Falskt Metoden tell i klassen Story returnerar en boolean. Falskt UPPGIFT 5 int a = 0; int b = 2 * a; int c = 3 * b; if(a > 0 b < 0 c == 0) { while(a > b && b < c) { c --;
if((a + b) > c) { c = a + b; else { a = b = c = 0; Variabeln b är 0 genom hela koden. Sant Variabeln b har högre värde än både a och c vid minst ett tillfälle i koden. Falskt Variabeln c innehåller hela tiden ett större tal än variabeln a. Falskt Variabeln a ändrar värde vid minst två tillfällen i koden. Falskt Variabeln c är 0 efter koden. Sant UPPGIFT 6 int a = 0; int b = 2 * a + 1; int c = 2 * b + 1; while(a!= b && b!= c && a!= c) { b --; if(a == b b == c) { a = b = c; else if(a > b && b > c) { a = c = b; else { a = b = c = 10; Variablerna a och c har vid minst ett tillfälle samma värde. Sant Variablerna a och b har vid minst ett tillfälle samma värde. Sant Variabeln a har både positiva och negativa värden i koden. Falskt Variablerna a, b och c har alla värdet -2 efter koden. Falskt Variabeln c har vid minst ett tillfälle värdet 10. Sant UPPGIFT 7 import greenfoot.*; import java.util.list; /** * A flower that grows depending on how many friends it has. * * @author Birger Drake * @version 2014-06-18 */ public class Flower extends Actor { private List _friends; private int _size; /** * Constructs a Flower with friends. * * @param friends all the flowers friends. * an empty list if the flower has no friends. */ public Flower(int size, List friends) { this._size = size; this._friends = friends; @Override public void act() { this.grow(); /** * The more friend the flower has the more it grows. */ public void grow() { double grow = 0; for(int i = 0; i < _friends.size(); i ++) { grow += 0.25; _size += grow;
Alla parametrar och returvärden är kommenterade och kommentarerna är korrekt formaterade. Falskt Vi kan ta bort all användning av this i koden utan att det påverkar någon funktionalitet. Sant Om en blomma har färre än fyra vänner kommer den aldrig att växa. Sant Metoden act finns definierad i klassen Actor. Sant grow är både namnet på en metod och en instansvariabel. Falskt UPPGIFT 8 int a = -3; int b = a / 3; int c = b * 2; if(a > b b > c) { else { while(b > a) { if(a == b b == c a == c) { a = b; b = a; else { c = a; Variablerna a, b och c ändrar alla värde minst två gånger i koden. Falskt Variabeln b har hela tiden ett högre värde än a. Falskt Vid minst ett tillfälle har variablerna a, b och c samma värde. Sant Minst en av variablerna a, b och c har hela tiden ett negativt värde. Falskt Variabeln c har vid minst ett tillfälle värdet 1. Falskt