Help on Design a class named Book that holds a stock number, author, title, price, and number of pages for a book. Include methods to get and set the values for each data field. Write the pseudocode that defines the class?
Sure! Below is the pseudocode for a class named Book that holds the necessary data fields and includes methods to get and set the values for each field:
```
class Book:
// Data fields
stock_number: integer
author: string
title: string
price: float
number_of_pages: integer
// Methods
// Method to get the stock number
function get_stock_number() returns integer:
return stock_number
// Method to set the stock number
function set_stock_number(stock_num: integer):
stock_number = stock_num
// Method to get the author
function get_author() returns string:
return author
// Method to set the author
function set_author(book_author: string):
author = book_author
// Method to get the title
function get_title() returns string:
return title
// Method to set the title
function set_title(book_title: string):
title = book_title
// Method to get the price
function get_price() returns float:
return price
// Method to set the price
function set_price(book_price: float):
price = book_price
// Method to get the number of pages
function get_number_of_pages() returns integer:
return number_of_pages
// Method to set the number of pages
function set_number_of_pages(pages: integer):
number_of_pages = pages
```
This pseudocode defines the class Book with the necessary data fields (stock_number, author, title, price, and number_of_pages) and the corresponding methods (get_ and set_ methods) to retrieve and update the values of each field.
To design a class named Book that holds a stock number, author, title, price, and number of pages for a book, you can follow these steps:
1. Start by defining the Book class:
```
class Book:
```
2. Add the data fields as instance variables for the class. In this case, the data fields are stock number, author, title, price, and number of pages:
```
stock_number
author
title
price
num_pages
```
3. Implement the constructor method (also known as `__init__` method) to initialize the values of the data fields. The constructor will take parameters for each of the data fields and assign them to the respective instance variables:
```
def __init__(self, stock_number, author, title, price, num_pages):
self.stock_number = stock_number
self.author = author
self.title = title
self.price = price
self.num_pages = num_pages
```
4. Implement the getter (accessor) methods to retrieve the values of the data fields. In this case, you need getter methods for each data field:
```
def get_stock_number(self):
return self.stock_number
def get_author(self):
return self.author
def get_title(self):
return self.title
def get_price(self):
return self.price
def get_num_pages(self):
return self.num_pages
```
5. Implement the setter (mutator) methods to set new values for the data fields. Again, you need setter methods for each data field:
```
def set_stock_number(self, stock_number):
self.stock_number = stock_number
def set_author(self, author):
self.author = author
def set_title(self, title):
self.title = title
def set_price(self, price):
self.price = price
def set_num_pages(self, num_pages):
self.num_pages = num_pages
```
Here's the complete pseudocode for the Book class:
```
class Book:
stock_number
author
title
price
num_pages
def __init__(self, stock_number, author, title, price, num_pages):
self.stock_number = stock_number
self.author = author
self.title = title
self.price = price
self.num_pages = num_pages
def get_stock_number(self):
return self.stock_number
def get_author(self):
return self.author
def get_title(self):
return self.title
def get_price(self):
return self.price
def get_num_pages(self):
return self.num_pages
def set_stock_number(self, stock_number):
self.stock_number = stock_number
def set_author(self, author):
self.author = author
def set_title(self, title):
self.title = title
def set_price(self, price):
self.price = price
def set_num_pages(self, num_pages):
self.num_pages = num_pages
```
With this class definition, you can create Book objects, initialize their values, and access or modify their data fields using the getter and setter methods.