Oppgaveløsninger Modul 8


Exercise 4.2

private ArrayList<Book> library;


Exercise 4.3

10


Exercise 4.4

items.get(4);


Exercise 4.5

14


Exercise 4.6

notes.add(meeting);


Exercise 4.7

dates.remove(2);


Exercise 4.8

5


Exercise 4.9

public void removeNote(int noteNumber)
{
    if(noteNumber < 0) {
        // This is not a valid note number, so do nothing.
    }
    else if(noteNumber < numberOfNotes()) {
        // This is a valid note number, so we can remove it.
        notes.remove(noteNumber);
    } 
    else {
        // This is not a valid note number, so do nothing.
    }
}
        

Exercise 4.10

public void listAllNotes()


Exercise 4.11

No. We have no idea how many lines we would need.


Exercise 4.16

public void showNote(int noteNumber) {
    if(noteNumber < 0) {
        System.out.println("This is not a valid note number");
    } 
    else if(noteNumber <= numberOfNotes()) {
        // This is a valid note number, so we can print it.
        System.out.println(notes.get(noteNumber));
    } 
    else { 
        System.out.println("This is not a valid note number");
    }
}
        

Exercise 4.17

public void multiplesOfFive()
{
    int multiple = 10;
    while(multiple <= 95) {
        System.out.println(multiple);
        multiple = multiple + 5;
    }
}
                

Exercise 4.18

/**
* Sum the numbers from a to b, inclusive.
*/
public int sum(int a, int b)
{
    int sum = 0;
    int number = a;
    while(number <= b) {
        sum = sum + number;
        number = number + 1;
    }
    return sum; 
}
        

Exercise 4.19

/**
* A crude determination of whether n is prime or not.
* More efficient methods are possible.
*/
public boolean isPrime(int n)
{
    int divisor = 2; 
    while(divisor < n ) {
        if(n % divisor == 0) { 
            return false;
        }
        divisor = divisor + 1;
    }
    return true;
}
        

Exercise 4.20

public void search(String searchString)
{
    int index = 0; 
    boolean found = false; 
    while(index < notes.size() && !found) { 
        String note = notes.get(index); 
        if(note.contains(searchString)) { 
            found = true; 
        } 
        else { 
            index++; 
        } 
    }
    if(found) {
        System.out.println("Found search term in note: " + notes.get(index));
    }
    else {
        System.out.println("Search term not found."); 
    } 
}
        

Exercise 4.21

public void listNotes() {
    int index = 0;
    for(String note : notes) {
        System.out.println(index + ": " + note);
        index++; 
    } 
}
        

Exercise 4.22

The value does not vary.

public void search(String searchString)
{
    int index = 0;
    boolean found = false;
    int size = notes.size();
    while(index < size && !found) { 
        String note = notes.get(index); 
        if(note.contains(searchString)) { 
            found = true;
        } 
        else {
            index++;
        } 
    } 
    if(found) { 
        System.out.println("Found search term in note: " + notes.get(index));
    }
    else {
        System.out.println("Search term not found."); 
    }
}
        

Exercise 4.23

/**
 * Show a note.
 * @param noteNumber The number of the note to be shown.
 */
public void showNote(int noteNumber) { 
    if(noteNumber < 1) {
        // This is not a valid note number, so do nothing.
    }
    else if(noteNumber <= numberOfNotes()) { 
        // This is a valid note number, so we can print it. 
        System.out.println(notes.get(noteNumber - 1));
    }
    else { 
        // This is not a valid note number, so do nothing. 
    }
}

/**
 * List all notes in the notebook.
 */
public void listNotes() {
    int noteNumber = 1;
    for(String note : notes) { 
        System.out.println(noteNumber + ": " + note);
        noteNumber++;
    }
}

/**
 * Remove a note from the notebook if it exists.
 * @param noteNumber The number of the note to be removed.
 */
public void removeNote(int noteNumber) { 
    if(noteNumber < 1) {
        // This is not a valid note number, so do nothing.
    }
    else if(noteNumber <= numberOfNotes()) { 
        // This is a valid note number.
        notes.remove(noteNumber - 1); 
    }
    else {
        // This is not a valid note number, so do nothing. 
    }
}
        

Exercise 4.25-4.27

import java.util.ArrayList;

/**
 * Store details of club memberships. 
 *
 * @author (your name)
 * @version (a version number or a date) 
 */
public class Club {
    private ArrayList<Membership> members;
    
    /**
     * Constructor for objects of class Club
     */
    public Club() { 
        members = new ArrayList<Membership>();
    } 
    
    /**
     * Add a new member to the club's list of members.
     * @param member The member object to be added.
     */
    public void join(Membership member) {
        members.add(member);
    }
    
    /**
     * @return The number of members (Membership objects) in
     * the club.
     */
    public int numberOfMembers() { return members.size(); }
}