Ylös Edellinen Seuraava Otsikkosivu Hakemisto Sisällys

5.8 Muistele tätä

Mikäli edellä esitetyt asiat tuntuvat ymmärrettäviltä, niin ohjelmoinnissa ei tule olemaan mitään vaikeuksia. Jos vastaavat asiat tuntuvat vaikeilta ohjelmoinnin kohdalla, kannattaa palata takaisin tähän lukuun ja yrittää samaistaa asioita ohjelmointikieleen.

Taulukoiden samaistaminen ruutupaperiin, korttipakkaan tai muuhun tuttuun asiaan auttaa asian käsittelyä. Osoitinmuuttuja on yksinkertaisesti jokin (vaikkapa sormi) joka osoittaa johonkin (vaikkapa yhteen kirjaimeen).

Silmukat ja ehtolauseet ovat hyvin luonnollisia asioita.

Aliohjelmat ovat vain tietyn asian tarkempi kuvaus. Tarvittaessa tiettyä asiaa ei ongelmaa tarvitse heti ratkaista, vaan voidaan määritellä aliohjelma, joka hoitaa homman ja kirjoitetaan itse aliohjelman määrittely joskus myöhemmin.

Tehtävä 5.25 Merkkijonot

C- kielessä merkkijonot tullaan esittämään taulukoina kirjaimista. Merkkijonon loppu ilmaistaan kirjaimella NUL. Siis esimerkiksi Kissa olisi seuraavan näköinen
0
1
2
3
4
5

K
i
s
s
a
NUL

Kirjoita seuraavat algoritmit. Erityisesti kirjoita ensin algoritmin sanallinen versio

1. Välilyöntien poistaminen jonon alusta.

2. Välilyöntien poistaminen jonon lopusta.

3. Ylimääräisten (2 tai useampia) välilyöntien poistaminen jonosta.

4. Kaikkien ylimääräisten (alku-, loppu- ja monikertaiset) välilyöntien poistaminen.

5. Jonon muuttaminen siten, että kunkin sanan 1. kirjain on iso kirjain.

6. Tietyn merkin esiintymien laskeminen jonosta.

7. Esiintyykö merkkijono toisessa merkkijonossa ( kissatarha, sata - > esiintyy; kissatarha, satu - > ei esiinny).

Tehtävä 5.26 Päivämäärät

Kirjoita seuraavat algoritmit:
1.
Onko vuosi karkausvuosi vai ei. (Huom! 1900 ei, 2000 on)
2.
Montako karkausvuotta on kahden vuosiluvun välillä.
3.
Jos 1.1 vuonna 1 oli maanantai, niin mikä viikonpäivä on 1.1 vuonna x? (Oletetaan että kalenteri olisi ollut aina samanlainen kuin nytkin. Vihje! Tutki almanakkaa peräkkäisiltä vuosilta.)
4.
Onko päivämäärä pp.kk.vvvv oikeata muotoa?


Ylös Edellinen Seuraava Otsikkosivu Hakemisto Sisällys