ИС 1904 Мұса Аида
11-зертханалық жұмыс
Тапсырма: Тапсырма: 10-дәріс материалдарын қайта қарастырып, төменде берілген тапсырмаларды нұсқаңызға сәйкес орындаңыз.
Берілгені:
6-нұсқа
IComparable стандартты интерфейсін жүзеге асыратын Кітап класын (кітап аты, авторы, бағасы, бет саны, шығарылған жылы) және IEnumerable интерфейсін жүзеге асыратын, Кітап класын өріс ретінде пайдаланатын Кітап_дүкені класын (дүкен аты, мекен-жайы, кітаптар) құрыңыз. Кітап дүкеніндегі кітаптар тізімін құрып, сұрыпталған түрде экранға шығарыңыз.
Коды:
using System;
using System.Collections;
class Kitap : IComparable
{
public string Ati { get; set; }
public string Avtori { get; set; }
public double Bagasi { get; set; }
public int BetSani { get; set; }
public int Jili { get; set; }
public Kitap(string ati, string avtori, double bagasi, int betSani, int jili)
{
Ati = ati;
Avtori = avtori;
Bagasi = bagasi;
BetSani = betSani;
Jili = jili;
}
public int CompareTo(object o)
{
Kitap k = o as Kitap;
return this.Jili.CompareTo(k.Jili); //кітаптарды жылы бойынша салыстырамын
}
public override string ToString()
{
return $"Kitap ati: {Ati}, avtori: {Avtori}, bagasi: {Bagasi}, bet sani: {BetSani}, shigarilgan jili: \t {Jili}";
}
}
class Kitap_dukeni : IEnumerable
{
public string DukenAti { get; set; }
public string Mekenjay { get; set; }
public Kitap[] Kitaptar { get; set; }
public Kitap_dukeni(string dukenAti, string mekenjay, Kitap[] kitaptar)
{
DukenAti = dukenAti;
Mekenjay = mekenjay;
Kitaptar = kitaptar;
}
public IEnumerator GetEnumerator()
{
return Kitaptar.GetEnumerator();
}
public override string ToString()
{
return $"Duken ati: {DukenAti}, mekenjay: {Mekenjay}";
}
}
class Program
{
static void Main()
{
Kitap[] kitaptar = new Kitap[7];
kitaptar[0] = new Kitap("Властелин колец", "Джон Р. Р. Толкин", 5000, 3000, 1954);
kitaptar[1] = new Kitap("Гордость и предубеждение", "Джейн Остин", 4500, 500, 1813);
kitaptar[2] = new Kitap("Тёмные начала", "Джон", 4000, 600, 1995);
kitaptar[3] = new Kitap("Автостопом по Галактике", "Джон", 3500, 450, 1979);
kitaptar[4] = new Kitap("Гарри Поттер и Кубок огня", "Джон", 3000, 550, 2000);
kitaptar[5] = new Kitap("Убить пересмешника", "Джон", 2500, 700, 1960);
kitaptar[6] = new Kitap("Винни-Пух", "Джон", 2000, 350, 1926);
Kitap_dukeni k = new Kitap_dukeni("Муса Аида", "Алматы", kitaptar);
Console.WriteLine(k);
Array.Sort(k.Kitaptar);
foreach(Kitap kitap in k.Kitaptar)
{
Console.WriteLine(kitap);
}
Console.ReadLine();
}
}
Жауабы:
Берілгені бойынша, IComparable стандартты интерфейсін жүзеге асыратын Кітап класын (кітап аты, авторы, бағасы, бет саны, шығарылған жылы) және IEnumerable интерфейсін жүзеге асыратын, Кітап класын өріс ретінде пайдаланатын Кітап_дүкені класын (дүкен аты, мекен-жайы, кітаптар) құрылды.
Достарыңызбен бөлісу: |