Sivujen muokkaaminen vaatii nykyään kirjautumisen. Jos sinulla ei vielä ole tunnuksia, luo sellaiset.

Ohjelmointi

Primayk
Loikkaa: valikkoon, hakuun

Ohjelmointi, eli puheessa usein koodaus, on menetelmä, jolla haluttu tehtävä tai laskutoimitus muunnetaan tietokoneelle ymmärrettävään muotoon, yleensä jollekin ohjelmointikielelle.

Ohjelmointi on matematiikantajua vaativaa puuhaa, ja siksi se soveltuu matikisteille hyvin. Matematiikkalukiolaisille on järjestetty ohjelmointikursseja vuoden 2014 syksystä lähtien. Ensimmäistä kurssia veti silloinen abi Henrik Lievonen.

Ohjelmoinnissa (ja erityisesti algoritmiohjelmoinnissa) voi kilpailla. Peruskoulun ja lukion opiskelijoille tarkoitettuja algoritmiohjelmoinnin kilpailuja ovat mm. Datatähti ja kansainvälinen IOI. Myös muissa ohjelmoinnin lajeissa, kuten code golfissa voi kilpailla. Ohjelmoinnissa on myös täysin huvin vuoksi harjoitettavia haaroja, kuten Just another Perl hacker.

Esimerkkejä ohjelmoinnista

Ohjelmointikielien perusesimerkkeinä käytetään yleensä ns. Hello World -ohjelmaa, joka tulostaa ruudulle sanat Hello World.

Tässä on joitakin esimerkkejä Hello World -ohjelmista eri ohjelmointikielillä. (Täydellinen luettelo)

Brainfuck

++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.

Befunge

0"!dlroW ,olleH">:#,_@

Malbolge

(=<`$9]7<5YXz7wT.3,+O/o'K%$H"'~D|#z@b=`{^Lx8%$Xmrkpohm-kNi;gsedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543s+O<oLm

HQ9+

H

Goldfish

0 iisiiiisiiiiiiiioniiisisioiiiiiiiooiiioniisiisddddoniisiiiiisiiiiiioniiisiisddddddddddoiiioddddddoddddddddoniiisio

Röda

Ohjelmoinnissa on tärkeää osata kirjoittaa kuvaavia kommentteja, jotta jokainen ummikkokin ymmärtää ohjelman toiminnan.

Seuraavassa pätkässä on kuvattu ohjelman toiminta mahdollisimman selkeästi. Ohjelma tulostaa halutusti tekstin "Hello world!".

main {
	/* Viesti */
	viesti := "Hei maailma!"

	/* Osoite, jonka avulla otetaan yhteys näyttöön */
	osoite := "ddgLf#zjjcgd"

	/* Lähetetään viesti näytölle */
	lähetä osoite viesti

	/* Suljetaan BTOS-palvelu käskyllä 10 */
	push ![ ((10)) | btos]
}

/* Aliohjelma viestin lähettämistä varten */
function lähetä osoite viesti {
	/* Valmistelee osoitteen ja viestin lähetystä varten */
	valmistele osoite viesti
	(
		/* Lähetetään siniaaltoa kohdelaitteeseen yhteyden avaamiseksi */
		!(seq 0 $(#osoite - 1) |
			/* Käydään läpi löydetyt laitteet */
			push $(
				/* Lähtetetään viesti laitteeseen */
				osoite[laite] + viesti[laite] - [
					/* Varmistetaan, että käytössä on oikea protokolla (laitetunnus 3 => eri protokolla) */
					if ($(laite != 3)) do(100); else(0); done
				]
			) for laite
		)
	) | btos /* Varmistetaan, että Binary Teletransfer Object Service on päällä */
}

/* Käyttää Standard Telemetric Object Balance -järjestelmää muuntaakseen oliot kelvollisiksi lähetystä varten */
function valmistele &oliot... {
	{ stob olio | pull olio } for olio in oliot
}