Övningsuppgifter C++

Uppgift 1
Skriv ett program som läser in tecken från tangentbordet tills lämpligt sluttecken anges. Alla tecken utom vita tecken (blanktecken, tabtecken och newline) skall räknas och summan skall skrivas ut på skärmen.

Uppgift 2
Programmet skall läsa in ett godtyckligt antal tecken från tangentbordet. Förekomsten av små bokstäver a - z skall räknas var bokstav för sig och resultatet lagras i en vektor. Vektorn skall skrivas ut på skärmen. Inläsningen skall avslutas med godtyckligt ej numeriskt tecken.

Uppgift 3
Programmet skall i funktionen main läsa in två tal, det första reellt det andra ett heltal. Dessa skall sedan sändas som parametrar till en funktion som skall returnera värdet av det första talet upphöjt till det andra. Använd en for-loop för beräkningen. Resultatet skall skrivas ut på skärmen från main.

Uppgift 4
Som uppg 3 men värdet av beräkningen skall sändas tillbaka till main genom den första parametern till beräkningsfunktionen som skall vara en referensparameter.

Uppgift 5
Efter att användaren har matat in en serie av ett till tio tal skall programmet skriva ut max- och minvärde samt medelvärdet av talen.

Uppgift 6
Som uppgift 5 men de statistiska funktionerna skall implementeras som C++ funktioner

Uppgift 7
Som uppgift 6 men de statistiska funktionerna skall vara samlade i en ny Statistik-klass.

Uppgift 8
Programmet skall i följd på samma rad, åtskilda av blanktecken läsa in en operator (+, -, *, /) och två flyttal. Beroende på operator skall addition, subtraktion, multiplikation eller division utföras på de två talen. Resultatet skall skrivas ut, snyggt formatterat. Avslut med operator 's'.

Uppgift 9
Som uppg 8 men matematiken skall utföras i en separat funktion för varje räknesätt. Resultatet skall skrivas ut i separat utskriftsfunktion. Funktionerna och deras data skall definieras i en lämplig klass.

Uppgift 10
Programmet skall läsa in en godtycklig sträng med maxlängd 79 tecken i en strängvariabel och därefter skriva ut strängen baklänges på skärmen.

Uppgift 11
Konstruera en klass för publikationer och multimedia. En publikation kan vara tex bok, artikel i dagstidning, artikel i tidskrift, rapport. Klassen bör innehålla data om titel, författare, publiceringsdatum, förlag och publiceringsort samt tidskriftsnummer och upplaga. Klassen skall innehålla metoder för att mata in data och skriva ut data. Inkorporera klassen i ett litet exempelprogram där man kan mata in data om en publikation och sedan skriva ut den på skärmen.

Uppgift 12
En lite mer avancerad utökning av föregående exempel: Skapa istället för en enskild instans av klassen en vektor av instanser och utöka klassen med ett par metoder för att söka med namn och titel. Tips: Sökningen kan gå till så att man matar in ett namn, därefter anropas i en loop sökmetoden i varje instans i vektorn med namnet som parameter tills namnet antingen hittas eller alla instanser är kontrollerade.

Uppgift 13
Konstruera om exempel 12 så att publikationer nu skapas i en klasshieraki med en basklass och ett antal subklasser som var och en beskriver en viss typ av publikation. Samma krav på metoder.

Uppgift 14
Utöka föregående exempel så att det även kan hantera multimedia, t ex CD-ROM, video, etc.

 

Senaste ändrad: 2000-01-16