Verranto

Verranto



Ohjelman koodi on seuraava. Kopioi tämä koodi kokonaisuudessaan ohjelmointiympäristöön ja suorita koodi. Sinun ei tarvitse tehdä koodiin mitään muutoksia.
 
// Ohjelman tehnyt e-Oppi Oy
// 28.3.2018
int a = 200; // Laskurin alkuarvo (ikkunan keskellä)
int b = 400; // Laskurin alkuarvo (ikkunan keskellä)
int c = 600; // Laskurin alkuarvo (ikkunan keskellä)
void setup () {
 size(850,650); // ikkunan koko
 stroke(0); // Musta viivan väri
 strokeWeight(3);
}

void draw() {
 background(255); // Tyhjennä tausta
 textSize(30);
 fill(255,255,0); // Keltainen täyttöväri
 rect(0,0,849,50); // Piirrä keltainen suorakulmio
 rect(0,50,849,50); // Piirrä keltainen suorakulmio
 rect(0,100,849,50); // Piirrä keltainen suorakulmio
 fill(255,100,100); // Punainen täyttöväri
 rect(a,0,50,50); // Piirrä punainen neliö
 rect(b,50,50,50); // Piirrä punainen neliö
 rect(c,100,50,50); // Piirrä punainen neliö
 fill(200,255,0);
 noStroke();
 rect(130,310,100,60);
 rect(530,310,120,60);
 stroke(0);
 int x1 = mouseX; // Selvitä hiiren vaakakoordinaatti
 int y1 = mouseY;
  if (mousePressed == true) {
 if ((y1 > 0) && (y1 < 50)) {
 if ((x1>a) && (a < 800)) { // Jos hiiri on oikealla puolen
 a++; // niin kasvata laskuria
 }

 if ((x1<a) && (a > 0)){ // Jos hiiri on vasemmalla puolen
 a--; // niin pienennä laskuria
 }
 }
 if ((y1 > 50) && (y1 < 100)) {
 if ((x1>b) && (b < 800)) { // Jos hiiri on oikealla puolen
 b++; // niin kasvata laskuria
 }

 if ((x1<b) && (b>0)) { // Jos hiiri on vasemmalla puolen
 b--; // niin pienennä laskuria
 }
 }
 if ((y1 > 100) && (y1 < 150)) {
 if ((x1>c) && (c < 800)) { // Jos hiiri on oikealla puolen
 c++; // niin kasvata laskuria
 }

 if ((x1<c) && (c > 0)){ // Jos hiiri on vasemmalla puolen
 c--; // niin pienennä laskuria
 }
 }
}
 fill(0); // Musta tekstin väri
 int a2 = round((map(a,0,800,1,10)));
 int b2 = round((map(b,0,800,1,10)));
 int c2 = round((map(c,0,800,1,100)));
 float d2 = (c2*b2*10.0/(a2*10.0));
 float e2 = (a2*b2*10.0)/(c2*10.0);
 
 text(round(a2),a+10,35);
 text(round(b2),b+10,85);
 if (c2 == 100) {
 textSize(20);
 }
 text(round(c2),c+10,135);
 textSize(30);
 text("Suoraan verranto",50,200);
 text("Kääntäen verranto",450,200);
 text("x",50,250); 
 text("y",150,250); 
 text("y:x",260,250);
 text("x",450,250); 
 text("y",550,250); 
 text("x\u00B7y",700,250);
 text(a2,50,300);
 text(b2,150,300);
 text(a2,450,300);
 text(b2,550,300);
 text(c2,50,350);
 text(round(d2),150,350);
 text(c2,450,350);
 text(e2,540,350);
 text((b2*10.0)/(a2*10.0),250,300);
 text((d2*10.0)/(c2*10.0),250,350);
 text(a2*b2,700,300);
 text(round(c2*e2),700,350);
 text(a2+"\u00B7x = "+c2+"\u00B7"+b2,60,500);
 text("x =",60,560);
 text(c2+"\u00B7"+b2,115,550);
 text(a2,140,585);
 text(" = "+round(d2),210,560);
 line(120,555,205,555);
 text(c2+"\u00B7x = "+a2+"\u00B7"+b2,460,500);
 text("x =",460,560);
 text(a2+"\u00B7"+b2,520,550);
 text(c2,520,585);
 text(" = "+round(e2*100)/100.0,610,560);
 line(520,555,605,555);
 noFill();
 rect(40,170,350,240);
 rect(440,170,350,240);
 line(40,260,390,260);
 line(440,260,790,260);
 line(40,220,390,220);
 line(440,220,790,220);
 line(120,220,120,410);
 line(520,220,520,410);
 line(250,220,250,410);
 line(680,220,680,410); 
}