Tentamen den 2/11-2005 på kursen DA7351, Programmering 1
Namn: Rolf Axelsson
Personnummer:
1a
public class Uppgift1a {
// Metoden program motsvarar aktivitetsdiagrammet
public void program() {
int a = extra.Input.readInt("Ange ett tal");
int b = extra.Input.readInt("Ange ett tal");
while(a>b) {
b += 2;
a++;
System.out.println(a+" "+b);
}
}
public static void main(String[] args) {
Uppgift1a u1a = new Uppgift1a();
u1a.program();
}
}
1b
if(tal==0)
System.out.println("en nolla"); break;
else if(res==1)
System.out.println("lågt"); break;
else if(res==2)
System.out.println("dubbelt mot 1"); break;
else if(res==3)
System.out.println("3"); break;
else if(res==4)
System.out.println("mer än 3"); break;
1d
int k=3;
while(k>0) {
System.out.println("k="+k);
k--;
}
2
public class Uppgift2 {
public void program() {
double summa=0, minst = 1000, tal;
int antal = 0;
while(antal<10) {
tal = extra.Input.readDouble("Mata in ett decimaltal i intervallet
100-1000: ");
if(tal>=100 && tal<=1000) {
antal++;
summa += tal;
if(tal<minst)
minst = tal;
}
}
System.out.println("Talens summa = " + summa);
System.out.println("Minsta talet = " + minst);
}
public static void main(String[] args) {
Uppgift2 u2 = new Uppgift2();
u2.program();
}
}
3
a
b
c
d
e
f
f
f
f
s
-((p v q) & -q)
s
4a
public void summa() {
double tal1, tal2, summa;
tal1 = Input.readDouble("Ange tal 1");
tal2 = Input.readDouble("Ange tal 2");
summa = tal1 + tal2;
System.out.println(tal1 + "+" + tal2 + "=" + summa);
}
4b
public int slump(int min, int max) {
return (int)(Math.random()*(max-min+1));
}
4c
public boolean contains(int siffra, int tal) {
boolean finns = false;
while((tal>0) && !finns) {
if(tal % 10 == siffra)
finns = true;
tal = tal/10;
}
return finns;
}
5
Kort 2
Regeln
kort1:
kort2:
kort3:
kort4:
k
s
s
f
f
->
S
F
S
S
och kort 4
är konsonant->jämn siffra
vokal, andra sidan kan vara j/u
konsonant - andra sidan ska vara jämn enligt regeln
jämn - vi vet inget om andra sidan, får vara v/k
udda - om det är konsonant så stämmer inte regeln
j
s
f
s
f
6 Ej aktuell för er – handlar om genus
7
public class Bok
private String
private String
private double
{
titel;
författare;
pris;
public Bok() {} // vet ej något om default-värden.
public Bok(String titel, String författare, double pris) {
this.titel = titel;
this.författare = författare;
this.pris = pris;
}
public void setTitel(String titel) {
this.titel = titel;
}
public void setFörfattare(String författare) {
this.författare = författare;
}
public void setPris(String pris) {
this.pris = pris;
}
public String toString() {
return "Bok: Författare: "+författare+", Titel: "+titel+", Pris: "+pris+"
kr";
}
}
8
public int antalIintervall(double[] array, double min, double max) {
int antal=0;
for(int i=0; i<array.length; i++)
if( (array[i]>=min) && (array[i]<=max) )
antal++;
return antal;
}
9
För att sortera objekt lagrade i en array går det bra att använda metoden
Arrays.sort. Kravet för att metoden ska fungera är att alla objekt implementerar
interfacet Comparable och dessutom går att jämföra med varandra.
Genom att skriva compareTo-metoden på så sätt att metoden returnerar ett heltal
som på ett korrekt sätt anger sorteringsordningen avseende titel-attributet så
kommer arrayen med Bok-objekt att sorteras korrekt.