Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Osoba.cs
- using System;
- namespace zadanie2
- {
- class Osoba
- {
- public string Imie { get; private set; }
- public string Nazwisko { get; private set; }
- public int RokUrodzenia { get; private set; }
- public Osoba(string imie, string nazwisko, int rokUrodzenia)
- {
- Imie = imie;
- Nazwisko = nazwisko;
- RokUrodzenia = rokUrodzenia;
- }
- public override string ToString()
- {
- return $"{Imie} {Nazwisko} - {RokUrodzenia}";
- }
- }
- }
- # Tablica.cs
- using System;
- namespace zadanie2
- {
- class Tablica<T>
- {
- T[] tab;
- public Tablica(int rozmiar)
- {
- tab = new T[rozmiar];
- }
- public void Wpisz(int idx, T obj)
- {
- if (tab.Length < idx + 1)
- {
- Array.Resize<T>(ref tab, idx + 1);
- }
- tab[idx] = obj;
- }
- public T Pobierz(int idx)
- {
- if (idx >= 0 && idx < tab.Length)
- {
- return tab[idx];
- }
- else
- {
- throw new Exception("Indeks poza rozmiarem tablicy");
- }
- }
- public void Wypisz(Func<T, string> Fmt)
- {
- foreach (T obj in tab)
- {
- if (obj is T)
- {
- Console.WriteLine(Fmt(obj));
- }
- }
- }
- }
- }
- # Program.cs
- using System;
- namespace zadanie2
- {
- class Program
- {
- static string Format(Osoba o)
- {
- return $"{o.Imie,-8} {o.Nazwisko,-8} Rok urodzenia: {o.RokUrodzenia}";
- }
- static void Main(string[] args)
- {
- Tablica<string> tString = new Tablica<string>(2);
- tString.Wpisz(0, "test1");
- tString.Wpisz(4, "test2");
- tString.Wpisz(2, "test3");
- tString.Wpisz(1, "test4");
- tString.Wypisz(obj => $"Wpis: {obj}");
- Console.WriteLine();
- Tablica<Osoba> tOsoba = new Tablica<Osoba>(1);
- tOsoba.Wpisz(0, new Osoba("Jan", "Nowak", 2000));
- tOsoba.Wpisz(2, new Osoba("Janina", "Nowak", 2001));
- tOsoba.Wypisz(Format);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement