Monthly Archives: November 2013

isLeapYear assignment

Every year that is exactly divisible by four is a leap year, except for years that are exactly divisible by 100; the centurial years that are exactly divisible by 400 are still leap years. For example, the year 1900 was not a leap year; the year 2000 was a leap year

Is leap year runner skeleton

 Call return value
 isLeapYear(100)  false
 isLeapYear(4)  true
 isLeapYear(104)  true
 isLeapYear(400)  true
 isLeapYear(800)  true
 isLeapYear(5)  false
 isLeapYear(803)  false

 

 

Seconds Since Birthdate

I . write bool isLeapYear( int year) : returns true or false depending on whether or not input is a leap year.

 

II. write a function called int secondsSince( int usersBYear, int usersBmonth, int usersBDay)  .

This function should return the number of seconds since that bithdate (year, month, day)

III.  In Main: use cout and cin to ask user for their bithdate  and then display how many seconds since that person’s bithdate

 

IV.  Determine how many seconds have occurred since 0/0/0 .

 

download-bttn Starting Code

PlayList Project [ArrayList]

A PlayList project will be based on Three Classes

  • Artist
  • Song
  • PlayList

The Artist class will store core information about an artist

The Song class will store basic information about a music song

The PlayList class will manage a list of artists and their ratings

Song

  • Constructor(s):
    • public Song( Artist _artist, String _name)
  • Instance Variables
    • private Artist artist
    • private String name
  • Methods
    • public String getName()
    • public Artist getArtist()
    • public boolean equals(Song other)//returns true if both the song objects have the same artist and name.
    • public String toString()

Artist

  • Constructor(s) :

    • public Artist(String name)
  • Instance Variables
    • private String artistName ;
    • private ArrayList<Song>  songs ; – an array storing the songs of this artist
  • Methods
    • public void addSong(String song) . Create a song object (see above) and add it to the arraylist. Here’s the first line.  :
      •  add-song
    • public String toString()
    • public boolean equals(Artist other) //returns true if the names (only) are the same
    • public ArrayList<Song> getSongs()
    • public String getName()

 

NOTE: The method below should appear in your code in the exact same order that I have listed them (to facilitate grading). 1 point off for not following this straightforward request.  In addition to submitting via repl.it, print out a copy. Staple each class separately and make sure that your name is on each stapled copy.

PlayList

  • Static Variable
    • public static int MAX_NUMBER_SONGS= 5; // for easy testing

  • Instance Variables

    • private String listName : This is the ‘name’ of your playList
    • private ArrayList<Song> songs;
    • private ArrayList<Integer> stars ;//how many stars each song has
    • Note: songs and stars are parallel ArrayLists
  • Constructor
    • public PlayList(String name) : There should be only 1 constructor that takes a parameter representing the name of the playList
  • Accessor Methods
    • public double averageRating()  // returns the average star rating for the  list
    • public ArrayList<Song> getSongs()  // returns the songs
    • public double averageRating(Artist artist) // returns the mean star rating associated with artist
    • public Song[] getSongs(Artist artist)  // returns an array populated by the songs of parameter artist
    • public ArrayList<Artist> getArtist(String songName) // returns an ArrayList of all Artists associated with the String songName (This could be multiple musicians. Cover songs etc..)
    • private int indexOf(Song someSong)  //
    • public String toString()  //returns an appropriate String representation of the PlayList

    Mutator Methods

    • public void swap(Song song1 ,  Song song2, ) // switches positions of these two (maintain parallelism!)
    • public boolean add(Song _song , int _stars)
      //adds data if number of song is less than MAX_NUMBER_SONGS
    • public void removeSong(Song song, Artist artist ) /removes all occurrences of song by artist. There could be multiple instances of song
    • public void removeArtist(Artist artist )  //removes all elements associated with artist
    • public void removeLowStars(int cutOff)  //removes all elements associated with a star rating less than cutOff

The method’s below are extra credit. If you figure out how to do them, you must also meet with me after school about the methods. To receive the extra credit, be prepared for a mini-quiz on how they work.  Be prepared for me to ask about your solution and how changing certain parts of your code would affect your solution. This meeting must happen on the Monday or Wednesday following the deadline.

 

  • ** public PlayList sortByRating() //this returns a rearranged playlist so that the 5 starred elements are the first group in the list, 4 stars second …1 stars, last
  • ** public PlayList shuffle()/ /this returns a new PlayList in which all of the songs have been reordered randomly

Class Roster Java Assignment

Class Roster: This class will implement the functionality of all roster for school. It will , in essence, manage an ArrayList of Student objects.

  • Class or static variables

    • representing the maximum number of students allowed on the roster
  • Instance Variables

    • : an ArrayList storing Student Objects

//during which period of the day does this roster meet

Constructors

  • a default constructor should initialize the list to empty strings
  • single parameter constructor with the period as a parameter
    Both constructors should initialize the instance variables

Methods

  • Accessors
    • private int indexOf(Student st)//@returns index of Student St or -1
    • public boolean containsStudent(Student st)//@returns true if studentName is in roster
    • public boolean containsStudent(int ssnId) //@returns true if a student in the list has that SSN
    • public Student retrieveBySSNId(int ssnId ) //@ returns Student associated with id. This should return null if the student does not exist.
    • public boolean equals(ClassRoster other) //@ returns whether or not rosters are equal
    • public String toString()

Mutators:

  • public boolean addStudent( Student st ) ;//if the size of the arraylist is less than MAX_NUM, add the student and return true; otherwise, return false and do not add student.
  • public boolean addStudent(String studentName, int age) ;//adds student name and age to end of roster
    • Make sure that the total number of students does not exceed MAX_NUM.
  • public Student removeStudent(int ssnId ) // removes student from roster based on id.
  • public Student removeStudent(String name) //removes student based on name.
  • public  Student removeStudent( Student st) //removes student st.

Student Class

Instance variables

  • private String name
  • private int age
  • private int socialSecurityNum (  How can we guarantee unique social security ? )

Constructors

  • default
    • public Student()  .
  • public Student( String _name)
  • public Student (String _name,  int _age)

Accessors

  • public int getSSN()
  • public int getAge()
  • public String getName()
  • public boolean equals(Student other)
  • public String toString()

Mutators

  • public void setAge( int  _age)
  • public void setName( String to)

Alice Projects (if-else and loops)

 

  • Packets #12 -14
  • 1)Kick Ball Create a world with your choice of a ball from the Sports collection and your choice of person from the People collection. Position the ball in front of one of the person’s feet. When you play the world, it should ask the user how far the person should kick the ball. Then the person object should move one of its legs in a kicking motion, and appear to kick the ball. The ball should move the distance specified by the user.
  • 2) Miles Per Gallon: Create a world in which the user is asked for the number of gallons of fuel his or her car can hold, and the number of miles that he or she can drive on a full tank. Use variables to hold these values. You should also have a variable to hold the car’s miles-per-gallon (MPG). Calculate the MPG with the following formula

    The world should have a person and a car. In the initial setup the car should approach the camera and the car should drive into view and stop in front of the camera. The person should then say a message indicating the car’s MPG, as calculated from the data entered by the user. Then, the car should drive away, to a position of the world
  • 3) Fahrenheit to Centigrade : The following formula is used to convert Fahrenheit temperature to Centigrade temperature:
      C = (5/9) * (F − 32)

    In the formula, C is the Centigrade temperature and F is the Fahrenheit temperature. Create a world in which the user is asked to enter a Fahrenheit temperature. Use a math expression to convert the temperature to Centigrade and store the converted temperature in a variable. Use a character from the People collection to say the centigrade temperature.

  • 4) Circle’s Area and Circumference: Create a world with your choice of person from the People collection. When you play the world, it should ask the user how for the radius of a circle. (This value should be stored in a variable ). The person should then say the area and the circumference of the circle.(circumference formula , area of a circle) (For an extra point do the same thing with a “Sphere”. Ask the user for the radius and calculate the .
  • ** Project 5 )For those shooting for an A. Look up the formulas for the volume and surface area of a cylinder . Ask the user for the height of the cylinder and the radius, which should be stored in variables. Then calculate the surface area and volume of the cylinder . See if there is a cylinder shape in the gallery to use as a visual aid.

Part II

  • Complete Packets #15, 16
  • Exercise 1 GumdropFish Modification: Modify the GumdropFish world that you created in Tutorial 4-2 so that the fish eats both of the gumdrops. First it should eat the gumdrop that is closest (as it currently does) , and then it should move to the other gumdrop and eat it. Both gumdrops should have their magical effect on the fish: the red gumdrop should make the fish twice its current size, and the yellow gumdrop should make the fish half its current size.
  • Exercise 2 FanLoop Modification: Modify the FanLoop world on the Student CD so it asks the user for the number of times the fan blades should rotate. Use this value in the Loop statement to control the number of times the roll method is called.
  • Exercise 3 Sea Plane Loop-the-Loop : Create a world with a sea plane (from the Vehicles collection).Create an infinite loop that causes the sea plane to do a circular loop the loop. Adjust the style and duration editing tags to make the animation fast, and as smooth as possible.
  • Exercise 4 Centigrade to Fahrenheit Modification: Modify the Fahrenheit to centigrade project as follows. At the start, ask the user how many temperatures they want to convert. Then use a loop to do that many conversions
  • Exercise 5 Miles Per Gallon Modification: Modify the miles per gallon project in the same way as the prior exercise. Ask the user how many miles per gallons they want to convert, and then use a loop to repeat the miles per gallon calculations.

Creating a Bank Object [ArrayList]

Bank This class will implement some of the basic functionality of a bank.

  • private instance Variables
    • An ArrayList to store names as Strings
    • An ArrayList storing balances (doubles)
  • Constructors
    • default constructor
    • A constructor with 2 parameters–the names of the account owners and their balances

Methods

  • Accessors

  • Mutators