Scanner
unknown
csharp
2 years ago
3.5 kB
15
Indexable
using System;
using System.Globalization;
public partial class Program
{
// Static arrays for at gøre dets data tilgængeligt i global scope, så det kan anvendes i forskellige metoder i programmet.
static int[] productIds = { 1, 2, 3 };
static string[] productName = { "TShirt", "Kop", "Kasket" };
static int[] productPrice = { 150, 30, 50 };
static int[] productStock = { 5, 8, 4 };
public class ProductInfo
{
public string Navn { get; set; }
public double Pris { get; set; }
public int Stock { get; set; }
public int Id { get; set; }
}
static void Main(string[] args)
{
transaktion();
}
public static ProductInfo productScanning()
{
//Variabel til scanner ID?
int productID;
Console.WriteLine("Indtast nummer 1-3 for at vælge item fra array");
string input = Console.ReadLine();
// Forsøg at konvertere den læste streng til en int
if (int.TryParse(input, out productID))
{
productID -= 1;
// Udskriv productID -1, da array starter på 0, men vi spørg brugeren efter at indtaste 1-3.
Console.WriteLine("Du har indtastet produktID: " + productID);
}
else
{
// Hvis indtastningen ikke kunne parses til en int, vil der blive vist en fejlmeddelelse
Console.WriteLine("Fejl: Indtastningen kunne ikke parses til en gyldig produktID.");
}
// ProductInfo = klassen jeg vil oprette en ny instans af
// productInfo = variabel der skal have de nye værdier fra denne instans
// new ProductInfo() = Er metoden som opretter selve instansen og allokere hukommelse i RAM til den nye instans
ProductInfo productInfo = new ProductInfo();
//For loop der anvender productID index til at finde tilsvarende produktinformation med det samme index
for (int i = 0; i < productIds.Length; i++) {
if (i == productID)
{
productStock[productID] -=1;
productInfo.Navn = productName[i];
productInfo.Pris = productPrice[i];
productInfo.Stock = productStock[i];
productInfo.Id = productID;
Console.WriteLine("Produkt: " + productInfo.Navn);
Console.WriteLine("Pris: " + productInfo.Pris);
Console.WriteLine("Stock: " + productInfo.Stock);
}
}
return productInfo;
}
static int transaktion()
{
int totalSum = 0;
bool checkTransaktion = true;
while (checkTransaktion == true)
{
ProductInfo productInfo = productScanning();
string produktPrisString = productInfo.Pris.ToString();
if (int.TryParse(produktPrisString, out int produktPris))
{
totalSum += produktPris;
}
else
{
Console.WriteLine("Fejl: Prisen på produktet kunne ikke parses som en integer.");
}
Console.WriteLine("Scan ny vare? (ja/nej)");
string nyVare = Console.ReadLine();
if (nyVare == "nej")
{
checkTransaktion = false;
Console.WriteLine(totalSum);
}
}
return totalSum;
}
}Editor is loading...
Leave a Comment