Lauseke



Tämä simulaatio havainnollistaa muuttujan x-arvon ja lausekkeen y = ax + b arvon sijoittumista xy-koordinaatistoon. Lausekkeen y = ax+b mahdolliset arvot on kuvattu sinisellä viivalla, kun x voi saada arvoja luvusta -10 lukuun 10. Kopioi alla oleva koodi ja aja ohjelma. Älä tee koodiin muutoksia.

// Ohjelman tehnyt e-Oppi Oy
// 30.8.2017
float a = 275; // Laskurin alkuarvo (ikkunan keskellä)
float b = 275; // Laskurin alkuarvo (ikkunan keskellä)
float c = 275; // Laskurin alkuarvo (ikkunan keskellä)

void setup () {
     size(600,750); // ikkunan koko   
}

void draw() {
     background(255); // Tyhjennä tausta
     stroke(0); // Musta viivan väri
     strokeWeight(3);
     textSize(20);
  

     int x1 = mouseX; // Selvitä hiiren vaakakoordinaatti
     int y1 = mouseY;
     if (mousePressed == true) {
     if ((y1 > 0) && (y1 < 30)) {
     if ((x1>a) && (a < 550)) { // Jos hiiri on oikealla puolen
         a++; // niin kasvata laskuria
     }

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

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

      if ((x1<c) && (x1 >= 0)) { // Jos hiiri on vasemmalla puolen
         c--; // niin pienennä laskuria
      }
     }
   
      
     }
     fill(0); // Musta tekstin väri
     int a2 = round(map(a,0,550,-10,10));
     int b2 = round(map(b,0,550,-10,10));
     int c2 = round(map(c,0,550,-10,10));

      
        fill(255);
        noStroke();
        rect(0,150,600,600);
        stroke(200);
        strokeWeight(2);
        for (int z = 0; z < 21; z++) {
           line(z*30,150,z*30,750); 
           line(0,150+z*30,600,150+z*30); 
        }
       strokeWeight(3);
       stroke(0);
       line(300,150,300,750);
       line(0,450,600,450);
       fill(0);
       triangle(590,440,598,450,590,460);
       triangle(300,150,310,160,290,160);
       text("x",580,430);
       text("y",315,170);
       textSize(20);
       text("1",323,470);
       text("1",280,430);
       pushMatrix();
       translate(300,450);
       scale(1,-1);
       fill(255,0,0);
      
       stroke(155,50,155);
       line(c2*30,(a2*c2+b2)*30,c2*30,0);
       line(c2*30,(a2*c2+b2)*30,0,(a2*c2+b2)*30);
       stroke(0,0,255);
       line(-10*30,30*(a2*(-10)+b2),10*30,30*(a2*(10)+b2));
       noStroke();
       ellipse(c2*30,(a2*c2+b2)*30,10,10);
       popMatrix();
       fill(0);
       noStroke(); 
       fill(255);
       rect(0,0,600,148);
       stroke(0); // Musta viivan väri
       strokeWeight(3);
       fill(255,255,0); // Keltainen täyttöväri
       rect(0,0,849,30); // Piirrä keltainen suorakulmio
       rect(0,30,849,30); // Piirrä keltainen suorakulmio
       rect(0,60,849,30); // Piirrä keltainen suorakulmio    
       fill(255,100,100); // Punainen täyttöväri
       rect(a,0,50,30); // Piirrä punainen neliö
       rect(b,30,50,30); // Piirrä punainen neliö
       rect(c,60,50,30); // Piirrä punainen neliö
       textSize(20);
       fill(0);
       textSize(25);
       text(""+a2,a+4,25);   
       text(""+b2,b+4,55);
       text(""+c2,c+4,85);       
       text("x = "+c2,10,120);
       if (c2 >= 0) {
         if (b2 >= 0) {
           text("y = "+a2+"\u00B7x+"+b2+" = "+a2+"\u00B7"+c2+"+"+b2+" = "+(a2*c2+b2),150,120);
         } else {
           text("y = "+a2+"\u00B7x"+b2+" = "+a2+"\u00B7"+c2+""+b2+" = "+(a2*c2+b2),150,120);
         }
       } else {
          if (b2 >= 0) {
           text("y = "+a2+"\u00B7x+"+b2+" = "+a2+"\u00B7("+c2+")+"+b2+" = "+(a2*c2+b2),150,120);
         } else {
           text("y = "+a2+"\u00B7x"+b2+" = "+a2+"\u00B7("+c2+")"+b2+" = "+(a2*c2+b2),150,120);
         }
       }
}

Peda.net käyttää vain välttämättömiä evästeitä istunnon ylläpitämiseen ja anonyymiin tekniseen tilastointiin. Peda.net ei koskaan käytä evästeitä markkinointiin tai kerää yksilöityjä tilastoja. Lisää tietoa evästeistä