• Ei tuloksia

Olio-ohjelmointi 1. valikoe 31.10.2008 HYV7SN

N/A
N/A
Info
Lataa
Protected

Academic year: 2022

Jaa "Olio-ohjelmointi 1. valikoe 31.10.2008 HYV7SN"

Copied!
3
0
0

Kokoteksti

(1)

Olio-ohjelmointi 1. valikoe 31.10.2008

HYV7SN

1. Tee ohjelma, joka kysyy opiskelijan nimen ja Olio-ohjelmointikurssin arvosanan.

Ohjelma tulostaa arvosanan tekstimuodosssa siten, että 5 = Kiitettävä, 3 ja 4 = Hyvä, 1 ja 2 = Tyydyttävä ja 0 = Hylätty.

#include <iostream>

using namespace std;

int main() {

char nimi[30];

int numero;

cout << "Nimi :";

cin.getline(nimi,30);//Tässä ei tullut virhettä jos oli cin >>

cout << "Arvosana numerona: ";

cin >> numero;

cout << "Opiskelijan " << nimi << " arvosana on ";

if (numero==5)

cout << "kiitettävä." << endl;

else if (numero==4 || numero == 3) cout << "hyvä." << endl;

else if (numero==2 || numero == 1) cout << "tyydyttävä." << endl;

else if (numero==0)

cout << "hylätty." << endl;

else

cout << "tuntematon." << endl;

return 0;

}

(2)

2. Tee viittausparametria käyttävä funktio void swap(int &,int &);

joka vaihtaa syötteenä annettujen kahden muuttujan sisällöt keskenään. Tee myös pääohjelma, jolla voit testata funktiosi toimintaa.

#include <iostream>

using namespace std;

void swap(int &,int &); //Viittausparametrit

int main() {

int eka=1,toka=2;

cout << eka << " " << toka << endl;

swap(eka,toka);

cout << eka << " " << toka << endl;

return 0;

}

void swap(int &a,int &b) {

int temp=a;

a=b;

b=temp;

}

3. Kirjoita STL:n vector-luokkaa käyttävä ohjelma, joka kysyy käyttäjältä lukuja

silmukassa. Lukujen syotto loppuu, kun syotetaan 0. Ohjelma tulostaa syötetyt luvut suuruusjärjestyksessä sekä lukujen lukumäärän.

#include <iostream>

#include <vector>

using namespace std;

int main() {

vector <int> luvut;

vector <int>::iterator it;

int luku;

do {

cout << "Luku ?" << endl;

cin >> luku;

if (luku != 0)

luvut.push_back(luku);

} while (luku != 0);

(3)

sort(luvut.begin(),luvut.end());

for (it=luvut.begin();it!=luvut.end();it++) cout << *it << endl;

cout << "Lukuja " << luvut.size() << " kpl." << endl;

system("PAUSE");

return 0;

}

4. Tee lottorivin arvontaohjelma, joka arpoo lottorivin, eli 7 lottonumeroa ja 3 lisänumeroa. Lotossa on 39 numeroa.

#include <iostream>

#include <algorithm>

using namespace std;

const int N=39;

void tulosta(int);

int main() {

int luvut[N];

srand(unsigned(time(NULL)));

for (int i=1;i<=N;i++) luvut[i-1]=i;

random_shuffle(luvut,luvut+N);

cout << "Hyvää iltaa." << endl;

cout << "Arvotaan 7 lottonumeroa." << endl;

for_each(luvut,luvut+7,tulosta);

cout << endl << "Arvotaan 3 lisänumeroa."<< endl;

for_each(luvut+7,luvut+10,tulosta);

system("PAUSE");

return 0;

}

void tulosta(int i) {

cout << i << " ";

}

Viittaukset

LIITTYVÄT TIEDOSTOT

b. Lisää luokkaan parametrillinen muodostin, jonka avulla tietojäsenet voidaan alustaa olion luonnin yhteydessä haluttuihin arvoihin. Lisää luokkaan metodi, joka laskee

Lisää luokkaan parametrillinen muodostin, jonka avulla olio voidaan alustaa luonnin yhteydessä haluttuun päivämäärään, esimerkiksif. Date tomorrow(20,4,2005);

jolle syötetään kaksi kokonaislukua, ja joka palauttaa toden, jos luvut ovat samat, ja epätoden, jos ne eivät ole samoja.. Tee myös pääohjelma, jonka avulla voit testata

Tee ohjelma, joka sisältää laatikko-luokan. Luokan tietojäseninä ovat laatikon syvyys, leveys ja korkeus. Toteuta luokkaan muodostin, jonka avulla olio voidaan alustaa. Toteuta

Arvoa kasvatetaan funktiossa f lauseella ::i++; Ensimmäisen kutsun jälkeen arvo on siis 1 ja toisen kutsun jälkeen 2.. Muuttuja 2 on pääohjelmassa määritelty

Arvoa kasvatetaan funktiossa f lauseella ::i++; Ensimmäisen kutsun jälkeen arvo on siis 1 ja toisen kutsun jälkeen 2.. Muuttuja 2 on pääohjelmassa määritelty

tietotyyppi nimi(tietotyyppi *muuttuja, tietotyyppi *tietue, tietotyyppi *taulukko, tietotyyppi *tietuetaulukko …);. • Määrittely

• Jokaisen arvonnan jälkeen tietokone kysyy pelaajalta, haluaako pelaaja uuden kortin vai jääkö pelaaja kyseiseen summaan. • Pelaajan jälkeen tietokone arpoo