Demo 4

Demoryhmä Päivä Aika Sali
Ryhmä 1 ma 3.6. 14.15 - 16.00 Ag B111.1
Ryhmä 2 ma 3.6. 18.15 - 20.00 Ag B112.1

HUOM 1:Ota mukaan yksi levyke eli korppu.
HUOM 2:Tehtävissä esiintyy vielä tuntemattomia C++-kielen rakenteita, mutta älä anna sen häiritä!

  1. Suorita aloitustoimenpiteet
    1. Kirjoittaudu sisään mikroon käyttäen Agoranetin käyttäjätunnusta ja salasanaa.
    2. Tee kiintolevylle C omalla nimellä hakemisto hakemiston C:\MyTemp alle. Tämän voit tehdä joko Windows Explorerin tai DOS Promptin alla tai käyttäen WinCD-ohjelmaa (löytyy joko ikoni työpöydältä tai tarvittaessa ohjelma C:\WINNT-hakemiston alta).
    3. Vaihda oletushakemistoksi WinCD-ohjelmalla juuri tekemäsi alihakemistosi.
  2. Käynnistä Borland C++ 3.1 valikosta Start/Programs/Borland C++ 3.1.
    Suurenna ohjelman ikkuna koko näyttöruudun kokoiseksi näppäimillä Alt+Enter.

    Näissä demoissa on ideana rakentaa vähän kerrassaan yhteenlaskuohjelma, joka lukee kokonaislukuja, laskee niiden summan ja tulostaa sen.
    Ensimmäisessä vaiheessa tehdään ohjelma, joka pelkästään tulostaa kokonaisluvun näytölle.
    Jatkossa annetaan joko valikkokomennon perässä sulkeissa tai komennossa lihavoituna merkkinä vastaava näppäinkomento.

  3. Siivotaan vanhat jäljet pois. Jos sinulla on ikkunoita auki Borlandin C++ kääntäjässä niin sulje ne kaikki joko yksitellen kunkin ikkunan vasemmassa ylänurkassa olevasta nappulasta tai valikosta Window (näppäinkomento Alt+w) kohdasta Close all tai näppäinkomennolla Alt+F3 aina aktiivinen ikkuna (aktiivinen ikkuna erottuu siitä, että sen reunaviiva on kaksinkertainen ja kirkkaampi) kerrallaan.

  4. Aloitetaan ohjelmakoodin kirjoitus. Valitse yläreunan valikkoriviltä ensin File (Alt+f) ja sitten New.
    Tallenna seuraavaksi tämän tyhjän editointi-ikkunan sisältö kiintolevylle omaan hakemistoosi valitsemalla ylärivistä ensin File (Alt+f) ja sitten Save tai Save as tai suoraan näppäinkomennolla F2 ja laita tiedoston nimeksi TULOSKOK.CPP.
    Kirjoita sitten seuraavat kymmenen riviä tekstiä täsmälleen samanlaisena:
    /*
      TULOSKOK.CPP  Ohjelma tulostaa kokonaisluvun.
    */
    #include <iostream.h>
    int main(void)
    {
      int luku = 314;
      cout << "Tulostan kokonaisluvun " << luku << endl;
      return 0;
    }
    
    Tallenna ohjelma, File (Alt+f) ja sitten Save tai suoraan näppäinkomennolla F2.

  5. Yritetään suorittaa eli ajaa ohjelma. Valitse yläreunan valikosta ensin Run (Alt+r) ja sitten alivalikosta uudelleen Run tai suoraan näppäinkomennolla Ctrl+F9.
    Tulokset tulevat käyttäjän ikkunaan, jonka saa näkyviin valitsemalla ensin Window (Alt+w) ja sitten User screen tai suoraan näppäinkomennolla Alt+F5. Painamalla jonkin merkin näppäintä pääset takaisin editointi-ikkunaan.


  6. Laitetaan tulostus- ja editointi-ikkuna näkyviin samanaikaisesti: Sulje ensin tarvittaessa muut paitsi editointi-ikkuna. Avaa sitten tulostusikkuna valitsemalla Window (Alt+w) ja sitten Output. Voit halutessasi sijoitella nämä kaksi ikkunaa täyttämään koko ruudun; valitse. Window (Alt+w) ja sitten Tile.
    Aseta tarvittaessa editointi-ikkuna aktiiviseksi klikkaamalla ikkunaa hiirellä tai näppäonkomennolla Alt+ikkunan numero (joka näkyy ikkunan yläreunassa oikealla) ja suorita ohjelma uudelleen. Muuta sitten luku 314 joksikin muuksi kokonaisluvuksi ja suorita ohjelma vielä kerran.

    Tehdään seuraava versio ohjelmasta, joka lukee tulostettavan kokonaisluvun. Tämä tehdään alla muokkaamalla äskeisestä ohjelmasta.

  7. Jotta vanha ohjelma jäisi sellaisenaan myöhemmin käytettäväksi tallennetaan ensin ohjelma uudelle nimelle: valitse File (Alt+f) ja sitten Save as. Anna tiedostolle nimeksi LUEJATUL.CPP.

    Korjaa alussa oleva kommentti.
    Korvaa sitten rivi

    int luku = 314;
    
    seuraavilla kolmella rivillä
    int luku;
    cout << "Anna kokonaisluku > ";
    cin >> luku;
    
    Älä vielä suorita ohjelmaa, tallenna vain tiedosto näppäinkomennolla F2.


  8. Käydään seuraavaksi kolmessa vaiheessa läpi suorituskelpoisen ohjelman muodostamisvaiheet.
    1. Tarkista ensin, että omassa hakemistossa on ohjelmatiedosto LUEJATUL.CPP seuraavasti; valitse valikko File (Alt+f) ja sitten DOS shell. Katso hakemiston sisältö DOS-komennolla DIR. Palaa sitten takaisin ohjelmointiympäristöön DOS-komennolla EXIT.
    2. Seuraavaksi käännetään ohjelma valitsemalla valikko Compile (Alt+c) ja alivalikosta Compile tai näppäinkomennolla Alt+F9 suoraan. Jos kääntäminen onnistui, käy tarkistamassa, että omassa hakemistossasi on käännetyn ohjelman sisältävä objektitiedosto LUEJATUL.OBJ (siis File (Alt+f) ja sitten Dos shell ja DOSissa DIR. Palaa takaisin ohjelmointiympäristöön komennolla EXIT.)
    3. Tehdään ohjelmasta suorituskelpoinen versio: Valitse Compile (Alt+c) ja Make (tai Link) tai näppäinkomento F9. Jos tämä onnistui, niin käy taas tarkistamassa, että hakemistossasi on suorituskelpoinen ohjelmatiedosto LUEJATUL.EXE. Suorita tämä ohjelma kirjoittamalla DOS-kehotteeseen tiedoston nimi (ilman tarkenninta EXE). Kirjoita ohjelman syöttöpyyntöön jokin kokonaisluku ja paina Enter. Palaa sitten takaisin ohjelmointiympäristöön EXIT:llä. Suorita ohjelma (Ctrl+F9) useampaan kertaan antamalla syötteenä erilaisia kokonaislukuja.

    Muokataan ohjelmaa lukemaan kaksi kokonaislukua ja tulostamaan ne sekä niiden summan.

  9. Siis muokataan taas juuri tehtyä ohjelmaa ja tallenna aluksi tiedosto nimellä SUMMAA2.CPP
    Muuta kommenttirivi tämän uuden ohjelman mukaiseksi.
    Muuta rivi
      int luku;
    
    muotoon
      int luku1, luku2;
    
    ja korjaa muuttujan nimi luku muotoon luku1 rivillä, jossa on cin.
    Ohjelmakoodi toisen luvun lukemiseksi saadaan aikaan seuraavasti:
    Kopioidaan aluksi ensimmäisen luvun lukemisen suorittavat rivit;
    Siirrä kohdistin rivin cout << "Anna jne. aivan vasempaan reunaan, paina Shift-näppäin alas ja pidä se alhaalla. Samalla paina nuoli-alas-näppäintä kaksi kertaa. Vapauta Shift-näppäin. Nyt pitäisi olla kaksi riviä merkittynä. (Merkitsemisen voi tehdä myös hiirellä raahaamalla.)
    Valitse sitten Edit (Alt+e) ja Copy tai suoraan näppäinkomento Ctrl+Insert. Merkitty alue on nyt kopioitu leiketauluun.
    Poista merkintä ja siirrä tarvittaessa kohdistin rivin cout << "Tulostan jne. vasempaan reunaan ja valitse ensin Edit (Alt+e) ja sitten Paste tai suoraan Shift+Insert. Leiketaulun sisältö on nyt kopioitu tähän paikkaan.
    Tarkenna nämä kaksi uutta riviä muotoon
      cout << "Anna toinen kokonaisluku > ";
      cin >> luku2;
    
    ja muuta seuraavana oleva cout-alkuinen tulostusrivi muotoon
      cout << luku1 << " + " << luku2 << " = " << (luku1 + luku2) << endl;
    
    Talleta ohjelma (F2) ja testaa sitä (Ctrl+F9) antamalla erilaisia syöttöarvoja.

    Seuraavaksi muokataan ohjelma lukemaan kolme lukua ja tulostamaan luvut ja niiden summan.

  10. Jatketaan taas juuri tehtyä ohjelmaa muokkaamalla. Talleta siis aluksi ohjelmatiedosto nimellä SUMMAA3.CPP. Käytä samanlaista kopioi-ja-liitä-tekniikkaa kuin edelläkin. Lopulta ohjelman pitäisi olla seuraavanlainen:
    /*
      SUMMAA3.CPP  Ohjelma lukee kolme kokonaislukua, tulostaa luvut
                   ja niiden summan.
    */
    #include <iostream.h>
    int main(void)
    {
      int luku1, luku2, luku3;
      cout << "Anna 1. kokonaisluku > ";
      cin >> luku1;
      cout << "Anna 2. kokonaisluku > ";
      cin >> luku2;
      cout << "Anna 3. kokonaisluku > ";
      cin >> luku3;
      cout << luku1 << " + " << luku2 << " + " << luku3;
      cout << " = " << (luku1 + luku2 + luku3) << endl;
      return 0;
    }
    
    Talleta ohjelma ja testaa sitä.

    Muutetaan edelleen alla kohdasta 11 alkaen ohjelmaa lukemaan ja laskemaan yhteen kokonaislukuja niin kauan kunnes käyttäjä päättää lopettaa lukujen syöttämisen.

  11. Tehdään ohjelmaan silmukkaosa, jossa luetaan yksi luku, lisätään se tähänastiseen summaan ja pyydetään jälleen uusi luku. Jos luettu luku on 0 niin lukeminen lopetetaan.
    Tarvitaan siis kaksi muuttujaa, ensimmäiseen, luku, luetaan lukuja ja toiseen, summa, lasketaan summaa.

    Muutokset.
    Talleta aluksi ohjelma nimellä SUMMAA.CPP.
    Muuta kommenttirivi ajan tasalle.
    Korjaa muuttujan määrittelyrivi muotoon

      int luku = 0, summa = 0;
    
    Lisää tämän rivin alle seuraavat kaksi riviä:
      do {
        summa = summa + luku;
    
    Poista sitten seuraavat neljä riviä seuraavasti;
    Ensin merkitse ne ja sitten valitsemalla Edit (Alt+e) ja Cut tai suoraan näppäinkomennolla Shift+Delete.
    Korjaa seuraavana olevan cout-lauseen sisäänveto ja muuta lause muotoon
        cout << "Anna kokonaisluku (0 lopettaa syötön) > ";
    
    Korjaa cin-lauseessa muuttujan nimeksi luku ja korjaa myös sisäänveto.
    Lisää seuraavaksi riviksi rivi
      } while (luku != 0);
    
    ja muuta seuraavat kaksi tulostuslausetta yhdeksi lauseeksi
      cout << "Luettujen lukujen summa = " << summa << endl;
    
    Ohjelman tulisi nyt olla seuraavanlainen (huomaa sisennykset):
    /*
      SUMMAA.CPP  Ohjelma lukee kokonaislukuja, laskee niiden summan
                  ja tulostaa sen.
    */
    #include <iostream.h>
    int main(void)
    {
      int luku = 0, summa = 0;
      do {
        summa = summa + luku;
        cout << "Anna kokonaisluku (0 lopettaa syötön) > ";
        cin >> luku;
      } while (luku != 0);
      cout << "Luettujen lukujen summa = " << summa << endl;
      return 0;
    }
    
    Talleta ohjelma, käännä se ja testaa sen toimintaa eri tapauksissa.
  12. Lopeta Borland C++ joko valikosta File (Alt+f) ja sitten Quit tai suoraan näppäinkomennolla Alt+x.
  13. Suorita lopetustoimenpiteet käyttäen joko DOS-komentoikkunaa tai Windows Exploreria.
    1. Kopioi kaikki C++-kieliset ohjelmat levykkeellesi sopivaan alihakemistoon. Siis ei kannata kopioida muita kuin .CPP-tarkentimen omaavat tiedostot. HUOM! Voit käyttää myös omaa hakemistoasi U-asemassa.
    2. Tyhjennä omalla nimellä oleva hakemistosi.
    3. Vaihda WinCD-ohjelmalla oletushakemistoksesi C:\MyTemp
    4. Hävitä alussa luomasi työhakemisto. (Saattaa vaatia ensin poistumista ja sitten uudelleen kirjaantumista Windowsiin!)
    5. Kirjoittaudu ulos: Valitse Start|Log Off käyttäjätunnus ja paina Yes-nappulaa.
    6. Älä sulje konetta, äläkä näyttöä.
http://appro.mit.jyu.fi/2002/kesa/johdatusohjelmointiin/demot/demo4/index.html
© Juha Kajava () & Miika Nurminen ()
Perustuu osittain Hans Björnin kurssisivustoon ja teksteihin.
Viimeksi päivitetty: 7.05.2002 15:33:05