//Använd main som ett "handtag" för att hålla ihop programmet. //Själva programmet finns i övriga klasser.

Storlek: px
Starta visningen från sidan:

Download "//Använd main som ett "handtag" för att hålla ihop programmet. //Själva programmet finns i övriga klasser."

Transkript

1 /*==================================================================== Detta program hör ihop med dokumentet EXEMPEL_AVERAGE_POINTS.PDF där det finns förklaringar. ======================================================================*/ package java_medelbetyg; public class main { public static void main(string[] args) throws IOException { //Använd main som ett "handtag" för att hålla ihop programmet. //Själva programmet finns i övriga klasser. //Klassen AveragePoints innehåller en metod som räknar ut medelvärdet //av ett valfritt antal poängvärden, som användaren matar in. //Det finns flera versioner av klassen, som förklaras i dokumentet // exempel_average_points.pdf. AveragePoints00 ap = new AveragePoints00(); //AveragePoints01 ap = new AveragePoints01(); //AveragePoints02 ap = new AveragePoints02(); //AveragePoints03 ap = new AveragePoints03(); //AveragePoints04 ap = new AveragePoints04(); //AveragePoints05 ap = new AveragePoints05(); //AveragePoints06 ap = new AveragePoints06(); ap.calculateaveragepoints(); // Rutan 'Medelpoäng för kurser' i JSP-diagrammet.

2 package java_medelbetyg; import java.io.bufferedreader; import java.io.inputstreamreader; public class AveragePoints00 { public void calculateaveragepoints() throws IOException { // Utför rutan 'Medelpoäng för kurser' i JSP-diagrammet. //Konstanter final int ANTAL = 150; //Versaler för konstanter enligt konventionen för Java //Variabler int x, i = -1, sum; //x = talet som matades in, i = varvräknare, sum = summan av poängen. String svar; //Användarens svar på frågor //Designbeslut: Det ska få plats 150 tal. Två alternativ: // 1. new int[antal] ==> det första talet på index=0, det 150:e elementet har index 149 etc. // 2. new int[antal+1] ==> använd ej index 0, första talet på index = 1 och // det 150:e på index =150. int[] tal = new int[antal]; //Det 150:e elementet har index 149. //IO (denna programmerare ogillar scanner bl.a. pga problemen när olika datatyper ska läsas). // BufferedReader är entydig och tillförlitlig. BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); do { // En kurs // Tomma rutan i JSP-diagrammet utgörs av allt inne i loopen do { //Inmatning (användaren matar in poängen ett åt gången) System.out.printf("Poäng följd av ENTER (0 och ENTER för att avsluta): "); i = i + 1; x = Integer.parseInt( br.readline() ); //Inmatning en poäng tal[i] = x; // Programmeraren använder talet 0 för att representera att användaren vill // avbryta inmatningen. while (!(x == 0) i == ANTAL ); // Avbryt? //Programmeraren vet att det inte går att lägga in fler värden än vad arrayen är //dimensionerad för och såg till att loopen avbryts om arrayen är full ( i === ANTAL). //Ett tillägg i koden av något som inte finns i designen (JSP-diagrammet). // Beräkning //Summera sum = 0; for (int k = 0; k <= i; k++) { sum = sum + tal[k];

3 //Medelvärde. // 7 positioner för decimaltalet, varav 1 decimal (medför standardavrundning), högerjusterat. // För att få decimalresultat av division av två integer: // konvertera ett av talen till double. System.out.print("Medelpoäng: "); System.out.format("%7.1f%n", (double)(sum/(i + 1))); //Sluta? System.out.printf ("Sluta? (J/N) "); svar = br.readline(); while (!svar.equals("j")); //Sluta? System.out.println("Klart."); //END calculateaveragepoints00

4 package java_medelbetyg; import java.io.bufferedreader; import java.io.inputstreamreader; public class AveragePoints01 { //ÄNDRAT FRÅN VERSION 00: // Lagt till antalinmatade. // x och sum har nu datatypen Double - ändrat på flera platser // Ändra brytvillkor i inmatningsloppen från 0 till -1. // Medelpoängen räknas ut och skrivs ut som två separata operationer. public void calculateaveragepoints() throws IOException { // Utför rutan 'Medelpoäng för kurser' i JSP-diagrammet. //Konstanter final int ANTAL = 150; //Versaler för konstanter enligt konventionen för Java //Variabler int i = -1; //i = varvräknare, 1 lägre än det lägsta värdet som arrayindexet får ha Double x, sum; //x = talet som matades in, sum = summan av poängen. Double för decimalpoäng //och för att få decimaler i resulatet av divisionen. int antalinmatade; //NYTT: Används för tydlighet för den som läser koden String svar; //Användarens svar på frågor Double medel; //Medelvärdet Boolean avbryt, sluta; //NYTT: För tydlighet i looparnas brytvillkor //Designbeslut: Det ska få plats 150 tal. Två alternativ: // 1. new int[antal] ==> det första talet på index=0, det 150:e elementet har index 149 etc. // 2. new int[antal+1] ==> använd ej index 0, första talet på index = 1 och // det 150:e på index =150. Double[] tal = new Double[ANTAL]; //Det 150:e elementet har index 149. //IO (denna programmerare ogillar scanner bl.a. pga problemen när olika datatyper ska läsas). // BufferedReader är entydig och tillförlitlig. BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // 'Gör jobbet'-rutan i JSP-diagrammet utgörs av allt inne i loopen do { // En kurs //Inmatning (användaren matar in poängen ett åt gången) do { //Inmatning en poäng (den tomma rutan i JSP-diagrammet) System.out.printf("Poäng följd av ENTER (-1 för att avsluta): "); i = i + 1; x = Double.parseDouble( br.readline() ); //Användaren skriver in ett tal tal[i] = x; // Programmeraren använder talet -1 för att representera att användaren vill // avbryta inmatningen. // Om x är -1 sätts (x == -1) True, annars till False. // Om i = ANTAL, sätts i == ANTAL till True,annars till false. // Om det är minst ett True, sätts avbryt till True, annars till False. avbryt = (x == -1) i == ANTAL; while (!avbryt); // Avbryt?

5 //Programmeraren vet att det inte går att lägga in fler värden än vad arrayen är //dimensionerad för och såg till att loopen avbryts om arrayen är full ( i === ANTAL). //Ett tillägg i koden av något som inte finns i designen (JSP-diagrammet). antalinmatade = i + 1; // Beräkning //Summera sum = 0.0; for (int k = 0; k <= i; k++) { sum = sum + tal[k]; //Medelvärde. // 7 positioner för decimaltalet, varav 1 decimal (medför standardavrundning), högerjusterat. // För att få decimalresultat av division av två integer: // konvertera ett av talen till double. System.out.print("Medelpoäng: "); medel = (double)(sum/antalinmatade); // Utskrift System.out.format("%7.1f%n", medel ); //Sluta? System.out.printf ("Sluta? (J/N) "); svar = br.readline(); sluta = svar.equals("j"); while (!sluta); //Sluta? System.out.println("Klart."); //END calculateaveragepoints

6 package java_medelbetyg; import java.io.bufferedreader; import java.io.inputstreamreader; public class AveragePoints02 { //ÄNDRAT FRÅN VERSION 01: // Korrekt uträkning av medelpoängen public void calculateaveragepoints() throws IOException { // Utför rutan 'Medelpoäng för kurser' i JSP-diagrammet. //Konstanter final int ANTAL = 150; //Versaler för konstanter enligt konventionen för Java //Variabler int i = -1; //i = varvräknare, 1 lägre än det lägsta värdet som arrayindexet får ha Double x, sum; //x = talet som matades in, sum = summan av poängen. Double för decimalpoäng //och för att få decimaler i resulatet av divisionen. int antalinmatade; //NYTT: Används för tydlighet för den som läser koden String svar; //Användarens svar på frågor Double medel; //Medelvärdet Boolean avbryt, sluta; //NYTT: För tydlighet i looparnas brytvillkor //Designbeslut: Det ska få plats 150 tal. Två alternativ: // 1. new int[antal] ==> det första talet på index=0, det 150:e elementet har index 149 etc. // 2. new int[antal+1] ==> använd ej index 0, första talet på index = 1 och // det 150:e på index =150. Double[] tal = new Double[ANTAL]; //Det 150:e elementet har index 149. //IO (denna programmerare ogillar scanner bl.a. pga problemen när olika datatyper ska läsas). // BufferedReader är entydig och tillförlitlig. BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // 'Gör jobbet'-rutan i JSP-diagrammet utgörs av allt inne i loopen do { // En kurs //Inmatning (användaren matar in poängen ett åt gången) do { //Inmatning en poäng (den tomma rutan i JSP-diagrammet) System.out.printf("Poäng följd av ENTER (-1 för att avsluta): "); x = Double.parseDouble( br.readline() ); //Användaren skriver in ett tal avbryt = (x == -1); //avbryt blir True eller False if(!avbryt ) { i = i + 1; tal[i] = x; //Undvik att ändra 'avbryt' från True till False. Ändra bara om det är till True.

7 if (i == ANTAL) { avbryt = true; while (!avbryt); // Avbryt? //Programmeraren vet att det inte går att lägga in fler värden än vad arrayen är //dimensionerad för och såg till att loopen avbryts om arrayen är full ( i === ANTAL). //Ett tillägg i koden av något som inte finns i designen (JSP-diagrammet). antalinmatade = i + 1; // Beräkning //Summera sum = 0.0; for (int k = 0; k <= i; k++) { sum = sum + tal[k]; //För testning System.out.println("sum=" + sum + " antal=" + antalinmatade); //Medelvärde. // 7 positioner för decimaltalet, varav 1 decimal (medför standardavrundning), högerjusterat. // För att få decimalresultat av division av två integer: // konvertera ett av talen till double. System.out.print("Medelpoäng: "); medel = (double)(sum/antalinmatade); // Utskrift System.out.format("%7.1f%n", medel ); //Sluta? System.out.printf ("Sluta? (J/N) "); svar = br.readline(); sluta = svar.equals("j"); while (!sluta); //Sluta? System.out.println("Klart."); //END calculateaveragepoints

8 package java_medelbetyg; import java.io.bufferedreader; import java.io.inputstreamreader; public class AveragePoints03 { //ÄNDRAT FRÅN VERSION 01: // Korrekt uträkning av medelpoängen public void calculateaveragepoints() throws IOException { // Utför rutan 'Medelpoäng för kurser' i JSP-diagrammet. //Konstanter final int ANTAL = 3; //Versaler för konstanter enligt konventionen för Java //Variabler int i; //i = varvräknare Double x, sum; //x = talet som matades in, sum = summan av poängen. Double för decimalpoäng //och för att få decimaler i resulatet av divisionen. int antalinmatade; //NYTT: Används för tydlighet för den som läser koden String svar; //Användarens svar på frågor Double medel; //Medelvärdet Boolean avbryt, sluta; //NYTT: För tydlighet i looparnas brytvillkor //Designbeslut: Det ska få plats 150 tal. Två alternativ: // 1. new int[antal] ==> det första talet på index=0, det 150:e elementet har index 149 etc. // 2. new int[antal+1] ==> använd ej index 0, första talet på index = 1 och // det 150:e på index =150. Double[] tal = new Double[ANTAL]; //Det 150:e elementet har index 149. //IO (denna programmerare ogillar scanner bl.a. pga problemen när olika datatyper ska läsas). // BufferedReader är entydig och tillförlitlig. BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // 'Gör jobbet'-rutan i JSP-diagrammet utgörs av allt inne i loopen do { // En kurs //Inmatning (användaren matar in poängen ett åt gången) i = -1; // i = ett lägre än det lägsta värdet som arrayindexet får ha do { //Inmatning en poäng (den tomma rutan i JSP-diagrammet) System.out.printf("Poäng följd av ENTER (-1 för att avsluta): "); x = Double.parseDouble( br.readline() ); //Användaren skriver in ett tal avbryt = (x == -1); //avbryt blir True eller False if(!avbryt ) { i = i + 1; tal[i] = x;

9 //Undvik att ändra 'avbryt' från True till False. Ändra bara om det är till True. if (i == ANTAL) { avbryt = true; while (!avbryt); // Avbryt? //Programmeraren vet att det inte går att lägga in fler värden än vad arrayen är //dimensionerad för och såg till att loopen avbryts om arrayen är full ( i === ANTAL). //Ett tillägg i koden av något som inte finns i designen (JSP-diagrammet). antalinmatade = i + 1; // Beräkning //Summera sum = 0.0; for (int k = 0; k <= i; k++) { sum = sum + tal[k]; //För testning System.out.println("sum=" + sum + " antal=" + antalinmatade); //Medelvärde. // 7 positioner för decimaltalet, varav 1 decimal (medför standardavrundning), högerjusterat. // För att få decimalresultat av division av två integer: // konvertera ett av talen till double. System.out.print("Medelpoäng: "); medel = (double)(sum/antalinmatade); // Utskrift System.out.format("%7.1f%n", medel ); //Sluta? System.out.printf ("Sluta? (J/N) "); svar = br.readline(); sluta = svar.equals("j"); while (!sluta); //Sluta? System.out.println("Klart."); //END calculateaveragepoints

10 package java_medelbetyg; import java.io.bufferedreader; import java.io.inputstreamreader; public class AveragePoints04 { //ÄNDRAT FRÅN VERSION 01: // Korrekt uträkning av medelpoängen public void calculateaveragepoints() throws IOException { // Utför rutan 'Medelpoäng för kurser' i JSP-diagrammet. //Konstanter final int ANTAL = 3; //Versaler för konstanter enligt konventionen för Java //Variabler int i; //i = varvräknare Double x, sum; //x = talet som matades in, sum = summan av poängen. Double för decimalpoäng //och för att få decimaler i resulatet av divisionen. int antalinmatade; //NYTT: Används för tydlighet för den som läser koden String svar; //Användarens svar på frågor Double medel; //Medelvärdet Boolean avbryt, sluta; //NYTT: För tydlighet i looparnas brytvillkor //Designbeslut: Det ska få plats 150 tal. Två alternativ: // 1. new int[antal] ==> det första talet på index=0, det 150:e elementet har index 149 etc. // 2. new int[antal+1] ==> använd ej index 0, första talet på index = 1 och // det 150:e på index =150. Double[] tal = new Double[ANTAL]; //Det 150:e elementet har index 149. //IO (denna programmerare ogillar scanner bl.a. pga problemen när olika datatyper ska läsas). // BufferedReader är entydig och tillförlitlig. BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // 'Gör jobbet'-rutan i JSP-diagrammet utgörs av allt inne i loopen do { // En kurs //Inmatning (användaren matar in poängen ett åt gången) i = -1; // i = ett lägre än det lägsta värdet som arrayindexet får ha do { //Inmatning en poäng (den tomma rutan i JSP-diagrammet) System.out.printf("Poäng följd av ENTER (-1 för att avsluta): "); x = Double.parseDouble( br.readline() ); //Användaren skriver in ett tal avbryt = (x == -1); //avbryt blir True eller False if(!avbryt ) { i = i + 1; //Undvik att ändra 'avbryt' från True till False. Ändra bara om det är till True.

11 if (i == ANTAL) { avbryt = true; else { tal[i] = x; System.out.print ("LOOPEN INMATNING: i="+i ); //FÖR TESTNING System.out.println("; tal[i]="+tal[i]); //FÖR TESTNING while (!avbryt); // Avbryt? antalinmatade = i + 1; // Beräkning //Summera sum = 0.0; for (int k = 0; k <= i; k++) { System.out.println("K="+k); //FÖR TESTNING sum = sum + tal[k]; //För testning System.out.println("sum=" + sum + " antal=" + antalinmatade); //Medelvärde. // 7 positioner för decimaltalet, varav 1 decimal (medför standardavrundning), högerjusterat. // För att få decimalresultat av division av två integer: // konvertera ett av talen till double. System.out.print("Medelpoäng: "); medel = (double)(sum/antalinmatade); // Utskrift System.out.format("%7.1f%n", medel ); //Sluta? System.out.printf ("Sluta? (J/N) "); svar = br.readline(); sluta = svar.equals("j"); while (!sluta); //Sluta? System.out.println("Klart."); //END calculateaveragepoints

12 package java_medelbetyg; import java.io.bufferedreader; import java.io.inputstreamreader; public class AveragePoints05 { //ÄNDRAT FRÅN VERSION 01: // Korrekt uträkning av medelpoängen public void calculateaveragepoints() throws IOException { // Utför rutan 'Medelpoäng för kurser' i JSP-diagrammet. //Konstanter final int ANTAL = 3; //Versaler för konstanter enligt konventionen för Java //Variabler int i; //i = varvräknare Double x, sum; //x = talet som matades in, sum = summan av poängen. Double för decimalpoäng //och för att få decimaler i resulatet av divisionen. int antalinmatade; //NYTT: Används för tydlighet för den som läser koden String svar; //Användarens svar på frågor Double medel; //Medelvärdet Boolean avbryt, sluta; //NYTT: För tydlighet i looparnas brytvillkor //Designbeslut: Det ska få plats 150 tal. Två alternativ: // 1. new int[antal] ==> det första talet på index=0, det 150:e elementet har index 149 etc. // 2. new int[antal+1] ==> använd ej index 0, första talet på index = 1 och // det 150:e på index =150. Double[] tal = new Double[ANTAL]; //Det 150:e elementet har index 149. //IO (denna programmerare ogillar scanner bl.a. pga problemen när olika datatyper ska läsas). // BufferedReader är entydig och tillförlitlig. BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // 'Gör jobbet'-rutan i JSP-diagrammet utgörs av allt inne i loopen do { // En kurs //Inmatning (användaren matar in poängen ett åt gången) i = -1; // i = ett lägre än det lägsta värdet som arrayindexet får ha do { //Inmatning en poäng (den tomma rutan i JSP-diagrammet) System.out.printf("Poäng följd av ENTER (-1 för att avsluta): "); x = Double.parseDouble( br.readline() ); //Användaren skriver in ett tal avbryt = (x == -1); //avbryt blir True eller False if(!avbryt ) { i = i + 1;

13 tal[i] = x; //Undvik att ändra 'avbryt' från True till False. Ändra bara om det är till True. if (i == ANTAL - 1) { avbryt = true; System.out.print ("LOOPEN INMATNING: i="+i ); //FÖR TESTNING System.out.println("; tal[i]="+tal[i]); //FÖR TESTNING while (!avbryt); // Avbryt? antalinmatade = i + 1; // Beräkning //Summera sum = 0.0; for (int k = 0; k <= i; k++) { System.out.println("K="+k); //FÖR TESTNING sum = sum + tal[k]; //För testning System.out.println("sum=" + sum + " antal=" + antalinmatade); //Medelvärde. // 7 positioner för decimaltalet, varav 1 decimal (medför standardavrundning), högerjusterat. // För att få decimalresultat av division av två integer: // konvertera ett av talen till double. System.out.print("Medelpoäng: "); medel = (double)(sum/antalinmatade); // Utskrift System.out.format("%7.1f%n", medel ); //Sluta? System.out.printf ("Sluta? (J/N) "); svar = br.readline(); sluta = svar.equals("j"); while (!sluta); //Sluta? System.out.println("Klart."); //END calculateaveragepoints

14 package java_medelbetyg; import java.io.bufferedreader; import java.io.inputstreamreader; public class AveragePoints06 { //ÄNDRAT FRÅN VERSION 01: // Korrekt uträkning av medelpoängen public void calculateaveragepoints() throws IOException { // Utför rutan 'Medelpoäng för kurser' i JSP-diagrammet. //Konstanter final int ANTAL = 3; //Versaler för konstanter enligt konventionen för Java //Variabler int i; //i = varvräknare Double x, sum; //x = talet som matades in, sum = summan av poängen. Double för decimalpoäng //och för att få decimaler i resulatet av divisionen. int antalinmatade; //NYTT: Används för tydlighet för den som läser koden String svar; //Användarens svar på frågor Double medel; //Medelvärdet Boolean avbryt, sluta; //NYTT: För tydlighet i looparnas brytvillkor //Designbeslut: Det ska få plats 150 tal. Två alternativ: // 1. new int[antal] ==> det första talet på index=0, det 150:e elementet har index 149 etc. // 2. new int[antal+1] ==> använd ej index 0, första talet på index = 1 och // det 150:e på index =150. Double[] tal = new Double[ANTAL]; //Det 150:e elementet har index 149. //IO (denna programmerare ogillar scanner bl.a. pga problemen när olika datatyper ska läsas). // BufferedReader är entydig och tillförlitlig. BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // 'Gör jobbet'-rutan i JSP-diagrammet utgörs av allt inne i loopen do { // En kurs //Inmatning (användaren matar in poängen ett åt gången) i = -1; // i = ett lägre än det lägsta värdet som arrayindexet får ha do { //Inmatning en poäng (den tomma rutan i JSP-diagrammet) System.out.printf("Poäng följd av ENTER (-1 för att avsluta): "); x = Double.parseDouble( br.readline() ); //Användaren skriver in ett tal avbryt = (x == -1); //avbryt blir True eller False if(!avbryt ) { i = i + 1; tal[i] = x;

15 //Undvik att ändra 'avbryt' från True till False. Ändra bara om det är till True. if (i == ANTAL - 1) { avbryt = true; System.out.print ("LOOPEN INMATNING: i="+i ); //FÖR TESTNING System.out.println("; tal[i]="+tal[i]); //FÖR TESTNING while (!(x==-1) &&!(i==antal-1)); // Avbryt? antalinmatade = i + 1; // Beräkning //Summera sum = 0.0; for (int k = 0; k <= i; k++) { System.out.println("K="+k); //FÖR TESTNING sum = sum + tal[k]; //För testning System.out.println("sum=" + sum + " antal=" + antalinmatade); //Medelvärde. // 7 positioner för decimaltalet, varav 1 decimal (medför standardavrundning), högerjusterat. // För att få decimalresultat av division av två integer: // konvertera ett av talen till double. System.out.print("Medelpoäng: "); medel = (double)(sum/antalinmatade); // Utskrift System.out.format("%7.1f%n", medel ); //Sluta? System.out.printf ("Sluta? (J/N) "); svar = br.readline(); sluta = svar.equals("j"); while (!sluta); //Sluta? System.out.println("Klart."); //END calculateaveragepoints

Ett exempel som illustration till Laboration 1

Ett exempel som illustration till Laboration 1 Ett exempel som illustration till Laboration 1 Filen java_average_points.zip innehåller Java-koden till exemplet. Programmets avsikt enligt kravspecifikationen Användaren matar in poäng på en tentamen

Läs mer

Uppdaterat Systemunderhåll, kvalitetsarbete, testning

Uppdaterat Systemunderhåll, kvalitetsarbete, testning Uppdaterat 2015-04-06 1.1 Systemunderhåll, kvalitetsarbete, testning 1.2 Typer av systemunderhåll: Corrective maintenance Adaptive maintenance Perfective maintenance Underhållsarbetet pågår under systemets

Läs mer

Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2

Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2 AID-nummer: Datum: 2014-12-18 Kurskod: 725G61 Provkod: LAB1 Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2 Skrivningstid: 2014-12-18 klockan 8.00-10.00. Hjälpmedel: Inga. För varje fråga

Läs mer

TENTAMEN PROGRAMMERINGSMETODIK MOMENT 2 - JAVA, 4P

TENTAMEN PROGRAMMERINGSMETODIK MOMENT 2 - JAVA, 4P UME UNIVERSITET Datavetenskap 981212 TENTAMEN PROGRAMMERINGSMETODIK MOMENT 2 - JAVA, 4P Datum : 981212 Tid : 9-15 HjŠlpmedel : Inga Antal uppgifter : 9 TotalpoŠng : 60 (halva pošngtalet kršvs normalt fšr

Läs mer

Programmering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning.

Programmering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning. Programmering med Java Programmering med Java Programspråket Java Källkodsexempel Källkod Java API-exempel In- och utmatning Grunderna Ann Pan panda@nada.kth.se Rum 1445, plan 4 på Nada 08-7909690 Game.java

Läs mer

Att skriva till och läsa från terminalfönstret

Att skriva till och läsa från terminalfönstret Att skriva till och läsa från terminalfönstret Oftast används grafiska komponenter i Java för att kommunicera med användaren (användargränssnitt), men det finns objekt i standardbiblioteken för de tillfällen

Läs mer

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering Föreläsning 1 Objektorienterad programmering DD1332 Introduktion till Java Kompilering, exekvering, variabler, styrstrukturer Kompilering och exekvering Ett program måste översättas till datorns språk

Läs mer

JAVAUTVECKLING LEKTION 4

JAVAUTVECKLING LEKTION 4 JAVAUTVECKLING LEKTION 4 2016 Mahmud Al Hakim mahmud.al.hakim@nackademin.se www.alhakim.se AGENDA Iterationer (loopar) Algoritmer Mer om felsökning 1 WHILE-SATSEN String s = JOptionPane.showInputDialog("Talet

Läs mer

JAVAUTVECKLING LEKTION 7

JAVAUTVECKLING LEKTION 7 JAVAUTVECKLING LEKTION 7 2016 Mahmud Al Hakim mahmud.al.hakim@nackademin.se www.alhakim.se AGENDA Olika språkversioner (Klassen Locale) Utskrift i kommandofönster Inläsning via kommandofönster Standardklassen

Läs mer

4 13 / %.; 8 </" '': " / //&' " " ' * TelefonKostnad +,-%&. #!" $% " &' . > / ' 5 /' * 13/ &' static Math 1+" &'/ % 12 "" static "' * 1 /") %& &

4 13 / %.; 8 </ '':  / //&'   ' * TelefonKostnad +,-%&. #! $%  &' . > / ' 5 /' * 13/ &' static Math 1+ &'/ % 12  static ' * 1 /) %& & TelefonKostnad static Math static $ & )&* +,-&. 0 +& + & 3 356+573 ) & & 6 3 3 & 3 * 6 3.:; < = 3 = 6 ; < : & >?.;,;@.A@;0,0,? @B0 C,0 > *. > 5 C D & D 5 * &! ; 66C! * C, 0 E,&! 0 F,G0 >: = = C 3 & HI

Läs mer

Tentamen , Introduktion till Java, dtaa98, dtea53

Tentamen , Introduktion till Java, dtaa98, dtea53 Mittuniversitetet 2007-09-01 Institutionen för informationsteknologi och medier Sid:1(3) dtaa98, dtea53 Martin Kjellqvist; Linda Karlsson, Ulf Reiman Lösningsansatser Tentamen 2007-09-01, Introduktion

Läs mer

Tentamen. Lösningsförslag

Tentamen. Lösningsförslag Sida 1/8 Tentamen Grundläggande programmering i Java A 5p, DTAA32 2002-03-22 Lösningsförslag Uppgift 1 ( 3p ) Utskriften blir: Skriv in ett tal 24 47 48 intal=471 Uppgift 2 ( 6p ) a.) b.) c.) d.) e.) falskt

Läs mer

Objektorienterad programmering i Java

Objektorienterad programmering i Java Objektorienterad programmering i Java Föreläsning 4 Täcker i stort sett kapitel 6 i kursboken Java Software Solutions 1 Läsanvisningar Den här föreläsningen är uppbyggd som en fortsättning av exemplet

Läs mer

[] Arrayer = Indexerad variabel

[] Arrayer = Indexerad variabel [] Arrayer = Indexerad variabel Lagra många värden i en variabel Jmfr inom matematiken, variabler x 0, x 1, x 2, I detta dokument tas upp hur man skapar och hanterar sådana variabler i java. Dessa kallas

Läs mer

Parsing med Recursive Descent, Avbildningsklasser. Syntaxdiagram. Syntaxdiagram och kodning expression. Betrakta följande uttryck

Parsing med Recursive Descent, Avbildningsklasser. Syntaxdiagram. Syntaxdiagram och kodning expression. Betrakta följande uttryck Betrakta följande uttryck a +(b + c) d + e (f + g h) Parsing med Recursive Descent, Avbildningsklasser Tobias Wrigstad (baserat på bilder från Tom Smedsaas) 22 november 2010 Beräkning med regler: multiplikation

Läs mer

String [] argv. Dagens Agenda. Mer om arrayer. Mer om arrayer forts. String [] argv. argv är variabelnamnet. Arrayer och Strängar fortsättning

String [] argv. Dagens Agenda. Mer om arrayer. Mer om arrayer forts. String [] argv. argv är variabelnamnet. Arrayer och Strängar fortsättning Dagens Agenda String [] argv String [] argv Arrayer och Strängar fortsättning Booleska operatorer if, for, while satser Introduktion till algoritmer public static void main(string [] argv) argv är variabelnamnet

Läs mer

F4. programmeringsteknik och Matlab

F4. programmeringsteknik och Matlab Programmeringsspråk Föreläsning 4 programmeringsteknik och Matlab 2D1312/ 2D1305 Introduktion till Java Kompilering, exekvering, variabler, styrstrukturer 1 Ett program är en eller flera instruktioner

Läs mer

SMD 134 Objektorienterad programmering

SMD 134 Objektorienterad programmering SMD 134 Objektorienterad programmering Dagens agenda: Typer i Java: primitiva datatyperna, referenstyper Variabler och variabeltilldelningar med primitiva typer Konstanter av de olika typerna. Heltalsräkning

Läs mer

1 Programmering i Java. Program element - Introduktion. Exempel. Exempel. Kapitel 3:

1 Programmering i Java. Program element - Introduktion. Exempel. Exempel. Kapitel 3: Program element - Introduktion : Ð data typer Ð variabler Ð operatorer och uttryck Ð val och loopar Ð input och output 1 2 import java.io.*; class Addition //===========================================================

Läs mer

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Felsökning. Datatyper. Referenstyper. Metoder / funktioner

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Felsökning. Datatyper. Referenstyper. Metoder / funktioner 732G11 Linköpings universitet 2011-01-21 1 2 3 4 5 6 Skapa program Kompilera: Källkod Kompilator bytekod Köra: Bytekod Virtuell maskin Ett riktigt program Hej.java class Hej { public static void main (

Läs mer

Övning2. Variabler. Data typer

Övning2. Variabler. Data typer Vahid 28 okt 2002 prgk02 Övning2 -Repetition -Variabler -Primitiva typer (+ boolean) -Operatörer +, ++, --, -Typ konvertering -Wrapper klasser -Jämförelse operatörer,(==, =, ,!=,!) -String hur man

Läs mer

Tentamen OOP 2015-03-14

Tentamen OOP 2015-03-14 Tentamen OOP 2015-03-14 Anvisningar Fråga 1 och 2 besvaras på det särskilt utdelade formuläret. Du får gärna skriva på bägge sidorna av svarsbladen, men påbörja varje uppgift på ett nytt blad. Vid inlämning

Läs mer

Föreläsning 3-4 Innehåll

Föreläsning 3-4 Innehåll Föreläsning 3-4 Innehåll Skriva egna metoder Logiska uttryck Algoritm för att beräkna min och max Vektorer Datavetenskap (LTH) Föreläsning 3-4 HT 2017 1 / 36 Diskutera Vad gör programmet programmet? Föreslå

Läs mer

Dagens text. Programmeringsteknik. Mer om Scanner-klassen. Dialogrutor (klassen JOptionPane) Bubbelsortering. Omslagsklasser.

Dagens text. Programmeringsteknik. Mer om Scanner-klassen. Dialogrutor (klassen JOptionPane) Bubbelsortering. Omslagsklasser. (16 februari 2016 F5.1 ) Dagens text Programmeringsteknik Mer om Scanner-klassen Dialogrutor (klassen JOptionPane) Bubbelsortering ArrayList Omslagsklasser Arbetsexempel (16 februari 2016 F5.2 ) Pokertärningar

Läs mer

Lite om reella tal. Programmering. I java. Om operatorers associativitet och prioritet

Lite om reella tal. Programmering. I java. Om operatorers associativitet och prioritet Programmering hh.se/db2004 Föreläsning 4: Fält samt Input/Output Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Lite om reella tal Vad kan man göra med reella tal? Utöver de

Läs mer

Dagens text. Programmeringsteknik. Mer om Scanner-klassen. Dialogrutor (klassen JOptionPane) Bubbelsortering. Omslagsklasser.

Dagens text. Programmeringsteknik. Mer om Scanner-klassen. Dialogrutor (klassen JOptionPane) Bubbelsortering. Omslagsklasser. (1 oktober 2017 F5 1 ) Dagens text Programmeringsteknik Mer om Scanner-klassen Dialogrutor (klassen JOptionPane) Bubbelsortering ArrayList Omslagsklasser Arbetsexempel (1 oktober 2017 F5 2 ) Pokertärningar

Läs mer

OOP Objekt-orienterad programmering

OOP Objekt-orienterad programmering OOP F2:1 OOP Objekt-orienterad programmering Föreläsning 2 Deklaration och tilldelning Programsatser Tilldelning Input/Output Selektion Deklaration och tilldelning OOP F2:2 int x; double d; char ch; boolean

Läs mer

Tentamen , Grundläggande programmering i Java

Tentamen , Grundläggande programmering i Java Institutionen för informationsteknologi och medier Sid:1(3) Grundläggande programmering i Java Martin Kjellqvist Lösningsförslag, lösningsansatser Tentamen 2006-01-20, Grundläggande programmering i Java

Läs mer

Command line argumenter. Objektorienterad Programmering (TDDC77) Vad blir resultatet? Nu då? Ahmed Rezine. Hösttermin 2016

Command line argumenter. Objektorienterad Programmering (TDDC77) Vad blir resultatet? Nu då? Ahmed Rezine. Hösttermin 2016 Command line argumenter Objektorienterad Programmering (TDDC77) Föreläsning VI: eclipse, felsökning, felhantering Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 /* Cla. java * Programmet illustrerar

Läs mer

Objektorienterad Programmering (TDDC77)

Objektorienterad Programmering (TDDC77) Objektorienterad Programmering (TDDC77) Föreläsning VI: eclipse, felsökning, felhantering Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 Outline Felhantering Eclipse Felsökning Command line argumenter

Läs mer

Lite mer om Javas stöd för fält. Programmering. Exempel: vad är det största talet? hh.se/db2004. Fält samt Input/Output

Lite mer om Javas stöd för fält. Programmering. Exempel: vad är det största talet? hh.se/db2004. Fält samt Input/Output Programmering hh.se/db2004 Föreläsning 5: Fält samt Input/Output Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Lite mer om Javas stöd för fält Hur många element har ett fält?

Läs mer

Språkkonventioner och redigering av tal.

Språkkonventioner och redigering av tal. Språkkonventioner och redigering av tal. Kap J3-1 Konventioner för olika språk hanteras med hjälp av klassen java.util.locale Ett objekt i denna klass beskriver en lokal konvention. Lokala konventioner

Läs mer

Objektorienterad Programmering (TDDC77)

Objektorienterad Programmering (TDDC77) Objektorienterad Programmering (TDDC77) Föreläsning V: arrayer, metoder, räckvidd (scope), eclipse Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 Outline Arrayer Metoder Räckvidd (Scope) Eclipse

Läs mer

Det finns en referensbok (Java) hos vakten som du får gå fram och läsa men inte ta tillbaka till bänken.

Det finns en referensbok (Java) hos vakten som du får gå fram och läsa men inte ta tillbaka till bänken. Tentamen Programmeringsteknik I 2015-03-19 Skrivtid: 14:00 19:00 Hjälpmedel: Java-bok Tänk på följande Det finns en referensbok (Java) hos vakten som du får gå fram och läsa men inte ta tillbaka till bänken.

Läs mer

JAVAUTVECKLING LEKTION 8

JAVAUTVECKLING LEKTION 8 JAVAUTVECKLING LEKTION 8 2016 Mahmud Al Hakim mahmud.al.hakim@nackademin.se www.alhakim.se AGENDA Fält (Arrayer) Att skapa och arbeta med fält Indexering Jämförelse av fält Flerdimensionella fält 1 VAD

Läs mer

Lite om felhantering och Exceptions Mer om variabler och parametrar Fält (eng array) och klassen ArrayList.

Lite om felhantering och Exceptions Mer om variabler och parametrar Fält (eng array) och klassen ArrayList. Institutionen för Datavetenskap Göteborgs universitet HT2009 DIT011 Objektorienterad programvaruutveckling GU (DIT011) Föreläsning 3 Innehåll Lite om felhantering och Exceptions Mer om variabler och parametrar

Läs mer

Föreläsning 3. Iteration while-satsen

Föreläsning 3. Iteration while-satsen Föreläsning 3 Iteration while-satsen Datatypen double I en dator kan man inte lagra hur stora eller hur små tal som helst. De enkla datatyperna, som används för att lagra tal (t.ex. int och double), har

Läs mer

OOP Objekt-orienterad programmering

OOP Objekt-orienterad programmering OOP F6:1 OOP Objekt-orienterad programmering Föreläsning 6 Mer om klasser och objekt Hantera många objekt ArrayList tostring() metoden this Vi vill ofta hantera många objekt i ett program: OOP F6:2 public

Läs mer

Iteration while-satsen

Iteration while-satsen Datatypen double TDA143 I1 Programmerade system Föreläsning 3 (OH-bilder 3) Iteration while-satsen Christer Carlsson I en dator kan man inte lagra hur stora eller hur små tal som helst. De enkla datatyperna,

Läs mer

1 Uppgift 1. a) Skapar ett Company-objekt med hjälp av den överlagrade konstruktorn. Du kan själv välja värden på instansvariablerna.

1 Uppgift 1. a) Skapar ett Company-objekt med hjälp av den överlagrade konstruktorn. Du kan själv välja värden på instansvariablerna. 1 Uppgift 1 Klassen Company Banken FinanceTrust som tidigare bara haft privatpersoner som kunder vill nu bygga ut sitt datasystem så att även företag kan registreras som kunder. Skriv klassen Company som

Läs mer

TDDC30. Kursledning Kursledare: Jonas Lindgren. Labassistent: Jonas Lindgren Labassistent: Niklas Holma Labassistent: Erik Nilsson

TDDC30. Kursledning Kursledare: Jonas Lindgren. Labassistent: Jonas Lindgren Labassistent: Niklas Holma Labassistent: Erik Nilsson TDDC30 Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 1 Jonas Lindgren, Institutionen för Datavetenskap, LiU På denna föreläsning: Kursinformation Imperativa delen av

Läs mer

ITK:P1 Föreläsning 1. Programmering. Programmeringsspråket Java. Stark typning Explicit typning Strukturerat Hög säkerhet

ITK:P1 Föreläsning 1. Programmering. Programmeringsspråket Java. Stark typning Explicit typning Strukturerat Hög säkerhet ITK:P1 Föreläsning 1 Att programmera i språket Java DSV Peter Mozelius Programmering Olika typer av programmering som t ex: o Imperativ programmering (C, Pascal m fl) o Funktionell programmering (Lisp,

Läs mer

Föreläsning 2, vecka 8: Repetition

Föreläsning 2, vecka 8: Repetition TDA 548: Grundläggande Programvaruutveckling Föreläsning 2, vecka 8: Repetition Magnus Myréen Chalmers, läsperiod 1, 2016-2017 Idag Metoder och terminologi Referensvärden och arrays Interface och ritning

Läs mer

Programstruktur och terminologi. Programmet producerar följande utskrift i terminalfönstret: Ett Javaprogram består av en eller flera klasser

Programstruktur och terminologi. Programmet producerar följande utskrift i terminalfönstret: Ett Javaprogram består av en eller flera klasser // En första version av BankKonto-klassen class BankKonto { private String namn; private long nr; private double saldo; private double ränta; // Klassen TestaBankKonto // Klassens uppgift är att skapa

Läs mer

List.java. List.java. Printed by Tom Smedsaas

List.java. List.java. Printed by Tom Smedsaas Mar 03, 08 17:48 Page 1/3 class List * Representerar en länkad lista av godtyckliga objekt public class List { ListNode * Noder i listor protected static class ListNode { protected Object data; protected

Läs mer

Objektorienterad programmering. Fält som funktionsresultat. Mer om fält: att uppdatera ett parameterfält. Kontrast: Parametrar av primitiv typ

Objektorienterad programmering. Fält som funktionsresultat. Mer om fält: att uppdatera ett parameterfält. Kontrast: Parametrar av primitiv typ orienterad programmering Föreläsning 3 Exempel: Telefonboken Fält som funktionsresultat Exempel Definiera static double[] vectorsum(double[] a, double[] b) Betrakta sedan följande kodavsnitt:... double[]

Läs mer

725G61 - Laboration 4 Interaktion och I/O. Johan Falkenjack

725G61 - Laboration 4 Interaktion och I/O. Johan Falkenjack 725G61 - Laboration 4 Interaktion och I/O Johan Falkenjack November 5, 2013 1 Inledning I labb 1-3 har vi tittat på de grundläggande byggstenarna i programmering. Vi kommer återkomma till detta ämne när

Läs mer

Föreläsning 1 & 2 INTRODUKTION

Föreläsning 1 & 2 INTRODUKTION Föreläsning 1 & 2 INTRODUKTION Denna föreläsning Vad händer under kursen? praktisk information Kursens mål vad är programmering? Skriva små program i programspråket Java Skriva program som använder färdiga

Läs mer

Dagens föreläsning. Sett i datorsalarna. Mer om arrayer. Matriser. Formatering av utskrifter. Inläsning med hjälp av Scanner-klassen

Dagens föreläsning. Sett i datorsalarna. Mer om arrayer. Matriser. Formatering av utskrifter. Inläsning med hjälp av Scanner-klassen (5 februari 2018 F4 1 ) Dagens föreläsning Sett i datorsalarna Mer om arrayer Matriser Formatering av utskrifter Inläsning med hjälp av Scanner-klassen Ett exempel med dialogrutor Java-doc Kommer först

Läs mer

Tentamen på kursen DA7351, Programmering 1. 051102, kl 08.15-12.15. Malmö högskola Teknik och samhälle. DA7351, Programmering 1 1 051102

Tentamen på kursen DA7351, Programmering 1. 051102, kl 08.15-12.15. Malmö högskola Teknik och samhälle. DA7351, Programmering 1 1 051102 Tentamen på kursen DA7351, Programmering 1 051102, kl 08.15-12.15 Tillåtna hjälpmedel: Valfri bok om Java. Vid bedömning av lösningarna tas hänsyn till om dessa uppfyller de krav på programkvalitet (strukturering,

Läs mer

Laboration 13, Arrayer och objekt

Laboration 13, Arrayer och objekt Laboration 13, Arrayer och objekt Avsikten med denna laboration är att du ska träna på att använda arrayer. Skapa paketet laboration13 i ditt laborationsprojekt innan du fortsätter med laborationen. Uppgift

Läs mer

Tänk på följande: Det finns en referensbok (Java) hos tentavakten som du får gå fram och läsa men inte ta tillbaka till bänken.

Tänk på följande: Det finns en referensbok (Java) hos tentavakten som du får gå fram och läsa men inte ta tillbaka till bänken. Tentamen Programmeringsteknik I 2015-01-10 Skrivtid: 8.00 13.00 Hjälpmedel: Java-bok Tänk på följande: Det finns en referensbok (Java) hos tentavakten som du får gå fram och läsa men inte ta tillbaka till

Läs mer

Felhantering. Andra brott mot språkets regler. Man kan också i programmet bryta mot ett antal olika regler som gäller. Exempelvis:

Felhantering. Andra brott mot språkets regler. Man kan också i programmet bryta mot ett antal olika regler som gäller. Exempelvis: Felhantering I de flesta program finns eller uppstår ett antal olika fel. Man behöver en strategi för att hitta och rätta till sådana fel. Olika typer av fel som kan inträffa: syntaktiska fel Olika form

Läs mer

Föreläsning 3-4 Innehåll. Diskutera. Metod. Programexempel med metod

Föreläsning 3-4 Innehåll. Diskutera. Metod. Programexempel med metod Föreläsning 3-4 Innehåll Diskutera Vad gör programmet programmet? Föreslå vilka satser vi kan bryta ut till en egen metod. Skriva egna metoder Logiska uttryck Algoritm för att beräkna min och max Vektorer

Läs mer

Tentamen ID1004 Objektorienterad programmering May 29, 2012

Tentamen ID1004 Objektorienterad programmering May 29, 2012 Omtentamen för ID1004 Objektorienterad programmering HT11, 29 maj 2012, 09-13 Denna tentamen examinerar 3 högskolepoäng av kursen. Inga hjälpmedel är tillåtna. Tentamen består av 12 frågor. Varje fråga

Läs mer

F2 Datatyper och variabler. ID1004 Objektorienterad programmering Fredrik Kilander

F2 Datatyper och variabler. ID1004 Objektorienterad programmering Fredrik Kilander F2 Datatyper och variabler ID1004 Objektorienterad programmering Fredrik Kilander fki@kth.se Datatyper Java är ett starkt typat språk Varje slags data har en datatyp Datatyp Javasyntax Exempel Teckensträng

Läs mer

Skillnader mellan Python och Java

Skillnader mellan Python och Java Java Utvecklat på SUN Microsystems mitten 1990-talet Ursprungligen för Webprogram Nu mycket spritt Massor med läroböcker Vi använder Lewis&Loftus http://javasuncom/javase/6/docs/api/ Skillnader mellan

Läs mer

Lösningar för tenta 2 DAT043,

Lösningar för tenta 2 DAT043, Lösningar för tenta 2 DAT043, 2018-06-08. Uppgift 1 public class Car{ private String model; private String year; private double price; public Car(String model, String year, double price){ this.model =

Läs mer

Objektorienterad Programmering (TDDC77)

Objektorienterad Programmering (TDDC77) Objektorienterad Programmering (TDDC77) Föreläsning II: utmatning, variabler, typer Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2017 Outline Java Språket Utmatning av Sträng litteraler Variabler

Läs mer

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Muddy. Funktioner / metoder. Punktnotation. Evalueringsordning

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Muddy. Funktioner / metoder. Punktnotation. Evalueringsordning Varför? 732G11 Linköpings universitet 2011-02-08 Varför? 1 2 3 Varför? 4 5 Medelvärde av 5000 tal Varför? while-loopen int nrofints = 5000; int [] integers = new int [ nrofints ]; int pos = 0; while (

Läs mer

Tentamensskrivning Nätverksprogrammering (EDA095 - FED) 2004-05-25, kl 8-13

Tentamensskrivning Nätverksprogrammering (EDA095 - FED) 2004-05-25, kl 8-13 LUNDS TEKNISKA HÖGSKOLA Datavetenskap Nätverksprogrammering 2004 LÖSNINGAR Tentamensskrivning Nätverksprogrammering (EDA095 - FED) 2004-05-25, kl 8-13 DEL 1 - Frågor av teoretisk, principiell eller utredande

Läs mer

Arrayer (fält)

Arrayer (fält) Arrayer (fält) 1 Vad kommer vi att ta upp om arrayer? Deklarera och initiera arrayen Lägga till i arrayen Ta ut på indexposition Ta reda på arrayens längd Sortera arrayen Söka igenom arrayen Loopa igenom

Läs mer

Heltalsrepresentation. Fler byggstenar. Overflow och Underflow. TvŒ-komplement. FlyttalsvŠrden. Fyra heltalstyper. Tecken-bit

Heltalsrepresentation. Fler byggstenar. Overflow och Underflow. TvŒ-komplement. FlyttalsvŠrden. Fyra heltalstyper. Tecken-bit Fler byggstenar Heltalsrepresentation Fyra heltalstyper Intern data representation Typomvandlingar Fler operatorer VŠljande & upprepande satser Tecken-bit by te t short t int t 7 bitar 15 bitar 31 bitar

Läs mer

Hej Då, Karel! Programmering. Vårt första Javaprogram. hh.se/db2004. Java. Grundtyper, variabler och arrayer

Hej Då, Karel! Programmering. Vårt första Javaprogram. hh.se/db2004. Java. Grundtyper, variabler och arrayer Programmering hh.se/db2004 Föreläsning 3: Java. Grundtyper, variabler och arrayer Hej Då, Karel! Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Center for Research on Embedded

Läs mer

Del A (obligatorisk för alla)

Del A (obligatorisk för alla) Del A (obligatorisk för alla) A1. Ringa in rätt svarsalternativ eller skriv svar i ruta om sådan a) Satsen double x = (int)(1 + 3/2.0) + 3.; resulterar i b) Satsen int x = (int)(1 + 3/2.0) + 3.; resulterar

Läs mer

Den som bara har en hammare tror att alla problem är spikar

Den som bara har en hammare tror att alla problem är spikar Introduktion Föreläsning (Weiss kap. -4) Många begrepp blir det Introduktion till kursen Exempel: Datastrukturen mängd Generiska Den som bara har en hammare tror att alla problem är spikar Vilken

Läs mer

OOP Objekt-orienterad programmering

OOP Objekt-orienterad programmering OOP F4:1 OOP Objekt-orienterad programmering Föreläsning 4 Metoder klass-metoder instans-metoder Metoder - subrutiner OOP F4:2 Kod som utför en viss operation. Ligger i olika klasser och anropas via operatorn.

Läs mer

Kort repetition. Programmeringsteknik för Bio1 och I1. Vad ska vi lära oss idag? Ett exempel

Kort repetition. Programmeringsteknik för Bio1 och I1. Vad ska vi lära oss idag? Ett exempel Programmeringsteknik för Bio1 och I1 Övning 2 Kort repetition Övningsgrupp 3 (Sal E33) Johannes Hjorth hjorth@nada.kth.se Rum 4538 på plan 5 i D-huset 08-790 69 02 Kurshemsida: http://www.nada.kth.se/kurser/kth/2d1310/

Läs mer

Kapitel 6. Hakparenteser fšr att ange index MŒnga všrden av samma typ

Kapitel 6. Hakparenteser fšr att ange index MŒnga všrden av samma typ Organisation En array Šr en ordnad lista av všrden Varje všrde har ett numeriskt index - deklaration & anvšndning som parametrar flerdimensionella fšlt N element indexeras med 0 till N-1 0 1 2 3 4 5 6

Läs mer

Tentamen Programmeringsteknik II för STS Skrivtid: Inga hjälpmedel.

Tentamen Programmeringsteknik II för STS Skrivtid: Inga hjälpmedel. Tentamen Programmeringsteknik II för STS 2007-03-09 Skrivtid: 1500-2000 Inga hjälpmedel. Tänk på följande OBS: För betygen 4, 5 och VG kommer något högre gränser än normalt användas. Skriv läsligt! Använd

Läs mer

Dagens föreläsning. Sett i datorsalarna. Mer om arrayer. Matriser. Formatering av utskrifter. Inläsning med hjälp av Scanner-klassen

Dagens föreläsning. Sett i datorsalarna. Mer om arrayer. Matriser. Formatering av utskrifter. Inläsning med hjälp av Scanner-klassen (10 februari 2019 F4 1 ) Dagens föreläsning Sett i datorsalarna Mer om arrayer Matriser Formatering av utskrifter Inläsning med hjälp av Scanner-klassen (10 februari 2019 F4 2 ) Hört och sett if-loop Skall

Läs mer

DI-institutionen Sid 1 av 6 Hans-Edy Mårtensson Sten Sundin

DI-institutionen Sid 1 av 6 Hans-Edy Mårtensson Sten Sundin DI-institutionen Sid 1 av 6 Hans-Edy Mårtensson Sten Sundin TENTAMEN I IKB007 INTERNETPROGRAMMERING MED JAVA för SY2 1999-03-17, kl 14.00-18.00 Hjälpmedel: En lärobok i Java programmering Återlämningstillfälle:

Läs mer

2 b) Följande finns definierat: public class Spel String titel = "Spel"; Dice[] tärningar = new Dice[10]; tärningar[0] = new Dice("Röd"); tärningar[1]

2 b) Följande finns definierat: public class Spel String titel = Spel; Dice[] tärningar = new Dice[10]; tärningar[0] = new Dice(Röd); tärningar[1] Namn: Personnr: 1 2D1310 Programmeringsteknik i Java för B2 och V1. Tentamen (1p) 12 januari 2002, kl 14.00 17.00 Hjälpmedel: En javabok(det blå javahäftet som ingår i kursbunten räknas som en javabok.

Läs mer

Instuderingsfrågor, del B

Instuderingsfrågor, del B Uppgift 1. Vad skrivs ut i nedanstående programsekvenser? Uppgift 2. Instuderingsfrågor, del B a) int minutes = 10; while ( minutes

Läs mer

I Skapa Hej.java och skriv programmet. I Kompilera med javac Hej.java. I Rätta fel och repetera tills du lyckas kompilera ditt program

I Skapa Hej.java och skriv programmet. I Kompilera med javac Hej.java. I Rätta fel och repetera tills du lyckas kompilera ditt program Kompilera och köra programmet Objektorienterad Programmering (TDDC77) Föreläsning II: utmatning, variabler, typer Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 under terminal 2: I Skapa Hej.java

Läs mer

Hur ser ett Java-program ut?

Hur ser ett Java-program ut? (27 augusti 2012 Repetitionsmaterial 1 ) Hur ser ett Java-program ut? // Ett första Java-program som skriver // ut ett meddelande på terminalen public class HelloWorld { public static void main(string

Läs mer

Objektorienterad Programmering (TDDC77)

Objektorienterad Programmering (TDDC77) Objektorienterad Programmering (TDDC77) Föreläsning II: utmatning, variabler, typer Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 Kompilera och köra programmet under terminal 2: I Skapa Hej.java

Läs mer

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper Tentamen Programmeringsteknik I 2016-06-11 Skrivtid: 0900 1400 Tänk på följande Skriv läsligt. Använd inte rödpenna. Skriv bara på framsidan av varje papper. Lägg uppgifterna i ordning. Skriv uppgiftsnummer

Läs mer

Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 12

Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 12 Grundläggande programmering, STS 1, VT 2007. Sven Sandberg Föreläsning 12 I torsdags: Klassen TelefonKostnad Exemplifierar objektorienterad design, metoder, konstruktorer static Standardklassen Math Matematiska

Läs mer

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 1 Jonas Lindgren, Institutionen för Datavetenskap, LiU

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 1 Jonas Lindgren, Institutionen för Datavetenskap, LiU TDDC30 Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 1 Jonas Lindgren, Institutionen för Datavetenskap, LiU På denna föreläsning: Kursinformation Imperativa delen av

Läs mer

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper Tentamen Programmeringsteknik I 2017-03-16 Skrivtid: 0800 1300 Tänk på följande Skriv läsligt. Använd inte rödpenna. Skriv bara på framsidan av varje papper. Lägg uppgifterna i ordning. Skriv uppgiftsnummer

Läs mer

2 b) Bodega bodegan = new Bodega(); double moms = 0.235; String namn = "Vargtass"; System.out.println(namn + " " + moms + bodegan.ändra(moms, namn); S

2 b) Bodega bodegan = new Bodega(); double moms = 0.235; String namn = Vargtass; System.out.println(namn +   + moms + bodegan.ändra(moms, namn); S Namn: Personnr: 1 2D1310 Programmeringsteknik i Java för M1, K2, Media1 och I1 (1p) 16 december 2000 Hjälpmedel: En Javabok. System.out är ett objekt kopplat till skärmen, dvs samma sak som i labbarna

Läs mer

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper Tentamen Programmeringsteknik I 2018-03-16 Skrivtid: 8:00 13:00 Tänk på följande Skriv läsligt. Använd inte rödpenna. Skriv bara på framsidan av varje papper. Lägg uppgifterna i ordning. Skriv uppgiftsnummer

Läs mer

Uppgift: Algoritm för att beräkna kontrollsiffran i ett personnummer givet de 9 första siffrorna. Torrsimning av algoritm för personnummer

Uppgift: Algoritm för att beräkna kontrollsiffran i ett personnummer givet de 9 första siffrorna. Torrsimning av algoritm för personnummer F6 Observera att när man utvecklar program så är inte alla lösningar på vägen korrekta. Speciellt den här gången så finns många OH med program som inte fungerar eftersom det är just det vi skall se på

Läs mer

FÖRSLAG TILL LÖSNINGAR FÖR TENTAMEN I INTERNETPROGRAMMERING MED JAVA, 5p för SY , kl

FÖRSLAG TILL LÖSNINGAR FÖR TENTAMEN I INTERNETPROGRAMMERING MED JAVA, 5p för SY , kl Högskolan Dalarna sid 1 av 6 DI-institutionen Hans-Edy Mårtensson Sten Sundin FÖRSLAG TILL LÖSNINGAR FÖR TENTAMEN I INTERNETPROGRAMMERING MED JAVA, 5p för SY2 2001-03-16, kl 14.00-18.00 1. Grunderna i

Läs mer

17.9 Funktioner för avbildningstabeller

17.9 Funktioner för avbildningstabeller 17. Containerklasser l.setopaque(true); // ogenomskinlig bakgrund String fname = p.getproperty("fontname", "Serif"); String fstyle = p.getproperty("fontstyle", "PLAIN"); // översätt stilen till en heltalskonstant

Läs mer

Lösningsförslag: Instuderingsfrågor, del A

Lösningsförslag: Instuderingsfrågor, del A Uppgift 1. Objektorienterad programmering, Z1 Lösningsförslag: Instuderingsfrågor, del A Följande regler gäller för namngivning av identifierare i Java: 1. Ett identifierarnamn består endast av bokstäver,

Läs mer

Datatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek

Datatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek De åtta primitiva typerna Java, datatyper, kontrollstrukturer Skansholm: Kapitel 2) Uppsala Universitet 11 mars 2005 Typ Innehåll Defaultvärde Storlek boolean true, false false 1 bit char Tecken \u000

Läs mer

2 b) Följande finns definierat: import java.awt.*; public class Uppgift1b public static void main(string[] mupp) Color färg = Color.blue; Bil[] bilar

2 b) Följande finns definierat: import java.awt.*; public class Uppgift1b public static void main(string[] mupp) Color färg = Color.blue; Bil[] bilar Namn: Personnr: 1 2D1310 Programmeringsteknik i Java Tentamen (1p) den 22:a augusti 2002, kl 14.00 17.00 Hjälpmedel: En javabok(det blå javahäftet som ingår i kursbunten räknas som en javabok). Förklarande

Läs mer

Namn: Personnr: 1 2D1310 Programmeringsteknik i Java för B,V (1p) 13 januari 2001, kl Hjälpmedel: En Javabok. För betyget godkänt krävs at

Namn: Personnr: 1 2D1310 Programmeringsteknik i Java för B,V (1p) 13 januari 2001, kl Hjälpmedel: En Javabok. För betyget godkänt krävs at Namn: Personnr: 1 2D1310 Programmeringsteknik i Java för B,V (1p) 13 januari 2001, kl 14.00 17.00 Hjälpmedel: En Javabok. För betyget godkänt krävs att a- eller b-delen av varje fråga (uppgift 1 4) samt

Läs mer

PROGRAMMERING-Java TENTAMINA

PROGRAMMERING-Java TENTAMINA PROGRAMMERING-Java TENTAMINA Nicolina Månsson 2010-03-17 Tentamensinstruktioner Poängsättning Hela tentamen omfattar 42 poäng. Poäng för varje uppgift står angivet inom parentes före varje uppgift. - För

Läs mer

2 b) Följande finns definierat: public class Käk String titel = "Chili con carne"; Krydda[] kryddor = new Krydda[10]; kryddor[0] = new Krydda("Svartpe

2 b) Följande finns definierat: public class Käk String titel = Chili con carne; Krydda[] kryddor = new Krydda[10]; kryddor[0] = new Krydda(Svartpe Namn: Personnr: 1 2D1310 Programmeringsteknik i Java för I1, K2, L1, M1, Media1 och T1. Tentamen (1p) 6 april 2002, kl 14.00 17.00 Hjälpmedel: En javabok(det blå javahäftet som ingår i kursbunten räknas

Läs mer

Del A (obligatorisk för alla)

Del A (obligatorisk för alla) Del A (obligatorisk för alla) A1. Koden följer garanterat namnkonventionerna. Ringa in rätta svar och lämna in tillsammans med dina övriga svar! a) Hur många objekt skapas av följande kod? World w = new

Läs mer

Föreläsning 6: Metoder och fält (arrays)

Föreläsning 6: Metoder och fält (arrays) TDA 545: Objektorienterad programmering Föreläsning 6: Metoder och fält (arrays) Magnus Myréen Chalmers, läsperiod 1, 2015-2016 I (föregående och) denna föreläsning Läsanvisning: kap 2 & 13 meddelanden

Läs mer

Föreläsning 1 & 2 INTRODUKTION

Föreläsning 1 & 2 INTRODUKTION Föreläsning 1 & 2 INTRODUKTION Denna föreläsning Vad händer under kursen? praktisk information Kursens mål vad är programmering? Skriva små program i programspråket Java Skriva program som använder färdiga

Läs mer

Föreläsning 3. Iteration. while-satsen for-satsen do-satsen

Föreläsning 3. Iteration. while-satsen for-satsen do-satsen Föreläsning 3 Iteration while-satsen for-satsen do-satsen Datatypen double De enkla datatyperna, som används för att lagra tal (t.ex. int och double), har en begränsad storlek och representerar således

Läs mer

Outline. I Vi kan lätt göra samma sak för fyra variabler... I Hur gör vi för 400 inlästa värden? I Ofta behöver man flera likadana variabler

Outline. I Vi kan lätt göra samma sak för fyra variabler... I Hur gör vi för 400 inlästa värden? I Ofta behöver man flera likadana variabler Outline Objektorienterad Programmering (TDDC77) Föreläsning V: arrayer, metoder, räckvidd (scope), eclipse Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 Vända om inlästa värden Vända om inlästa

Läs mer

TDDC77 Objektorienterad Programmering

TDDC77 Objektorienterad Programmering TDDC77 Objektorienterad Programmering Föreläsning 2 Sahand Sadjadee IDA, Linköpings Universitet Hösttermin, 2018 Outline Emacs Introduktion till Objektorienterad Programmering Introduktion till Java Variabler

Läs mer

Introduktion till Datalogi DD1339. Föreläsning 3 29 sept 2014

Introduktion till Datalogi DD1339. Föreläsning 3 29 sept 2014 Introduktion till Datalogi DD1339 Föreläsning 3 29 sept 2014 Ett lite intelligentare program? Klassen Rectangle Rectangle height width color setheight setwidth getcolor getarea Rectangle public class Rectangle{

Läs mer

Malmö högskola 2012/2013 Teknik och samhälle

Malmö högskola 2012/2013 Teknik och samhälle Laboration 5 Avsikten med laborationen är att du ska träna på att använda iterationer i dina program. I vanlig ordning placerar du dina lösningar i paketet laboration5. Uppgifterna är lätt matematiska

Läs mer