Related questions
Concept explainers
The push member function simulates the push of a numeric button with value 0 to 9.
The open member function simulates the push of the # key that causes the lock to open, provided that the right combination was entered. (For now, the combination is hardwired as 1729. You will see in Section 9.6 how to change it.)
As the data representation, use an integer containing the digits that have been entered up to this point. You will need to figure out how to update that number. For example, if the user had previously pushed 1 and 7, causing input to be 17, and now pushes 9, how can you set input to 179?
In the open member function, return true if the lock would have been opened, false otherwise. Clicking that button resets the entered keys, whether or not the correct combination has been entered.
Complete the following file:
c++ please
#include <iostream>
using namespace std;
/**
A simulated lock with digit buttons.
*/
class Lock
{
public:
/**
Simulates a digit button push.
@param button a digit 0 ... 9
*/
void push(int button);
/**
Simulates a push of the open button.
@return true if the lock opened
*/
bool open();
private:
int combination = 1729;
int input = 0;
};
void Lock::push(int button)
{
. . .
}
bool Lock::open()
{
. . .
}
int main()
{
Lock my_lock;
my_lock.push(1);
my_lock.push(7);
my_lock.push(3);
my_lock.push(9);
cout << boolalpha;
cout << my_lock.open() << endl;
cout << "Expected: false" << endl;
my_lock.push(1);
my_lock.push(7);
my_lock.push(2);
my_lock.push(9);
cout << my_lock.open() << endl;
cout << "Expected: true" << endl;
my_lock.push(1);
my_lock.push(7);
my_lock.push(2);
cout << my_lock.open() << endl;
cout << "Expected: false" << endl;
my_lock.push(9);
cout << my_lock.open() << endl;
cout << "Expected: false" << endl;
my_lock.push(1);
my_lock.push(7);
my_lock.push(2);
my_lock.push(9);
cout << my_lock.open() << endl;
cout << "Expected: true" << endl;
return 0;
}
Trending nowThis is a popular solution!
Step by stepSolved in 2 steps
- IN C++ Lab #6: Shapes Create a class named Point. private attributes x and y of integer type. Create a class named Shape. private attributes: Point points[6] int howManyPoints; Create a Main Menu: Add a Triangle shape Add a Rectangle shape Add a Pentagon shape Add a Hexagon shape Exit All class functions should be well defined in the scope of this lab. Use operator overloading for the array in Shape class. Once you ask the points of any shape it will display in the terminal the points added.arrow_forwardHi, I am having trouble with this homework question for my C++ course 1. Implement a Student class. a. Create a class Student with the following private data members:1. name2. exam_1 grade3. exam_2 gradeb. Create all appropriate accessor and mutator functions.c. Assign appropriate access modifiers to insure encapsulation.d. Add a private calc GPA() function that calculates and returns the GPAbased upon the two exam grades.e. Add a public getGrade() function that: 1. Obtains the GPA from the private calc GPA() function.2. Returns a letter grade based upon the numerical GPA value.90 to 100 = A80 to 90 = B70 to 80 = C60 to 70 = D0 to 60 = F f. Test all functions use following main.int main(){Student a;a.setName("David");a.setExam1(90);a.setExam2(80);cout<<a.getName()<<endl;cout<<a.getExam1()<<endl;cout<<a.getExam2()<<endl;cout<<a.getGrade()<<endl;}arrow_forwardin c++ codearrow_forward
- What would be the missing line of codes?arrow_forwardI already have the code for the assignment below, but the code has an error in the driver class. Please help me fix it. The assignment: Make a recursive method for factoring an integer n. First, find a factor f, then recursively factor n / f. This assignment needs a resource class and a driver class. The resource class and the driver class need to be in two separate files. The resource class will contain all of the methods and the driver class only needs to call the methods. The driver class needs to have only 5 lines of code The code of the resource class: import java.util.ArrayList;import java.util.List; public class U10E03R{ // Recursive function to // print factors of a number public static void factors(int n, int i) { // Checking if the number is less than N if (i <= n) { if (n % i == 0) { System.out.print(i + " "); } // Calling the function recursively // for the next number factors(n, i +...arrow_forwardGame of Hunt in C++ language Create the 'Game of Hunt'. The computer ‘hides’ the treasure at a random location in a 10x10 matrix. The user guesses the location by entering a row and column values. The game ends when the user locates the treasure or the treasure value is less than or equal to zero. Guesses in the wrong location will provide clues such as a compass direction or number of squares horizontally or vertically to the treasure. Using the random number generator, display one of the following in the board where the player made their guess: U# Treasure is up ‘#’ on the vertical axis (where # represents an integer number). D# Treasure is down ‘#’ on the vertical axis (where # represents an integer number) || Treasure is in this row, not up or down from the guess location. -> Treasure is to the right. <- Treasure is to the left. -- Treasure is in the same column, not left or right. +$ Adds 50ドル to treasure and no 50ドル turn loss. -$ Subtracts...arrow_forward
- in C#, Make any necessary modifications to the RushJob class so that it can be sorted by job number. Modify the JobDemo3 application so the displayed orders have been sorted. Save the application as JobDemo4. An example of the program is shown below: Enter job number 22 Enter customer name Joe Enter description Powerwashing Enter estimated hours 4 Enter job number 6 Enter customer name Joey Enter description Painting Enter estimated hours 8 Enter job number 12 Enter customer name Joseph Enter description Carpet cleaning Enter estimated hours 5 Enter job number 9 Enter customer name Josefine Enter description Moving Enter estimated hours 12 Enter job number 21 Enter customer name Josefina Enter description Dog walking Enter estimated hours 2 Summary: RushJob 6 Joey Painting 8 hours @45ドル.00 per hour. Rush job adds 150 premium. Total price is 510ドル.00 RushJob 9 Josefine Moving 12 hours @45ドル.00 per hour. Rush job adds 150 premium. Total price is 690ドル.00 RushJob 12 Joseph Carpet cleaning 5...arrow_forwardIn GO language. Create a struct that has student name, id, and GPA. Write functions to create a student, modify the student’s id, and modify the student's GPA, and print the student’s information. (This is like creating a class and methods). Now create an array of three students and test your functions. You may hardcode your values if using a web conpiler. (Please hardcode the values!)arrow_forward7. username_ends_with_digits This function decides whether a given username ends with some digits. It returns either True, if the username does end with digits, or False, if it does not. Check out the .isdigit method on strings! Sample runs should look like:>>> username_ends_with_digits("FunctionEnjoyer") False>>> username_ends_with_digits("this_username_95060") Truearrow_forward
- Text book imageDatabase System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationText book imageStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONText book imageDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- Text book imageC How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONText book imageDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningText book imageProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education