Olkoon luokassa tyttöjä 15 ja poikia 12. Tee ohjelma, joka piirtää prosenttiosuudesta diagrammin.

SANALLINEN ALGORITMI
- Aseta ikkunan kooksi 400 px vaakaan ja 400 px pystyyn.
- Aseta ikkunan taustaväriksi valkoinen.
- Aseta tekstin kooksi 255.
- Aseta tekstin väriksi musta.
- Määrittele desimaalilukumuuttuja tytot ja anna sille arvo 15.
- Määrittele desimaalilukumuuttuja pojat ja anna sille arvo 12.
- Määrittele desimaalilukumuuttuja summa ja sijoita siihen muuttujien tytot ja pojat summa.
- Määrittele desimaalilukumuuttuja tytotpros ja sijoita siihen tyttöjen prosenttiosuus, jonka saat laskukaavasta: 100∙(tytot:summa).
- Määrittele desimaalilukumuuttuja pojatpros ja sijoita siihen poikien prosenttiosuus, jonka saat laskukaavasta: 100∙(pojat:summa).
- Määrittele desimaalilukumuuttuja tytotkulma ja sijoita siihen tyttöjen prosenttiosuutta vastaava kulman suuruus, jonka saat laskukaavasta: 360∙(tytot:summa).
- Määrittele desimaalilukumuuttuja pojatkulma ja sijoita siihen poikien prosenttiosuutta vastaava kulman suuruus, jonka saat laskukaavasta: 360∙(pojat:summa).
- Aseta täyttöväriksi magneta.
- Piirrä tyttöjen prosenttiosuutta kuvaava sektori, joka keskipiste on pisteessä (200,200), leveys ja korkeus on 300. Sektorin aloituskulma on nolla ja lopetuskulma on muuttujan tytotkulma arvo.
- Piirrä poikien prosenttiosuutta kuvaava sektori, joka keskipiste on pisteessä (200,200), leveys ja korkeus on 300. Sektorin aloituskulma on muuttujan tytotkulma arvo ja lopetuskulma on muuttujan pojatkulma arvo lisättynä muuttujan tytotkulma arvoon.
- Aseta tekstin väriksi musta.
- Tulosta tyttöjen prosenttiosuuden arvo paikkaan (150,280), jonka saat selville muuttujasta tytotpros.
- Tulosta poikein prosenttiosuuden arvo paikkaan (150,140), jonka saat selville muuttujasta pojatpros.
|
// Ohjelman tehnyt e-Oppi Oy
// 30.8.2017
void setup () {
size(400,400); // Ikkunan koko
background(255); // Taustaväri valkoinen
textSize(24); // Tekstin koko
fill(0); // Tekstin väri musta
}
void draw () {
// Anna alkuarvot
float tytot = 15.0; // Muuta tämä arvo
float pojat = 12.0; // Muuta tämä arvo
// Laske
float summa = tytot+pojat;
float tytotpros = 100*(tytot/summa); // Laske prosentit
float pojatpros = 100*(pojat/summa);
float tytotkulma = 360*(tytot/summa); // Laske kulmat
float pojatkulma = 360*(pojat/summa);
// Piirrä
fill(255,0,255); // Magneta
arc(200,200,300,300,radians(0),radians(tytotkulma),PIE);
fill(0,255,255); // Syaani
arc(200,200,300,300,radians(tytotkulma),radians(tytotkulma+pojatkulma),PIE);
// Tulosta tekstit
fill(0); // Musta tekstin väri
text("Tytöt "+round(tytotpros)+" %",150,280);
text("Pojat "+round(pojatpros)+" %",150,140);
}