Demo 3

Demoryhmä Päivä Aika Sali
Ryhmä 1 pe 31.5. 10.15 - 12.00 Ag Beeta
Ryhmä 2 pe 31.5. 16.15 - 18.00 Ag Beeta


  1. Oletetaan, että liukuluvulle on varattu tilaa kaksi tavua siten, että (vasemmalta lukien) etumerkki vie 1 bitin, eksponentti 6 bittiä, esitetään 2-komplementtina, ja mantissa 9 bittiä, esitetään normeerattuna siten, että sen ensimmäistä bittiä (joka on aina 1) ei ole talletettu lainkaan. Tulkitse bittijono 1000 1101 1101 0100 liukulukuna.

  2. Olkoon muistiosoitteissa 4000 ja 4001 olevien tavujen sisällöt heksajärjestelmässä F1 ja 37. Mikä on muistin sisältö niin sanotusti "selväkielisenä" alkaen osoitteesta 4000, kun tulkitaan
    1. yksi tavu etumerkittömänä kokonaislukuna,
    2. yksi tavu 2-komplementin kokonaislukuna,
    3. kaksi peräkkäistä tavua etumerkittömänä kokonaislukuna,
    4. kaksi peräkkäistä tavua 2-komplementin kokonaislukuna ja
    5. kaksi tavua peräkkäin tekstitietona (luentomonisteen taulukon mukaisesti).

  3. Olkoon tavun sisältö binäärimuodossa 0000 0110. Tulkitaan tavua etumerkittömänä kokonaislukuna. Yhden bitin siirto vasemmalle tarkoittaa sitä, että vasemmapuoleisin bitti poistuu ja oikeaan reunaan tulee uusi 0-bitti. Tarkastele tämän tavun avulla mitä tämä yhden bitin siirto vasemmalle vaikuttaa tavuun talletun kokonaisluvun arvoon. Miten käy jos sama toistetaan? Entä jos yhden bitin siirto tehdään oikealle ja vasemmapuoleisimmaksi bitiksi tulee 0.

  4. Arvostele ja esitä tarvittaessa parannuksia tai korjauksia seuraaville määrittelyille:
    1. int päivän_aikana_myydyt_autot;
    2. int Suomen_Asukasluku;
    3. double aika_100m;
    4. char VASTAUS = 'ei';
    5. float Helsinki_Vantaan_lentokentalta_sunnuntain_aikana_nousseiden_lentokoneiden_lukumaara;

  5. Kirjoita C++-kieliset lauseet, jotka laskevat muuttujiin seuraavien lausekkeiden arvot. (double a,b,c,d; int e,f,g;)

    Ohje: esittele ensin oikean tyyppinen muuttuja ja käytä sijoituslausetta.

    1.             1
      (a - 2)(a - -)
                  2
      
    2. 2b2 + 3c + 4
      
    3.             e
      (d+1.4)2  + --
                  fd
      
    4.     1    1
      1 + - + ---
          g   g+1
      

  6. Etsi ja korjaa virheet seuraavasta ohjelmasta, jonka tulisi lukea tuotteen veroton hinta ja tulostaa tuotteen arvonlisäverollinen hinta.
    Kommentoi myös ohjelma.
    #include <iostream.h>
    #define ALV 22;
    int main(void)
    {
       int hinta;
       cout << "Anna tuotteen hinta >"
       cin << hinta;
       cout << "Tuotteen verollinen hinta on ";
       cout << "ALV*hinta/100\endl";
    }
    
http://appro.mit.jyu.fi/2002/kesa/johdatusohjelmointiin/demot/demo3/index.html
© Juha Kajava () & Miika Nurminen ()
Perustuu osittain Hans Björnin kurssisivustoon ja teksteihin.
Viimeksi päivitetty: 7.05.2002 15:25:20
Appro | Johdatus ohjelmointiin | Luennot | Demot | Harjoitustyö | Moniste | Ilmoitukset | Postituslista
demo 1 | demo 3