2
1
Fork 0
pr3-ws202526/go/01-basics
Sebastian Steger 0e296146ec inventory solution 2025-08-20 06:28:32 +00:00
..
README.md go basics 2025-08-20 06:27:04 +00:00
calculator.go go basics 2025-08-20 06:27:04 +00:00
inventory.go inventory solution 2025-08-20 06:28:32 +00:00

README.md

Go By Example

https://gobyexample.com/

Assignment 1 - Simple Calculator

Objective

Write a Go program that performs basic mathematical operations (addition, subtraction, multiplication, and division) based on user input.

Steps

  1. Define constants for valid operations (add,subtract,multiply,divide).
  2. Use variables to store user inputs and computed results.
  3. Use a loop to allow the user to perform multiple calculations until they choose to exit.
  4. Validate inputs using statements (e.g., handle division by zero).
  5. Use a statement to perform the selected mathematical operation.

Example Output

Enter operation (add, subtract, multiply, divide, exit): add
Enter the first number: 5
Enter the second number: 3
Result: 8

Enter operation (add, subtract, multiply, divide, exit): divide
Enter the first number: 10
Enter the second number: 0
Error: Division by zero is not allowed!

Enter operation (add, subtract, multiply, divide, exit): exit
Goodbye!

Hint

The program can use the fmt.Scan function to accept user input.

Assignment 2 - Inventory Management System

Objective

Create a program that simulates an inventory management system for a store.

Steps

  1. Define product categories (e.g., Electronics, Groceries, Clothes) using const and iota.
  2. Store a fixed list of initial product names in an array.
  3. Convert the array into a slice so the inventory can grow or shrink dynamically.
  4. Use a map to associate product names with details like quantity, price, and category.
  5. Implement the following functions:
    • AddProduct: Add a new product to the inventory.
    • RemoveProduct: Remove a product from the inventory.
    • DisplayInventory: Display all products with their details.
    • UpdateQuantity: Update the quantity of a product.

Example Output

Welcome to the Inventory Manager!

Initial Inventory:
1. Laptop - Electronics (Price: $1000, Quantity: 5)
2. Apples - Groceries (Price: $2, Quantity: 50)
3. T-shirt - Clothes (Price: $10, Quantity: 20)

Adding a new product: Phone (Electronics, Price: $800, Quantity: 10)

Updated Inventory:
1. Laptop - Electronics (Price: $1000, Quantity: 5)
2. Apples - Groceries (Price: $2, Quantity: 50)
3. T-shirt - Clothes (Price: $10, Quantity: 20)
4. Phone - Electronics (Price: $800, Quantity: 10)

Updating quantity for Apples: New Quantity = 30

Removing product: T-shirt

Final Inventory:
1. Laptop - Electronics (Price: $1000, Quantity: 5)
2. Apples - Groceries (Price: $2, Quantity: 30)
3. Phone - Electronics (Price: $800, Quantity: 10)
  • Use arrays to store initial product information.
  • Use slices to dynamically manage items in the inventory.
  • Use maps to track product details (e.g., quantity or price).
  • Define functions for adding, removing, and displaying products.
  • Use enums (via constants) to represent product categories.