Chapter 3: Using Classes and Objects



Relevanta dokument
PROGRAMMERING-Java TENTAMINA

Tentamen OOP

Att bekanta dig med NetBeans programmeringsmiljö och skriva några enkla program med programmeringsspråket Java.

SMD 134 Objektorienterad programmering

Programmering A C# VT Ett kompendie över Programmering A (50p) i c# Stefan Fredriksson

Föreläsning 2 Objektorienterad programmering DD1332. Typomvandling

Grundläggande programmering med C# 7,5 högskolepoäng

Föreläsning 1 & 2 INTRODUKTION

Vem är vem på kursen. Objektorienterad programvaruutveckling GU (DIT011) Kursbok Cay Horstmann: Big Java 3rd edition.

Inledande programmering med C# (1DV402) 27+15=42 1 (22)

Programmeringsteknik med C och Matlab

Chapter 4: Writing Classes/ Att skriva egna klasser.

PROGRAMMERING-JAVA TENTAMINA

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.

För att skriva data till skärmen ( konsolen) används objektet System.out tillsammans med metoden println eller print.

Tentamen, EDA501 Programmering M L TM W K V

Tentamen på kursen DA7351, Programmering , kl Malmö högskola Teknik och samhälle. DA7351, Programmering

Uppgift 1 (Oläsliga krypterade meddelanden)

DUGGA: Objektorienterade applikationer. Läs detta! Uppgifterna är inte avsiktligt ordnade efter svårighetsgrad.

Översikt 732G11 PROGRAMMERING 1. Personal. Kursens mål. Litteratur. Kursens innehåll

Lektion 1, del b Utskrifter av variabelvärden Inläsning av värden till variabler

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

Föreläsning 4: Poster

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

PROGRAMMERING-Java Omtentamina

TDP002 - Imperativ programmering

Lösningsförslag, tentamen FYTA11 Javaprogrammering

Att använda pekare i. C-kod

Objektsamlingar i Java

OOP Objekt-orienterad programmering

Objektorienterad programmering D2

Laboration 1. "kompilera"-ikonen "exekvera"-ikonen

Föreläsning 3.1: Datastrukturer, en översikt

Tentamen, EDAA20/EDA501 Programmering

Lumbago - Förord. Välkommen till Journalprogrammet Lumbago.

Instruktioner för dig som ska söka till Mattekollo 2016

Övningar Dag 2 En första klass

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

Programmeringsuppgifter 1

Sätt att skriva ut binärträd

Introduktion till integrering av Schenkers e-tjänster. Version 2.0

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

Tentamen i Objektorienterad programmering

Vad är det frågan om En kort beskrivning av tjänsten. Den elektroniska jobbsökningen sker i följande steg:

Redovisning av inlämningsuppgifter

Tentamen i. för D1 m fl, även distanskursen. fredag 13 januari 2012

Enkla datatyper minne

Föreläsning 2: Avlusning och antilustekniker

DD1311 Programmeringsteknik för CL1 Laborationer läsåret

Föreläsning 5 (6) Metoder. Metoder Deklarera. Metoder. Parametrar Returvärden Överlagring Konstruktorer Statiska metoder tostring() metoden javadoc

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

Datorlära 3 Octave Workspace ovh mijlö Skriva text på skärmen Värdesiffror Variabler och typer Strängar Makro Vektorer

Objektorienterad Programmering (TDDC77)

Installationsanvisning för kursens programvara på egen dator

Objektorienterad Programmering (TDDC77)

Tentamen, EDAA10 Programmering i Java

Björn Abelli Programmeringens grunder med exempel i C#

Tentamen för kursen Objektorienterad programvaruutveckling GU (DIT010)

Programmering för språkteknologer I, VT2012. Rum

"if"-satsen. Inledande programmering med C# (1DV402)

Objektorienterad programmering i Java

Tentamen , Introduktion till Java, dtaa98, dtea53

Algoritmanalys. Genomsnittligen behövs n/2 jämförelser vilket är proportionellt mot n, vi säger att vi har en O(n) algoritm.

Klasser i Java kan ha metoder och egenskaper. Metoder beskriver funktioner som klassen kan utföra. Egenskaper beskriver innehållet i klassen.

Enklast att skriva variabelnamn utan ; innehåll och variabelnamn skrivs ut

Chapter 5: Conditionals and Loops

Lathund för webbredaktörer. Så skriver du på webben

trafiksimulering Intro OU5 trafiksimulering

TENTAMEN. Kurs: Objektorienterad programmeringsmetodik 5DV133 Ansvarig lärare: Anders Broberg. VT-13 Datum: Tid: kl

Att komma igång med FirstClass (FC)!

Excelfiler läggs till i ArcMap på samma sätt som annan data, genom Lägg till Data-knappen.

Föreläsning 11. Giriga algoritmer

Editering, Kompilering och Exekvering av Javaprogram

DSV A Procedurell programmering 5 poäng Tentamen

Tentaupplägg denna gång

Logga in. Elevöversikt. Kolumner. Godkänna. Urval. Hantera inflytt och byte. Sök. Familjebild. Utskriftsrutin Om pengen

OOP Objekt-orienterad programmering

Prova på-laboration i PHP Johan Sjöholm johsj@ida.liu.se Institutionen för datavetenskap, Linköpings universitet

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

Introduktion till Datalogi DD1339. Föreläsning 2 22 sept 2014

Google Apps For Education

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

Excelfiler läggs till i ArcMap på samma sätt som annan data, genom Lägg till Dataknappen.

Problem: BOW Bowling. Regler för Bowling. swedish. BOI 2015, dag 1. Tillgängligt minne: 256 MB

Laboration 10 - NetBeans

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

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

Examination i. PROGRAMMERINGSTEKNIK F1/TM1 TIN212 (Dugga) Dag: Onsdag Datum: Tid: (OBS 3 tim) Rum: V

Språkkonventioner och redigering av tal.

725G61 - Laboration 7 Implementation av ett API. Johan Falkenjack

DK-serien. Gör en fotobok med myphotobook.se

OOP Omtenta

Användarmanual Jobb i Stan. CV-Handboken. Registrering, jobbsökning mm. Copyright Aditro. All rights reserved.

8-4 Ekvationer. Namn:..

LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p

Survey&Report steg för steg: Skapa rapport

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

Skapa ett register över din grupp/klass

Vad tycker du om sfi?

Digitalitet. Kontinuerlig. Direkt proportionerlig mot källan. Ex. sprittermometer. Elektrisk signal som representerar ljud.

Transkript:

Chapter 3: Using Classes and Objects I dessa uppgifter kommer du att lära dig om hur man använder klasser och metoder från java biblioteket. Du kommer inte att förstå allt som händer bakom metod anrop med du skall lära dig tekniken för att anropa metoder. När du ringer ett nummer på din telefon vet du inte vad som händer i telefonen. Du anropar då en metod och förlitar dig på det. På samma sätt gäller att använda klasser och metoder från biblioteket. Du läser i java specifikationen hur en metod används samt vad en metod gör. Du litar på det och anropar metoden i ditt program där du vill ha respektive arbete gjort. Del 1: Övningar Om du aldrig har programmerat är det obligatoriskt att du läser kapitlen 3 i boken samt skriver 1-2 programexempel från boken innan du börjar med labbarna. Del 2: Labbar Gör övningarna innan du börjar med labbarna. För varje uppgift nedan gäller att du gör följande: 1) Läser hela uppgiften. Försöker få den stora bilden om vad uppgiften går ut på. 2) Planera uppgiften genom att identifiera - indata till programmet - utdata från programmet - vilka beräkningar som krävs för att utifrån indata realisera utdata Om du inte lyckats skriva java koden för uppgiften måste du visa handledaren en skriftligt planeringen av uppgiften.

FunnyString Skriv ett program som heter "FunnyString" som uppmanar användaren att ange en favoritfärg, mat, djur och en väns namn. Använd ett Scanner-objekt och läsa en sak per rad. Därefter skall en utskrift som nedanstående skrivas ut. Till exempel om användaren skrev in blå färg, hamburgare för mat, hund för djur och Jake för namn skall utskriften vara: I had a dream that Jake ate a blue dog and said it tasted like hamburger! Email Skriv ett program som läser in en sträng som innehåller ett namn. Programmet skall bygga ett förslag till e-postadress med de första tre bokstäverna i förnamnet de första 4 bokstäverna i efternamnet och naturligtvis en domän. Om jag kör programmet med mitt namn Nicolina Mansson som input kommer jag att få följande e-postadress. NicMans@student.hh.se Ledning: Använd Scanner för att läsa in input data. Använd metoder från klassen String : indexof( ) för att hitta mellanslaget mellan förnamn och efternamn, substring(), för att skapa del av string Se boken eller http://www.javabeginner.com/learn-java/javastring-class Extra (ej obligatoriskt). a) Skriv en metod som gör i princip samma sak och har följande signatur public static String create_email( String name){} Metoden skall returnera tar som indata ett komplett namn och skall returnera email adressen enligt tidigare beskrivning. Anropa metoden i main och testa om det fungerar. b) Du kan skapa email för hela klasen. Filen ITF, programmet CreateMailList (finns länkade på kursens hemsida) visar hur man kan läsa in data från en fil och använda metoden create_email för att printa till output maillista för hela klassen. Testa programmet.

FileExtension Givet en sträng s som representerar namnet på en fil, skriv ett program som identifierar vilken typ av fil det är. Filtypen är delsträngen efter den sista punkten i filnamnet. Till exempel filtypen för monalisa.jpg är jpg, och filtypen av mona.lisa.png är png. Skriv ut svaret med ledande text, t.ex. Filens typ är :? Extra (ej obligatoriskt). Skriv en metod som gör i princip samma sak och har följande signatur public String getfiletype( String filename) { }. Metoden skall returnera delsträngen som representera filtypen. Anropa metoden getfiletype() i main() och testa om det fungerar. PlayWithCharacters För den här uppgiften skall du öppna en fil och en klass som du kallar PlayWithCharacters. I klassen lägger du en main metod och sedan följer du beskrivningen nedan. Detta är grunden till en del krypteringsalgoritmer som du kommer att jobba med senare. Ett tecken, datatypen char, a, b, c, mm, representeras i datorns minne som numeriska värde. Till exempel a har det numeriska värdet 97 och F har 70. Vilka numeriska värde det gäller är standardiserad och kalls för ASCII (American Standard Code Information Interchange). ASCII-tabellen innehåller 128 både utskrivbara och inte skrivbara tecken. För att tillgodose karaktär symboler för icke-engelska språk, finns numera en ny standard etablerad kallad, Unicode Worldwide Character Standard. Om du kar en sträng text innehållande ordet hej. Kan du ta reda på vilka ascii kod varje bokstav har på följande sätt: char c = text.charat(0); System.out.println( c) // kommer att skriva ut h och System.out.println( (int)c) // kommer att skriva ut ett numeriskt värde. Vilket är det? Om du vill spara det numeriska värdet i en variabel kan du skiva int bokstav_0= (int) text.charat(0); int bokstav_1= (int) text.charat(1);

int bokstav_2= (int) text.charat(2); Skriv ut variablerna bokstav_0, bokstav_1, bokstav_2. Låt os kryptera texten hej. Ett sätt att göra det är att ändra teckens interna värde. Låt oss bara addera 1 på varje bokstav. bokstav_0= bokstav_0+1; bokstav_1= bokstav_0+1; bokstav_2= bokstav_0+1; Vi gör bokstäverna till tecken igen och lägger ihop dem till en ny sträng. String nytext= + (char)bokstav_0+ (char)bokstav_1+(char)bokstav_2 ; Skriv ut den nya texten. Vad blev det? Vad blir det den nya texten om du till exempel adderar 3 på varje bokstav? Se i boken eller leta på nätet efter Ascii tabbelen. Vilka interna värden har siffrorna 0-9? ConvertingStrings För den här uppgiften skall du öppna en fil och en klass som du kallar ConvertingStrings. Ofta program behöver omvandla data från String, till heltal. I den här uppgiften skall du förstå när och varför. Skriv ett program som frågar användaren efter sitt födelsedatum. Födelsedatum skall matas in till programmet i formatet ÅÅÅÅ-MM-DD. Därefter skall programmet beräkna hur gammal personen är. Du måste inte ta hänsyn till månader och dagar. Räkna bara med helår. Så om jag matar in till programmet 1977-03-19 skall programmet skriva ut Du är 35 år. Ledning! 1. Du måste beräkna delsträngen som innehåller året, använd metoden substring() 2. För att kunna göra beräkning med årtalet skall årtalet konverteras till från String -> int. int år= Integer.parseInt( här data som skall konverteras ) // se boken 3. Gör beräkning, 2012 år. 4. Skriv ut svar

RollingDice Skriv ett Java-program som simulerar kast av ett par tärningar. För varje tärning skall programmet generera ett slumptal mellan 1 och 6. Programmet skall skriva ut resultatet efter tärningskastet för varje tärning samt summan av båda tärningarna. Ledning! Du skall använda Random klassen. Random klassen är en del av java.util paketet som måste importeras. Random numbergen= new Ranndom(); // Random-objekt skall skapas BARA en gång tarning_1 = numbergen.nextint(6); // slumpa tal skall göras varje gång i programmet där du behöver ett nytt tal Invest Om du investerar P kronor med R procent ränta under N år kommer din investering växa till P * (1 + (R/100.0)) ^ N dollar. Skriv ett program som accepterar P, R och N (P av datatypen double och R, N som heltal) och beräkna hur mycket pengar som intjänats efter N år. Använd Math.pow ( ) metoden för att beräkna potensuttrycket. Skriv ut resultatet.