Advertisement
mikolajmki

swift_lab11

Dec 19th, 2022
919
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Swift 2.92 KB | None | 0 0
  1. import Foundation
  2.  
  3. func roznicaWieku(o1: Osoba, o2: Osoba) {
  4.     let wiek1: Int = o1.obliczWiek(aktualnyRok: 2022)
  5.     let wiek2: Int = o2.obliczWiek(aktualnyRok: 2022)
  6.     if (wiek1 == wiek2) {
  7.         print("Maja tyle samo lat.");
  8.         print(o1.toString());
  9.         print(o2.toString());
  10.     } else {
  11.         print("Starsza: ");
  12.         wiek1 < wiek2 ? print(o2.toString()) : print(o1.toString());
  13.         print("Mlodsza: ")
  14.         wiek1 < wiek2 ? print(o1.toString()) : print(o2.toString());
  15.     }
  16. }
  17.  
  18. func pracownik() {
  19.     let p1 = Pracownik(imie: "Mikolaj", nazwisko: "Marcinkowski", rokUrodzenia: 2001, rokZatrudnienia: 2018, stanowisko: Stanowisko.jedno, stawka: 25, liczbaGodzin: 160, nazwaFirmy: "JuniorDev");
  20.     print(p1.obliczWiek(aktualnyRok: 2022));
  21.     print(p1.lataPracy(aktualnyRok: 2022));
  22.     print(p1.wielkoscPensji());
  23.     print(p1.toString());
  24. }
  25.  
  26. //roznicaWieku(o1: (Osoba(imie: "Mikolaj", nazwisko: "Marcinkowski", rokUrodzenia: 2001)), o2: Osoba(imie: "Maksymilian", nazwisko: "Marcinkowski", rokUrodzenia: 2004));
  27. pracownik();
  28.  
  29.  
  30. //
  31. //  Pracownik.swift
  32. //  lab10
  33. //
  34. //  Created by student on 19/12/2022.
  35. //
  36.  
  37. enum Stanowisko: CaseIterable {
  38.     case jedno, drugie, trzecie, czwarte;
  39. }
  40.  
  41. import Foundation
  42.  
  43. class Pracownik: Osoba {
  44.     private var rokZatrudnienia: Int;
  45.     private var stanowisko: Stanowisko;
  46.     private var stawka: Float;
  47.     private var liczbaGodzin: Float;
  48.     private var nazwaFirmy: String;
  49.    
  50.     init(imie: String, nazwisko: String, rokUrodzenia: Int, rokZatrudnienia: Int, stanowisko: Stanowisko, stawka: Float, liczbaGodzin: Float, nazwaFirmy: String) {
  51.         self.rokZatrudnienia = rokZatrudnienia
  52.         self.stanowisko = stanowisko
  53.         self.stawka = stawka
  54.         self.liczbaGodzin = liczbaGodzin
  55.         self.nazwaFirmy = nazwaFirmy
  56.         super.init(imie: imie, nazwisko: nazwisko, rokUrodzenia: rokUrodzenia)
  57.     }
  58.    
  59.     public func lataPracy(aktualnyRok: Int) -> Int {
  60.         return aktualnyRok - self.rokZatrudnienia;
  61.     }
  62.    
  63.     public func wielkoscPensji() -> Float {
  64.         return liczbaGodzin * stawka;
  65.     }
  66.    
  67.     override public func toString() -> String {
  68.        
  69.         return "\(super.toString()) \(rokZatrudnienia) \(stanowisko) \(stawka) \(liczbaGodzin) \(nazwaFirmy)";
  70.        
  71.     }
  72. }
  73.  
  74.  
  75. //
  76. //  Osoba.swift
  77. //  lab10
  78. //
  79. //  Created by student on 19/12/2022.
  80. //
  81.  
  82. import Foundation
  83.  
  84. class Osoba {
  85.     private var imie: String;
  86.     private var nazwisko: String;
  87.     private var rokUrodzenia: Int;
  88.    
  89.     init(imie: String, nazwisko: String, rokUrodzenia: Int) {
  90.         self.imie = imie;
  91.         self.nazwisko = nazwisko;
  92.         self.rokUrodzenia = rokUrodzenia;
  93.     }
  94.    
  95.     public func obliczWiek(aktualnyRok: Int) -> Int {
  96.         return aktualnyRok - self.rokUrodzenia;
  97.     }
  98.    
  99.     public func toString() -> String {
  100.         return "\(self.imie) \(self.nazwisko) \(rokUrodzenia)";
  101.     }
  102. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement