Etusivu

C/C++ teoria
Ohjelmointitesti
C-kielen alkeet
C++-alkeet
C++-taulukkoja
Koodausohjeita
C++ tehtävät
C++ perusteet
C++ vaikeat
C++ syventävät
Kertaustehtäviä
Win32-teoria
Ohjelmointitesti
Ohjelmointimalli
Ikkunaluokat
Lyhyt pohja
Laajennettu pohja
Win32-tehtävät
Win32 perusteet
Win32 vaikeat
Win32 syventävät
MFC-teoria
Kontrolliluokat
MFC-luokat
Lyhyt pohja
Laajennettu pohja
MFC-tehtävät
MFC perusteet
MFC vaikeat
MFC syventävät
Java-teoria
Javan alkeet
Java pohja
Java-tehtävät
Java konsoli
Java perusteet
Java vaikeat
Java syventävät
 
Java syventävät
Tehtävä 1
Kirjoita kello. Piirrä kellotaulu ja viisarit drawLine()-metodilla. Varaa kerran sekunnissa toimiva Timer-säie ja kutsu sieltä repaint()-metodia, jolloin Java itse pyyhkii vanhat viisarit pois. Ohjelman täytyy osata skaalata viisarit oikean kokoisiksi riippumatta ikkunan koosta. Kellotaulun ympyrämuodon kaava voidaan laskea sin()- ja cos()-funktioilla. Kun origo on vasemmassa yläkulmassa, kaavan koordinaatit ovat muotoa,
- Keskipiste: ikkunan_leveys/2-ikkunan_korkeus/2

- X-koordinaatti: ikkunan_leveys/2+sin(x)*haluttu_etäisyys_keskipisteestä
- Y-koordinaatti:
ikkunan_korkeus/2-cos(x)*haluttu_etäisyys_keskipisteestä
jossa x on haluttu kulma radiaaneissa (00:00 on nolla ja 12:00 on 2*PII radiaania).

mfckello.gif (2880 bytes)

Ratkaisu: ClockApp.java ClockFrame.java ClockPanel.java

Tehtävä 2
Kirjoita ohjelma, joka osaa muuntaa valuuttoja kuvan esittämällä tavalla. '-->'-nappi siirtää Valuutta 1:n edit-kontrolliin kirjoitetun valuuttamäärän Valuutta 2:n edit-kontrolliin valittuun valuuttamuotoon ja päinvastoin. Jos muunnos ei ole mahdollinen palautetaan pelkästään 0.

Ratkaisu: ValuuttaApp.java ValuuttaFrame.java 

Tehtävä 3
Kirjoita ristinolla peli. Ikkunaan piirretään käyttäjän merkkinä ympyröitä ja tietokonepelajan merkkinä ristejä. Käyttäjä aloittaa ja tietokone siirtää pelaajan jälkeen automaattisesti. Peli loppuu kun jompi kumpi saa kolmen suoran. Työkalurivissä on Aloitus, Pisteiden nollaus ja Tietoja ohjelmasta napit. Aloitusnappi aloittaa pelin uudestaan, nollaus nollaa voittolaskurit sekä aloittaa pelin alusta ja tietoja nappi avaa pienen dialogin jossa kerrotaan ohjelmasta jotain hauskaa. Ylänurkassa on ohjelmakuvake (sama kuin tietoja napissa). Alareunassa on JLabel-kontrollista tehty tilarivi joka näyttää voitttojen lukumäärää tai voittajaa kun sellainen tulee.

Ratkaisu: TicTacToeApp.java TicTacToeFrame.java TicTacToePanel.java TicTacToeHelp.java help.gif start.gif reset.gif tictactoe.gif

Tehtävä 4
Kirjoita kello apletti. Ota tämän sivun alussa olevasta Kello tehtävästä paneli ja käytä sitä tässä tehtävässä.

Ratkaisu: ClockApplet.java ClockAppletPanel.java 

 
Sivutilan tarjoaa Tietokonepalvelu Mikrolahti.