Skip to content

An AP Computer Science A programming assignment for Mr. Simon's APCSA course at Lowell High School, San Francisco, USA

Notifications You must be signed in to change notification settings

ryanlee4761/Chemotaxis

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Chemotaxis

Chemotaxis is when an organism moves toward or away from a chemical stimulus like food. Biologists write software using random walks to model and study how very small organisms like bacteria search for food. In this assignment you will create a simulation of organisms moving away from a starting position using a random walk. To start the assignment, fork this repository. You may find slides 22 - 79 on the OOP--ArraysOfObjects presentation and the Arrays of Objects worksheet helpful. NOTE: you must use Math.random() for all the random numbers in this assignment.

Requirements

  1. A class to represent a single bacteria or some other single organism. The class will have the following members:
    • 3 int variabless which hold the x and y coordinates of the bacteria position, and the bacteria color. (See slide 35 on the OOP--ArraysOfObjects presentation for one way to store the bacteria color in an int variable)
    • A constructor which initializes the 3 int variables
    • void move() which moves the bacteria in a random walk pattern.
    • void show() which draws the bacteria using the three member variables
  2. You will then use an array to store many instances of the Bacteria.
  3. Personalize the title, headline and footer of index.html

Extensions

If you have extra time, you might try to have the bacteria move in a "biased random walk" towards some stimulus like a piece of food or the mouse. You can use the mouse buttons to adjust the bias towards or away from the mouse. You can modify your class so the bacteria have a finite lifespan and can reproduce. You can simulate other organisms besides bacteria and even have multiple types of organisms like a predator and prey. Your simulation doesn't have to look like any other. Have fun and be creative.

Samples of Student Work

Grisela
Patrick
Rachel
Curtis
Vivica
Ken
Trinity
Andrea
Katja
William
Megan
Kathy
Alex
Alan
Heather
Jonathan
Robin
Elsa
Jimmy
Winston
Owen
Albertina
Matthew
Jonathan
Owen
Devin
Simon
Justin
Lila
Jason
Ethan
Nolan
Josh
Johnny
Rodger
Ian
Xinjian
Sandra
Vaselli
Gabriel
Madeline
Noah
Melanie
Kang
Joaquin
Sam
Anna
Alex
Marlon
Rishi
Claire
Eric
Antonio
Kaitlyn
Cara
Yanzhu
Jasmine
Tomas
Hazel
Qi
Matt
Derek
Aaron
George
Annika
Richard
Kazu
Jared
Rahul
Shannon
Kelly
Mike
Brandon
Bryan
Daniel
Max
Teresa
Dylan
Kenny
Emily
Kai
Tommy
Eddie
Francesca
Theo
Rafael
Austin
Jaqueline
Angel
Edison
Reily
Ling
Kimia
Rameses
Alan
Kenneth
Anthony
Chris
Kendrick
Marvin
Lance
Maanav
Andrew
Marisa
Thomas
Norton
David
Omar
Wen
Briana
Josh
Lawrence
David
Anthony
Angel
Wesley
Jocelyn
Lucian
Nathan
Calvin
Esther
Celina
Frida
Mari
Lily
Jessie
Eloy
Megan
Iryne
Vicky
Mia
Fressia
Juliana
Amy
Dylan
Adam
Alex
David
Akira
Audrey
Caitlin
Brendan
Jun
Daniel
Gordon
Raymond
Alex
Gee
Sean
Emma
Johnny
JT
Michael
Jennifer
Andrew
Michelle
Jayde
Angelica
Ian
Brendan
Branson
Andy
Susan
Marvin
Ian
Megan
Nathan
Eric
Cindy
Willis
Dalton
Jason
Esme
Albert
Henry
Matthew
Mampu
Annie
Brandon
Jalen
Richard
Racine
Kam
Devin
Lu-Aung
Kristi
Timmy
Marc
Ethan
Peter
Andy
Eunice
Alexis
Carmen
Alan
Rowan
Lily
Wilson
Jing
Alyssa
Melinda
Annie
Jack
Kris
Lena
Emi
Lancy
Lianne
Joey
Bryan
Katie
Athena
Sarah
Maxwell
Claudia
Emily
Jacky
Raymond
Natalie
Ashlyn
Jennifer
Wilsomn
Warren
Lalit
Ryan
Emma
Jaime
Erin
Hannah
Zachary
Sherissa
Victor
Emily
Jeffrey
Vincent
Jonathan
Crystal
Wesley
Oona
Emil
Alex
Justin
Nick
Scott
Tristan
Tim
Chanel
Jasmine
Chase
Mariann
Albert
Michelle
Ben
Kelly
Trevor
Gordon

About

An AP Computer Science A programming assignment for Mr. Simon's APCSA course at Lowell High School, San Francisco, USA

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 98.8%
  • Other 1.2%