/*Veidoja: Gustavs Skripa Grupa: 110 Nosaukums: Noliktavas un preču uzskaites sistēma Projekta apraksts: Aplikācija preču reģistrēšanai, kategorizēšanai, meklēšanai un kārtošanai noliktavā Veidots: 25.05.2026. Kādā programmā veidots: onlinegdb.com (C# (mono)) */ using System; namespace NoliktavasSistema { //Abstraction public abstract class Prece { // Class members, access modifiers private string nosaukums; public double cena; // Properties - get/set metodes public string Nosaukums { get { return nosaukums; } set { // Otrais if...else kritērijam if (string.IsNullOrEmpty(value)) { nosaukums = "Nezināms"; } else { nosaukums = value; } } } // Data Types - int datu tips public int Daudzums { get; set; } //Constructors public Prece(string nosaukums, double cena, int daudzums) { this.Nosaukums = nosaukums; this.cena = cena; this.Daudzums = daudzums; } // Polymorphism public virtual void IzvaditInfo() { // Output Console.WriteLine($"Prece: {Nosaukums}, Cena: {cena} EUR, Skaits: {Daudzums}"); } } // Inheritance public class Elektronika : Prece { public int Garantija { get; set; } public Elektronika(string nosaukums, double cena, int daudzums, int garantija) : base(nosaukums, cena, daudzums) { this.Garantija = garantija; } //Polymorphism public override void IzvaditInfo() { Console.WriteLine($"Elektronika: {Nosaukums}, Cena: {cena} EUR, Skaits: {Daudzums}, Garantija: {Garantija} mēn."); } } class Program { //Methods, method parameters static double AprekinatVertibu(double precesCena, int precesSkaits) { // Operators reizināšana return precesCena * precesSkaits; } static void Main(string[] args) { //Arrays Prece[] noliktava = new Prece[5]; //Classes/Objects noliktava[0] = new Elektronika("Dators", 899.99, 3, 24); noliktava[1] = new Elektronika("Telefons", 450.00, 5, 12); // Variables booleans bool turpinat = true; // While loop while (turpinat) { //Strings Console.WriteLine("\n--- Noliktavu sistema ---"); Console.WriteLine("1. Parādīt preces"); Console.WriteLine("2. Aprēķināt vērtību"); Console.WriteLine("0. Iziet"); Console.Write("Izvēlies darbību: "); // User Input string ievade = Console.ReadLine(); // If...Else if (ievade == "1") { Console.WriteLine("\nNoliktavas preces:"); //For loop for (int i = 0; i < noliktava.Length; i++) { // Operators salīdzināšana if (noliktava[i] != null) { noliktava[i].IzvaditInfo(); } } } // If...Else else if (ievade == "2") { double kopejaVertiba = 0; // For Loop otrais cikls for (int i = 0; i < noliktava.Length; i++) { if (noliktava[i] != null) { // Operators pieskaitīšana kopejaVertiba += AprekinatVertibu(noliktava[i].cena, noliktava[i].Daudzums); } } Console.Write("Ievadi atlaides kodu (#ESGRIBU10%ATLAIDI / #ESMILUSOAPLIKACIJU) vai spied Enter: "); string kods = Console.ReadLine(); // Switch sazarojums kritērijam switch (kods) { case "#ESGRIBU10%ATLAIDI": kopejaVertiba = kopejaVertiba * 0.90; break; case "#ESMILUSOAPLIKACIJU": kopejaVertiba = kopejaVertiba * 0.80; break; default: break; } //Math kopejaVertiba = Math.Round(kopejaVertiba, 2); Console.WriteLine($"\nKopējā noliktavas vērtība: {kopejaVertiba} EUR"); } else if (ievade == "0") { turpinat = false; Console.WriteLine("Programmas beigas"); } else { Console.WriteLine("Nav tādu izvēļu"); } } } } }