C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter18: Stacks And Queues
Section: Chapter Questions
Problem 16PE: The implementation of a queue in an array, as given in this chapter, uses the variable count to...
icon
Related questions
Question
100%

A FastCritter moves twice as fast as a regular critter. When asked to move by n steps, it actually moves by 2 * n steps. Implement a FastCritter subclass of Critter whose move method behaves as described.

What do I need to change to make it work? 

import java.util.ArrayList;

/**
   A simulated critter.
*/
public class Critter //superclass
{
   private int position;
   private ArrayList<String> history;

   /**
      Constructs a critter at position 0 with blank history.
   */
   public Critter()
   {
      position = 0;
      history = new ArrayList<String>();
   }

   /**
      Gets the history of this critter.
      @return the history
   */
   public ArrayList<String> getHistory()
   {
      return history;
   }

   /**
      Adds to the history of this critter.
      @param newValue the desired state
   */
   public void addHistory(String event)
   {
      history.add(event);
   }

   /**
      Gets the position of this critter.
      @return the position
   */
   public int getPosition()
   {
      return position;
   }

   /**
      Moves this critter.
      @param steps the number of steps by which to move.
   */
   public void move(int steps)
   {
      position = position + steps;
      addHistory("move to " + position);
   }

 
}

public class FastCritter extends Critter
{
   
   public void act(){
      super.move();
      n = steps;
      move() = 2*n;
   }
      
   
}

public class FastCritter extends Critter //subclass I am using super to access move() from super class and multiply 2* n (steps)
{
   
   public void act(){
      super.move();
      n = steps;
      move() = 2*n;
   }
      
   
}
      

 


      

 

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Binary numbers
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning