Skip to content

Tyngdkraft

Under den här lektionen ska vi programmera gravitationen.

Vi kommer att använda två variabler och två "if"-satser.

Tyngdkraft: Uppgift 1

Vad gör den här koden?

float x = 150;
float y = 100;
float hastighet_at_hoger = 1;
float hastighet_nedat = 1;

void setup()
{
  size(300, 200);
}

void draw()
{
  ellipse(x, y, 50, 50);
  x = x + hastighet_at_hoger;
  y = y + hastighet_nedat;
  if (x > 275)
  {
    hastighet_at_hoger = -hastighet_at_hoger;
  }
  if (x < 25)
  {
    hastighet_at_hoger = -hastighet_at_hoger;
  }
  if (y > 175)
  {
    hastighet_nedat = -hastighet_nedat;
  }
}

Tyngdkraft: Lösning 1

Tyngdkraft: Lösning 1

Tyngdkraft: Uppgift 2

Se till att programmet visas i helskärm.

Tyngdkraft: uppgift 2

Tyngdkraft: Lösning 2

float x = 150;
float y = 100;
float hastighet_at_hoger = 1;
float hastighet_nedat = 1;

void setup()
{
  fullScreen();
}

void draw()
{
  ellipse(x, y, 50, 50);
  x = x + hastighet_at_hoger;
  y = y + hastighet_nedat;
  if (x > 275)
  {
    hastighet_at_hoger = -hastighet_at_hoger;
  }
  if (x < 25)
  {
    hastighet_at_hoger = -hastighet_at_hoger;
  }
  if (y > 175)
  {
    hastighet_nedat = -hastighet_nedat;
  }
}

Tyngdkraft: Uppgift 3

Tyngdkraft: uppgift 3

Se till att bollen studsar bra mot botten.

Solglasögon Tips: ersätt 175 med höjd - 25

Tyngdkraft: Lösning 3

float x = 150;
float y = 100;
float hastighet_at_hoger = 1;
float hastighet_nedat = 1;

void setup()
{
  fullScreen();
}

void draw()
{
  ellipse(x, y, 50, 50);
  x = x + hastighet_at_hoger;
  y = y + hastighet_nedat;
  if (x > 275)
  {
    hastighet_at_hoger = -hastighet_at_hoger;
  }
  if (x < 25)
  {
    hastighet_at_hoger = -hastighet_at_hoger;
  }
  if (y > height - 25)
  {
    hastighet_nedat = -hastighet_nedat;
  }
}

Tyngdkraft: Uppgift 4

Se till att bollen studsar bra mot höger sida.

Tyngdkraft: uppgift 4

Tyngdkraft: Lösning 4

float x = 150;
float y = 100;
float hastighet_at_hoger = 1;
float hastighet_nedat = 1;

void setup()
{
  fullScreen();
}

void draw()
{
  ellipse(x, y, 50, 50);
  x = x + hastighet_at_hoger;
  y = y + hastighet_nedat;
  if (x > width - 25)
  {
    hastighet_at_hoger = -hastighet_at_hoger;
  }
  if (x < 25)
  {
    hastighet_at_hoger = -hastighet_at_hoger;
  }
  if (y > height - 25)
  {
    hastighet_nedat = -hastighet_nedat;
  }
}

Tyngdkraft: Slutuppgift

Lägg till följande inuti "draw"-funktionen längst ned:

hastighet_nedat += 0.1;

Gör bollen dubbelt så stor.

Tyngdkraft: slutuppgift

Om ditt program ser ut som bilden här nedanför, får du också ett klistermärke.

Solglasögon Ibland händer det oväntade saker i programmering!

Tyngdkraft: slutuppgift också OK