Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Uusi Tehtävärakenne | Muuttujat ja Tietotyypit
C++ Johdanto

bookUusi Tehtävärakenne

Tähän asti olet kirjoittanut kaiken koodisi main-funktion sisälle. Mutta C++-kielessä voit luoda omia funktioita. Tutustut niihin tarkemmin myöhemmin — keskitytään nyt perusteisiin, jotta voit alkaa käyttää niitä tulevissa harjoituksissa.

Ajattele funktiota laatikkona, joka sisältää koodinpätkän. Aina kun tarvitset kyseistä koodia, "avaat laatikon" eli kutsut funktiota. Jos et kutsu sitä, laatikon sisällä oleva koodi ei suoriteta.

Tässä yksinkertainen esimerkki:

main.cpp

main.cpp

copy
1234567891011
#include <iostream> // This function takes a string parameter and prints a greeting message void sayHello(std::string name) { std::cout << "Hello, " << name << "!"; } // this function doesn't return any value int main() { sayHello("Alice"); // calling your function with a parameter return 0; // main always returns 0 }

Tässä ohjelmassa on kaksi funktiota. Ensimmäinen on tuttu main, ja toinen on oma funktiosi sayHello.

Huomaa return 0; main-funktion lopussa. Tämä tarkoittaa, että funktio palauttaa arvon 0. Myöhemmin opit, että funktiot voivat palauttaa myös muun tyyppisiä arvoja.

sayHello-funktio ottaa nyt parametrin nimeltä name. Tämä tarkoittaa, että kun kutsut funktiota, välität arvon sulkujen sisällä — esimerkiksi "Alice".

Kutsumalla sayHello("Alice") main-funktion sisällä suoritat funktion ja näet tulosteen "Hello, Alice!".

Note
Huomio

Kokeile poistaa sayHello-funktion kutsu main-funktiosta, niin huomaat, että sayHello-funktion sisällä oleva koodi ei suoriteta.

Funktion parametrit

C++:ssa funktiolla voi olla useampi kuin yksi parametri. Parametrit erotetaan pilkuilla funktiomäärittelyssä. Jokainen parametri toimii muuttujana, joka sisältää funktion kutsussa välitetyn arvon.

Esimerkiksi:

main.cpp

main.cpp

copy
1234567891011121314
#include <iostream> // This function prints a greeting with a name and an age void greet(std::string name, int age) { std::cout << "Hello, " << name << "! You are " << age << " years old."; } int main() { greet("Alice", 25); std::cout << std::endl; greet("Bob", 30); return 0; }

Funktiolla greet on kaksi parametria, name ja age. Kun kutsut greet("Alice", 25), arvo "Alice" asetetaan muuttujaan name ja 25 muuttujaan age. Funktion sisällä voit käyttää näitä muuttujia kuten muitakin, viestin räätälöimiseksi. Tuloste muuttuu syötettyjen arvojen mukaan, mikä tekee funktiosta joustavan ja uudelleenkäytettävän eri syötteille.

Tärkeä huomioitava asia: useimmiten kirjoitat koodisi valmiiksi määriteltyyn funktioon, kuten sayHello, kun taas pääfunktio on jo valmiiksi täytetty.

1. Mitä tapahtuu, jos et kutsu funktiota ohjelmassasi?

2. Mitä return 0; tarkoittaa main-funktiossa?

3. Kuinka kutsutaan funktiota nimeltä sayHello?

question mark

Mitä tapahtuu, jos et kutsu funktiota ohjelmassasi?

Select the correct answer

question mark

Mitä return 0; tarkoittaa main-funktiossa?

Select the correct answer

question mark

Kuinka kutsutaan funktiota nimeltä sayHello?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 6

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Awesome!

Completion rate improved to 3.85

bookUusi Tehtävärakenne

Pyyhkäise näyttääksesi valikon

Tähän asti olet kirjoittanut kaiken koodisi main-funktion sisälle. Mutta C++-kielessä voit luoda omia funktioita. Tutustut niihin tarkemmin myöhemmin — keskitytään nyt perusteisiin, jotta voit alkaa käyttää niitä tulevissa harjoituksissa.

Ajattele funktiota laatikkona, joka sisältää koodinpätkän. Aina kun tarvitset kyseistä koodia, "avaat laatikon" eli kutsut funktiota. Jos et kutsu sitä, laatikon sisällä oleva koodi ei suoriteta.

Tässä yksinkertainen esimerkki:

main.cpp

main.cpp

copy
1234567891011
#include <iostream> // This function takes a string parameter and prints a greeting message void sayHello(std::string name) { std::cout << "Hello, " << name << "!"; } // this function doesn't return any value int main() { sayHello("Alice"); // calling your function with a parameter return 0; // main always returns 0 }

Tässä ohjelmassa on kaksi funktiota. Ensimmäinen on tuttu main, ja toinen on oma funktiosi sayHello.

Huomaa return 0; main-funktion lopussa. Tämä tarkoittaa, että funktio palauttaa arvon 0. Myöhemmin opit, että funktiot voivat palauttaa myös muun tyyppisiä arvoja.

sayHello-funktio ottaa nyt parametrin nimeltä name. Tämä tarkoittaa, että kun kutsut funktiota, välität arvon sulkujen sisällä — esimerkiksi "Alice".

Kutsumalla sayHello("Alice") main-funktion sisällä suoritat funktion ja näet tulosteen "Hello, Alice!".

Note
Huomio

Kokeile poistaa sayHello-funktion kutsu main-funktiosta, niin huomaat, että sayHello-funktion sisällä oleva koodi ei suoriteta.

Funktion parametrit

C++:ssa funktiolla voi olla useampi kuin yksi parametri. Parametrit erotetaan pilkuilla funktiomäärittelyssä. Jokainen parametri toimii muuttujana, joka sisältää funktion kutsussa välitetyn arvon.

Esimerkiksi:

main.cpp

main.cpp

copy
1234567891011121314
#include <iostream> // This function prints a greeting with a name and an age void greet(std::string name, int age) { std::cout << "Hello, " << name << "! You are " << age << " years old."; } int main() { greet("Alice", 25); std::cout << std::endl; greet("Bob", 30); return 0; }

Funktiolla greet on kaksi parametria, name ja age. Kun kutsut greet("Alice", 25), arvo "Alice" asetetaan muuttujaan name ja 25 muuttujaan age. Funktion sisällä voit käyttää näitä muuttujia kuten muitakin, viestin räätälöimiseksi. Tuloste muuttuu syötettyjen arvojen mukaan, mikä tekee funktiosta joustavan ja uudelleenkäytettävän eri syötteille.

Tärkeä huomioitava asia: useimmiten kirjoitat koodisi valmiiksi määriteltyyn funktioon, kuten sayHello, kun taas pääfunktio on jo valmiiksi täytetty.

1. Mitä tapahtuu, jos et kutsu funktiota ohjelmassasi?

2. Mitä return 0; tarkoittaa main-funktiossa?

3. Kuinka kutsutaan funktiota nimeltä sayHello?

question mark

Mitä tapahtuu, jos et kutsu funktiota ohjelmassasi?

Select the correct answer

question mark

Mitä return 0; tarkoittaa main-funktiossa?

Select the correct answer

question mark

Kuinka kutsutaan funktiota nimeltä sayHello?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 6
some-alt