using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Komis_Samochodowy_Michał_Cegłowski
{
class Komis_Samochodowy
{
static void Main(string[] args)
{
int liczba_wyboru, n = 8, j, miejsce, ID;
string koniec, marka;
double zakres_min, zakres_max;
string[] tabMarka;
double[] tabCena;
int[] tabMiejsce;
int[] tabID;
int[] tabPom;
// Dane tekstowe
tabMarka = new string[] { "Audi", "Bmw", "Mercedes", "Fiat", "Audi", "Jeep", "Volvo", "Ford" };
tabCena = new double[] { 50000, 26000, 12340, 1400, 567890, 12340, 52312, 22560 };
tabMiejsce = new int[] { 1, 2, 3, 4, 5, 6, 7, 8 };
tabID = new int[] { 11, 22, 33, 44, 55, 66, 77, 88 };
do
{
tabPom = new int[n];
Console.Clear();
Console.ForegroundColor = ConsoleColor.White;
Console.SetWindowSize(60, 50);
Console.WriteLine("----------------------------------------------------------");
Console.WriteLine("| KOMIS SAMOCHODOWY MICHAŁ CEGŁOWSKI |");
Console.WriteLine("----------------------------------------------------------");
Console.WriteLine("| |");
Console.WriteLine("| 1. Stan magazynowy wszystkich samochodów |");
Console.WriteLine("| |");
Console.WriteLine("| 2. Wyszukiwanie według marki |");
Console.WriteLine("| |");
Console.WriteLine("| 3. Wyszukiwanie według ceny |");
Console.WriteLine("| |");
Console.WriteLine("| 4. Wyszukiwanie według miejsca parkingowego |");
Console.WriteLine("| |");
Console.WriteLine("| 5. Wyszukiwanie według numeru ID |");
Console.WriteLine("| |");
Console.WriteLine("| 6. Wyjście z programu |");
Console.WriteLine("| |");
Console.WriteLine("----------------------------------------------------------");
while (!int.TryParse(Console.ReadLine(), out liczba_wyboru) || liczba_wyboru <= 0 || liczba_wyboru > 6)
Console.WriteLine("Podano złą wartość - podaj powtórnie: ");
switch (liczba_wyboru)
{
case 1:
Console.Clear();
Console.WriteLine("----------------------------------------------------------");
Console.WriteLine("| Stan magazynowy wszystkich samochodów |");
Console.WriteLine("----------------------------------------------------------");
Console.WriteLine();
Console.WriteLine("----------------------------------------------------------");
Console.WriteLine("| ID | Marka | Cena | Miejsce Parkingowe |");
Console.WriteLine("----------------------------------------------------------");
for (int i = 0; i < n; i++)
{
Console.WriteLine("| {0,2} | {1,11} | {2,12} | {3,20} |", tabID[i], tabMarka[i], tabCena[i], tabMiejsce[i]);
}
Console.WriteLine("----------------------------------------------------------");
break;
case 2:
Console.Clear();
Console.WriteLine("----------------------------------------------------------");
Console.WriteLine("| Podaj marke samochodu |");
Console.WriteLine("----------------------------------------------------------");
Console.WriteLine();
marka = Convert.ToString(Console.ReadLine());
Console.WriteLine();
j = 0;
for (int i = 0; i < n; i++)
{
if (marka == tabMarka[i])
{
tabPom[j] = i;
j++;
}
}
if (j == 0)
{
Console.WriteLine("Nie znaleziono samochodu o podanej marce ");
}
else
{
Console.WriteLine("----------------------------------------------------------");
Console.WriteLine("| ID | Marka | Cena | Miejsce Parkingowe |");
Console.WriteLine("----------------------------------------------------------");
for (int i = 0; i < j; i++)
{
Console.WriteLine("| {0,2} | {1,11} | {2,12} | {3,20} |", tabID[tabPom[i]], tabMarka[tabPom[i]], tabCena[tabPom[i]], tabMiejsce[tabPom[i]]);
}
Console.WriteLine("----------------------------------------------------------");
}
break;
case 3:
Console.Clear();
Console.WriteLine("----------------------------------------------------------");
Console.WriteLine("| Podaj zakres ceny samochodu |");
Console.WriteLine("----------------------------------------------------------");
Console.WriteLine();
Console.Write("Cena minimalna: ");
while (!double.TryParse(Console.ReadLine(), out zakres_min) || zakres_min <= 0)
Console.WriteLine("Podano złą wartość - podaj powtórnie: ");
Console.WriteLine();
Console.Write("Cena maksymalna: ");
while (!double.TryParse(Console.ReadLine(), out zakres_max) || zakres_max < zakres_min)
Console.WriteLine("Podano złą wartość - podaj powtórnie: ");
Console.WriteLine();
j = 0;
for (int i = 0; i < n; i++)
{
if ((zakres_min <= tabCena[i]) & (zakres_max >= tabCena[i]))
{
tabPom[j] = i;
j++;
}
}
if (j == 0)
{
Console.WriteLine("Nie znaleziono samochodu o podanej cenie ");
}
else
{
Console.WriteLine("----------------------------------------------------------");
Console.WriteLine("| ID | Marka | Cena | Miejsce Parkingowe |");
Console.WriteLine("----------------------------------------------------------");
for (int i = 0; i < j; i++)
{
Console.WriteLine("| {0,2} | {1,11} | {2,12} | {3,20} |", tabID[tabPom[i]], tabMarka[tabPom[i]], tabCena[tabPom[i]], tabMiejsce[tabPom[i]]);
}
Console.WriteLine("----------------------------------------------------------");
}
break;
case 4:
Console.Clear();
Console.WriteLine("----------------------------------------------------------");
Console.WriteLine("| Podaj miejsce samochodu |");
Console.WriteLine("----------------------------------------------------------");
Console.WriteLine();
while (!int.TryParse(Console.ReadLine(), out miejsce) || miejsce <= 0)
Console.WriteLine("Podano złą wartość - podaj powtórnie: ");
Console.WriteLine();
j = 0;
for (int i = 0; i < n; i++)
{
if (miejsce == tabMiejsce[i])
{
tabPom[j] = i;
j++;
}
}
if (j == 0)
{
Console.WriteLine("Nie znaleziono samochodu o podanym miejscu ");
}
else if (j > 1)
{
Console.WriteLine("Wprowadzono źle dane - miejsca parkingowe powatarzają się ");
}
else
{
Console.WriteLine("----------------------------------------------------------");
Console.WriteLine("| ID | Marka | Cena | Miejsce Parkingowe |");
Console.WriteLine("----------------------------------------------------------");
for (int i = 0; i < j; i++)
{
Console.WriteLine("| {0,2} | {1,11} | {2,12} | {3,20} |", tabID[tabPom[i]], tabMarka[tabPom[i]], tabCena[tabPom[i]], tabMiejsce[tabPom[i]]);
}
Console.WriteLine("----------------------------------------------------------");
}
break;
case 5:
Console.Clear();
Console.WriteLine("----------------------------------------------------------");
Console.WriteLine("| Podaj ID samochodu |");
Console.WriteLine("----------------------------------------------------------");
Console.WriteLine();
while (!int.TryParse(Console.ReadLine(), out ID) || ID <= 0)
Console.WriteLine("Podano złą wartość - podaj powtórnie: ");
Console.WriteLine();
j = 0;
for (int i = 0; i < n; i++)
{
if (ID == tabID[i])
{
tabPom[j] = i;
j++;
}
}
if (j == 0)
{
Console.WriteLine("Nie znaleziono samochodu o podanym ID ");
}
else if (j > 1)
{
Console.WriteLine("Wprowadzono źle dane - ID się powtarza ");
}
else
{
Console.WriteLine("----------------------------------------------------------");
Console.WriteLine("| ID | Marka | Cena | Miejsce Parkingowe |");
Console.WriteLine("----------------------------------------------------------");
for (int i = 0; i < j; i++)
{
Console.WriteLine("| {0,2} | {1,11} | {2,12} | {3,20} |", tabID[tabPom[i]], tabMarka[tabPom[i]], tabCena[tabPom[i]], tabMiejsce[tabPom[i]]);
}
Console.WriteLine("----------------------------------------------------------");
}
break;
case 6:
Console.Clear();
break;
}
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine();
Console.WriteLine("----------------------------------------------------------");
Console.WriteLine("| Chcesz wyjść z programu ? [t] |");
Console.WriteLine("----------------------------------------------------------");
koniec = Convert.ToString(Console.ReadLine());
} while (koniec!= "t");
}
}
}