Question: In C#: For today's lab you will be creating a store inventory management system. Your program will have to have the following elements. It should allow any number of customers to shop at the store using names to identify each one. The user should be able to select which one is the current customer. The system must contain a list of at least 50 items (repeats are allowed) that can be purchased by the customers. For a customer to make a purchase they must transfer the items they wish to buy to their own shopping cart. (A Shopping cart list should be maintained for each customer). The user should be able to switch between customers without losing the contents of each customer's cart. The user can select complete purchase and will be presented with a total for that user’s purchases. Customers should be able to remove items from their cart and return them to the stores inventory. A customer’s cart should be removed after her/his purchase is complete. NOTE: The code structure and guidelines are light because this exercise is designed to test your critical thinking skills and see how you apply the skills you’ve learned throughout the duration of this class.
Use the following guidelines to complete this application:
Classes
Classes should be used to represent Inventory Items
Customers
List(s)
Lists should be used to represent The stores inventory Customers shopping carts
Dictionary
A Dictionary should be used to Track all of the customers - identified by their name
User Options
The user should have the following options:
Select current shopper - list of all shoppers and option to create another shopper
View store inventory - list everything the store is selling
View cart - list of everything in the current Customers cart
Add item to cart - allow the user to select an item to add to the current Customer’s cart and remove it from the store’s inventory. (Can be combined with the View store option if you wish) Remove item from cart - allow the user to select an item to add to the stores inventory and remove it from the current Customer’s cart. (can be combined with the View cart option if you wish)
Complete purchase - Total up the cost of all of the items in the user’s cart and display that value. Remove the customer from the dictionary of customers
Exit - Exit the program
Input
All input should be validated and limited to the options presented to the user The user should not be able to crash the program Program should continue to run until the user chooses to exit File IO
Generate a "receipt" for the customer when they purchase their items.
The receipt contains: Customer name Time of transaction List of items purchased (name & cost) Total cost of items Feel free to add a sub-total and tax (not required). A new receipt file is generated for each completed purchase. Do not overwrite or append to a previous file. The file name: Indicates which customer completed the purchase. What order the receipts were generated. There is more than one good solution to this requirement, do not seek help for this feature - use critical thinking.
In: Computer Science
In order to complete these exercises, you will need to install prolog from swi-prolog.org.
Write a Prolog program by creating a file with you favorite program editor like Notepad++ that contains the following facts:
here the predicate parent(X,Y) means X is the parent of Y
you can also copy/paste or download the following database from the
course website
female(pam). female(liz). female(ann). female(pat). male(tom). male(bob). male(jim). parent(pam,bob). parent(tom,bob). parent(tom,liz). parent(bob,ann). parent(bob,pat). parent(pat,jim).
(a) Load this file into Prolog, usually this is done with the consult file predicate: ?- consult(‘<filename>’).
On Windows you can load the fact database with the menu point
File®Consult.
also overloads a bare string list by consulting each item in the
list: ['family_tree.pl'].
% these are the family facts
female(pam).
female(liz).
female(ann).
female(pat).
male(tom).
male(bob).
male(jim).
parent(pam,bob). % pam is parent of bob (etc.)
parent(tom,bob).
parent(tom,liz).
parent(bob,ann).
parent(bob,pat).
parent(pat,jim).
will work. Once you have loaded the program pose the following queries:
?- female(ann).
?- female(jim).
?- parent(X,bob).
?- parent(tom,X).
?- parent(X,ann),parent(X,pat).
What are the answers to these queries? Beware, for some queries here might be more than one answer. To get all the answers type a ';' and carriage return at the question mark.
(b) Now, using the parent predicate formulate the following Prolog queries:
1. Who is Pat's parent?
2. Does Liz have a child?
SWI-Prolog
3. Who is Pat's grandparent?
(c) Given the above facts, extend the program by writing rules defining the following predicates:
sister(X,Y) -- X is the sister of Y.
son(X,Y) -- X is the son of Y.
father(X,Y) -- X is the father of Y. grandmother(X,Y) -- X is the
grandmother of Y. ancestor(X,Y) -- X is an ancestor of Y.
(Hint: this predicate might come in handy: different(X,Y):- not(X=Y). Some predicate definitions might be recursive.)
Add these rules to your existing file and attach the file to your submission
Demonstrate that your program works by posing the following queries:
4. ?- sister(X,pat).
5. ?- sister(X,Y).
6. ?- son(jim,X).
7. ?- father(X,bob).
8. ?- grandmother(X,ann). 9. ?- ancestor(X,jim).
Hand in the source code of your prolog program and a proof of the program execution.
For each of parts a, b, and c, you should include screenshots of the relevant contents of the SWI-Prolog console. Part c additionally requires you to attach your .pl file.
In: Computer Science
2. A complex number can be expressed as a + bi where a and b are real numbers and i is the imaginary unit. The multiplication of two complex numbers is defined as follows:
(a+bi)(c+di) = (ac-bd) + (bc+ad)i
Define a class which represents a complex number. The only member functions you have to define and implement are those which overload the * and *= symbols.
In C++ please, thank you
In: Computer Science
1. Design and implement a class called RandomArray,
which has an integer array. The constructor receives the size of
the array to be allocated, then populates the array with random
numbers from the range 0 through the size of the array. Methods are
required that
return the minimum value, maximum value, average value, and a
String representation of the array values. Document your design
with a UML Class diagram. Create a separate driver class that
instantiates a RandomArray object and outputs its contents and the
minimum, maximum, and average values.
In: Computer Science
Write an error-free Python program to do the following things.
Sample output:
Enter population for state 1: 5
Enter population for state 2: 4.5
Enter population for state 3: 3
Enter population for state 4: 7
Enter population for state 5: 6
Enter population for state 6: 2
[5.0, 4.5, 3.0, 7.0, 6.0, 2.0]
Display of list values
* * * * * 5.0
* * * * 4.5
* * * 3.0
* * * * * * * 7.0
* * * * * * 6.0
* * 2.0
In: Computer Science
File IntList.java contains definitions for a linked list of integers. The class contains an inner class IntNode that holds information for a single node in the list (a node has a value and a reference to the next node) and the following IntList methods:
File IntListTest.java contains a driver that allows you to experiment with these methods. Save both of these files to your directory, compile and run IntListTest, and play around with it to see how it works. Then add the following methods to the IntList class. For each, add an option to the driver to test it.
Note that you can still use the old nodes; just replace the values stored in those nodes.
// ***************************************************************
// FILE: IntList.java
//
// Purpose: Defines a class that represents a list of integers
//
// ***************************************************************
public class IntList
{
private IntNode front; //first node in list
//-----------------------------------------
// Constructor. Initially list is empty.
//-----------------------------------------
public IntList()
{
front = null;
}
//-----------------------------------------
// Adds given integer to front of list.
//-----------------------------------------
public void addToFront(int val)
{
front = new IntNode(val,front);
}
//-----------------------------------------
// Adds given integer to end of list.
//-----------------------------------------
public void addToEnd(int val)
{
IntNode newnode = new IntNode(val,null);
//if list is empty, this will be the only node in it
if (front == null)
front = newnode;
else
{
//make temp point to last thing in list
IntNode temp = front;
while (temp.next != null)
temp = temp.next;
//link new node into list
temp.next = newnode;
}
}
//-----------------------------------------
// Removes the first node from the list.
// If the list is empty, does nothing.
//-----------------------------------------
public void removeFirst()
{
if (front != null)
front = front.next;
}
//------------------------------------------------
// Prints the list elements from first to last.
//------------------------------------------------
public void print()
{
System.out.println("--------------------");
System.out.print("List elements: ");
IntNode temp = front;
while (temp != null)
{
System.out.print(temp.val + " ");
temp = temp.next;
}
System.out.println("\n-----------------------\n");
}
//*************************************************************
// An inner class that represents a node in the integer list.
// The public variables are accessed by the IntList class.
//*************************************************************
private class IntNode
{
public int val; //value stored in node
public IntNode next; //link to next node in list
//------------------------------------------------------------------
// Constructor; sets up the node given a value and IntNode reference
//------------------------------------------------------------------
public IntNode(int val, IntNode next)
{
this.val = val;
this.next = next;
}
}
}
// ***************************************************************
// IntListTest.java
//
// Driver to test IntList methods.
// ***************************************************************
import java.util.Scanner;
public class IntListTest
{
private static Scanner scan;
private static IntList list = new IntList();
//----------------------------------------------------------------
// Creates a list, then repeatedly prints the menu and does what
// the user asks until they quit.
//----------------------------------------------------------------
public static void main(String[] args)
{
scan = new Scanner(System.in);
printMenu();
int choice = scan.nextInt();
while (choice != 0)
{
dispatch(choice);
printMenu();
choice = scan.nextInt();
}
}
//----------------------------------------
// Does what the menu item calls for.
//----------------------------------------
public static void dispatch(int choice)
{
int newVal;
switch(choice)
{
case 0:
System.out.println("Bye!");
break;
case 1: //add to front
System.out.println("Enter integer to add to front");
newVal = scan.nextInt();
list.addToFront(newVal);
break;
case 2: //add to end
System.out.println("Enter integer to add to end");
newVal = scan.nextInt();
list.addToEnd(newVal);
break;
case 3: //remove first element
list.removeFirst();
break;
case 4: //print
list.print();
break;
default:
System.out.println("Sorry, invalid choice")
}
}
//-----------------------------------------
// Prints the user's choices
//-----------------------------------------
public static void printMenu()
{
System.out.println("\n Menu ");
System.out.println(" ====");
System.out.println("0: Quit");
System.out.println("1: Add an integer to the front of the list");
System.out.println("2: Add an integer to the end of the list");
System.out.println("3: Remove an integer from the front of the list");
System.out.println("4: Print the list");
System.out.print("\nEnter your choice: ");
}
}
In: Computer Science
In: Computer Science
C++ language
Using classes (OOD), design a system that will support lending various types of media starting with books. Program should be able to handle a maximum of 500 books. Program should meet at least the following requirements:
1. Define a base media class with a book class derived from it. (Specific class names determined by programmer.)
2. The classes should contain at least the following information: title, up to four authors, ISBN.
3. Define a collection class that will hold up to 500 books.
4. The program should be able to perform the following operations supported by the class definitions:
a) Load data from a drive
b)Sort and display the books by title
c)Sort and display the books by author
d)Add and remove books
Programming requirements: Must include examples of inheritance and composition
~~~Function/Class comments (Description, pre and post conditions)
~~~Internal comments for all functions
In: Computer Science
Python Program:
Description
Create an object-oriented program that uses inheritance to perform
calculations on a rectangle or a square.
Specifications
Sample Output (Your output should be similar or can be the same to the text in the following box)
|
Rectangle
Calculator Continue? (y/n): y Rectangle or square?
(r/s): s Continue? (y/n): n Thank you for using my app. |
In: Computer Science
In Python, Define an object-oriented class to represent a Sensorless Wheeled Robot, including:
(a) class data variables to store the robot’s x and y position.
(b) A class function or functions to move the robot by one distance unit in either positive or negative x, or positive or negative y dimensions. Include printed, informative output of each move and the resulting robot position
(c) A class function to navigate to the destination location by calling the class move functions (described above) • The destination object is passed in as a parameter to this function. • The obstacle position is also passed as a parameter to the function. • Reaching the destination does not require that the robot is rotated to ’face’ the destination in this model
In: Computer Science
In: Computer Science
Python:
def factors(matrix, factor):
The matrix is a 3D list of integers.
factors are either one, two, or three
If the factor is 'one' it will return a the first value from each list
if the factor is 'two' it will return the second value, and same for the third.
Example;
input = [ [ [1, 2, 3], [3, 2, 9], [9, 8, 6] ],
[ [0, 0, 4], [8, 9, 0], [5, 2, 1] ],
[ [0, 1, 1], [5, 5, 9], [3, 8, 4] ] ], 'one')
output = [ [1, 3, 9], [0, 8, 5], [0, 5, 3] ]
In: Computer Science
Explain the shortest seek time first, first come first serve, scan, and c scan algorithms of storage management algorithms with the single of the sequence (93, 176, 42, 148, 14, 180).
Draw good diagrams and CALCULATE the total distance traveled and the total waiting time.
initial position is at 50
In: Computer Science
In: Computer Science