Harjoitukset 2

Tredun ohjelmistokehittäjien kurssimateriaaleja

Harjoitukset 2

Ennen näitä harjoituksia tutustu materiaaliin PHP-alkeet 3.

Käytä submit form:ia parametrien välittämiseen ohjelmalle (saat ne superglobaalin muuttujan $_GET kautta).

Tee jokainen tehtävä omaan .php-tiedostoon ja tee palautussivusto, jonka yläpalkista pääsee selailemaan tehtäväsivujen välillä. Sijoita navigaatiopalkki kaikille tehtäville yhteiseen header.php tiedostoon, tee myös footer.php-tiedosto ja käytä näitä kaikissa tehtävissä.

Huom! Pyöristä arvot ohje. Huom! Lisää hintoihin €-merkki tulostuksessa.


Tehtävä 1

Laadi PHP:n avulla ohjelma, joka laskee ja tulostaa, montako litraa bensaa tietyllä rahamäärällä saa. Pyydä lomakkeen avulla käytössä oleva rahamäärä, voit olettaa bensan hinnaksi 1,97 euroa/litra.

Huom! PHP käyttää desimaalipistettä pilkun sijaan.

t1

Tulostus voisi näyttää esim. tältä:

t1


Tehtävä 2

Laadi ohjelma, joka pyytää lomakkeella syötteinä ostosten loppusumman ja asiakkaan antaman rahamäärän, ja laskee ja tulostaa, paljonko asiakas saa takaisin. Esimerkiksi jos maksat satasella alle satasen ostokset, paljonko saat takaisin. Jos rahat eivät riitäkään, ohjelma tulostaa “Anna lisää rahaa”.

t2

Tulostus voisi näyttää esim. tältä:

t2


Tehtävä 3

Laadi ohjelma, joka pyytää lomakkeella tuotteen hinnan ja arvonlisäveroprosentin, ja laskee sekä tulostaa arvonlisäveron euromäärän sekä verollisen hinnan.

t3

Tulostus voisi näyttää esim. tältä:

t3


Tehtävä 4

Laadi ohjelma, joka pyytää lomakkeella syötteenä luvun väliltä 1 - 10. Itse ohjelmassa arvo satunnaisluku väliltä 1 -10. Jos luvut ovat samat, ohjelma tulostaa “onnittelut”, muuten “tämä arpa ei voittanut”.

t4

Tulostus voisi näyttää esim. tältä:

t4


Tehtävä 5

Laadi ohjelma, joka pyytää lomakkeella syötteenä viimeisen kokeen arvosanan (1 - 3). Jos luku on 1, ohjelma tulostaa “Paranna hiukan”. Jos luku on 2, ohjelma tulostaa “Ihan ok” ja jos luku on 3, ohjelma tulostaa “Hienoa”. Jos luku ei ole mikään näistä, se pyytää antamaan luvun uudestaan.

t5

Tulostus voisi näyttää esim. tältä:

t5


Tehtävä 6

Laadi ohjelma, joka pyytää lomakkeella työntekijän työtunnit, tuntipalkan sekä ennakonpidätyksen veroprosentin, ja laskee ja tulostaa bruttopalkan, veron määrän ja nettopalkan.

t6

Tulostus voisi näyttää esim. tältä:

t6


Tehtävä 7

Laadi ohjelma, joka pyytää lomakkeella tuotteen yksikköhinnan ja tilatun määrän sekä alennusprosentin, ja laskee sekä tulostaa kokonaishinnan (ilman alennusta), alennuksen määrän sekä alennetun hinnan.

t7

Tulostus voisi näyttää esim. tältä:

t7


Tehtävä 8

Laadi ohjelma, jossa käyttäjää pyydetään syöttämään kahteen lomakekenttään luvut ja radionapin avulla tiedon siitä, haluaako hän tulostettavaksi suuremman vai pienemmän luvun. Haluttu luku tulostetaan ruudulle.

t8

Tulostus voisi näyttää esim. tältä:

t8

Vihje:

Radionapit tehdään näin:

suurempi: <input type="radio" name="valinta" value="suurempi">
pienempi: <input type="radio" name="valinta" value="pienempi">

Valinnan lukeminen:

if($_POST["valinta"]=="pienempi")

Voit tehdä toisen valituksi kirjoittamalla:

suurempi: <input type="radio" name="valinta" value="suurempi" checked="checked">

Lisätehtävä 1

Laadi ohjelma, joka pyytää käyttäjää valitsemaan jonkun kysymyksen valmiista valintaluettelosta (dropdown). Käytä ratkaisussa switch - case-rakennetta. Keksi itse kysymykset ja vastaukset (tee vähintään viisi kysymystä/vastausta).

Vihje:

<select name="arvosana">
    <option value="0">Ollako vai eikö olla?</option>
    <option value="1">Onks Viljoo näkyny?</option>
    <option value="2">Onks pakko?</option>
    <option value="3">Mihin se meni?</option>
    <option value="4">Mikä päivä tänään on?</option>
</select>

Jos haluat tulostaa jonkin valitun arvon lomakkeelle, käytä attribuuttia “selected”.

<option value="4" selected="selected">Mikä päivä tänään on?</option>

Lisätehtävä 2

Laadi tietokoneaiheinen tietokilpailu (voit myös valita jonkin muun aiheen esim. sanakoe, päässälaskukoe):

Kysymyksiä on 5, jokaisesta voi saada enintään 2 pistettä.

Lomakkeessa on tekstikenttiä, radionappeja ja valintaluetteloita (miksi ei valintaruutuja?). Pisteitä kertyy jokaisesta kysymyksestä, mutta vertailutaulukko on seuraava:

pisteitä 1 - 3, arvosana on välttävä pisteitä 4 - 5, arvosana on tyydyttävä pisteitä 6 - 8, arvosana on hyvä pisteitä 9 - 10, arvosana on kiitettävä

Peli näyttää arviointitaulukon ja antaa käyttäjälleen selkeän palautteen siitä mikä vastaus oli oikein ja paljonko siitä tuli pisteitä. Tee palaute switch-case-rakenteen avulla.

Muotoile ulkoasusta hyvännäköinen.