/* Veidoja: Dimitrijs Mihailovskis Grupa: 110 C# noslēguma darbs Izmantotais Compiler: Visual Studio 2026 */ using System; namespace AutoservisaSintakse { public enum AutoVirsbūve { Sedans, Universālis, Apvidus, Hekbeks } public abstract class Transportlīdzeklis { public string Ražotājs; private int izlaidumaGads; public string Modelis; public int IzlaidumaGads { get { return izlaidumaGads; } set { if (value >= 1950 && value <= DateTime.Now.Year) { izlaidumaGads = value; } else { throw new ArgumentException("Nekorekts gads! Serviss pieņem auto, kas ražoti kopš 1950. gada."); } } } public Transportlīdzeklis(string ražotājs, string modelis, int gads) { this.Ražotājs = ražotājs; this.Modelis = modelis; this.IzlaidumaGads = gads; } public abstract void ParādītInformāciju(); } public class VieglaisAuto : Transportlīdzeklis { public AutoVirsbūve Virsbūve { get; set; } public VieglaisAuto(string ražotājs, string modelis, int gads, AutoVirsbūve virsbūve) : base(ražotājs, modelis, gads) { this.Virsbūve = virsbūve; } public override void ParādītInformāciju() { Console.WriteLine($"Klienta auto: {Ražotājs} {Modelis} ({IzlaidumaGads}. gads), Virsbūve: {Virsbūve}"); } public double AprēķinātRemontu(int stundasTarifs, double atlaide) { int nepieciešamāsStundas = 3; double pamataSumma = nepieciešamāsStundas * stundasTarifs; double galaSumma = pamataSumma - (pamataSumma * atlaide); Console.WriteLine($"Tāme AR ATLAIDI: {nepieciešamāsStundas}h x {stundasTarifs}€ - {atlaide * 100}% = {galaSumma}€"); return galaSumma; } public double AprēķinātRemontu(int stundasTarifs) { int nepieciešamāsStundas = 3; double galaSumma = nepieciešamāsStundas * stundasTarifs; Console.WriteLine($"Standarta tāme: {nepieciešamāsStundas}h x {stundasTarifs}€ = {galaSumma}€"); return galaSumma; } } public class ElektroAuto : Transportlīdzeklis { public int AkumulatoraKapacitāte { get; set; } public ElektroAuto(string ražotājs, string modelis, int gads, int kapacitāte) : base(ražotājs, modelis, gads) { this.AkumulatoraKapacitāte = kapacitāte; } public override void ParādītInformāciju() { Console.WriteLine($"Klienta Elektroauto: {Ražotājs} {Modelis} ({IzlaidumaGads}. gads), Akumulators: {AkumulatoraKapacitāte} kWh"); } } class Program { static void Main(string[] args) { string servisaNosaukums = "Tehniskā Atbalsta Centrs 2026"; int darbaStunduTarifs = 45; double diagnostikasCena = 29.99; bool irSistēmaGatava = true; Console.WriteLine($"=== Sveicināti {servisaNosaukums} ==="); Console.WriteLine($"Sistēmas gatavības statuss: {irSistēmaGatava}"); int pieteiktieDefekti = 0; Console.Write("Ievadiet klienta pieteikto bojājumu skaitu: "); pieteiktieDefekti = Convert.ToInt32(Console.ReadLine()); if (pieteiktieDefekti >= 3) { Console.WriteLine("Automātiskais statuss: Noteikta kompleksā apskate."); } else { Console.WriteLine("Automātiskais statuss: Noteikta standarta apskate."); } if (darbaStunduTarifs > 40) { Console.WriteLine("Tiek piemērots paaugstināts brīvdienu tarifs."); } else { Console.WriteLine("Tiek piemērots standarta darba dienu tarifs."); } double premiumTarifs = Math.Ceiling(diagnostikasCena * 1.25); Console.WriteLine($"Premium ekspresdiagnostikas tarifs: {premiumTarifs}€"); string[] biežākieDefekti = { "Bremžu kluči", "Amortizatori", "Eļļas noplūde" }; Array.Sort(biežākieDefekti); Console.WriteLine("\nSistēmā reģistrētie defekti:"); for (int i = 0; i < biežākieDefekti.Length; i++) { Console.WriteLine($"- {biežākieDefekti[i]}"); } VieglaisAuto klientaAuto = new VieglaisAuto("Audi", "A6", 2019, AutoVirsbūve.Universālis); ElektroAuto klientaElektro = new ElektroAuto("Nissan", "Leaf", 2021, 85); Console.WriteLine("\n--- Reģistrēto transportlīdzekļu dati (Polimorfisms) ---"); klientaAuto.ParādītInformāciju(); klientaElektro.ParādītInformāciju(); Console.WriteLine("\n--- Izmaksu aprēķins ---"); klientaAuto.AprēķinātRemontu(darbaStunduTarifs, 0.15); Console.WriteLine("\n--- Gabarītu pārbaude ---"); switch (klientaAuto.Virsbūve) { case AutoVirsbūve.Universālis: Console.WriteLine("Nepieciešams garais pacēlājs Nr. 3."); break; case AutoVirsbūve.Sedans: Console.WriteLine("Piemērots standarta pacēlājs Nr. 1."); break; default: Console.WriteLine("Pārbaudīt brīvās vietas vispārējā zonā."); break; } Console.WriteLine("\n--- Sensorsistēmu skenēšana ---"); for (int kanāls = 1; kanāls <= 5; kanāls++) { if (kanāls == 2) { continue; } if (kanāls == 4) { Console.WriteLine("Atrasts kritisks kanāls — pārtraucam skenēšanu."); break; } Console.WriteLine($"Skenēts kanāls {kanāls} - viss kārtībā."); } } } }