Untitled - MARKUP 5.93 KB
                                
                                    losowanie liczby

import Foundation

// Funkcja do generowania losowej liczby w podanym zakresie
func losujLiczbyIObliczSrednia() {
    var liczby: [Int] = []
    let zakres = 1...10

    // Wylosowanie 10 liczb z zakresu
    for _ in 1...10 {
        let liczba = Int.random(in: zakres)
        liczby.append(liczba)
    }

    // Obliczanie średniej
    let suma = liczby.reduce(0, +) // Suma liczb
    let srednia = Double(suma) / Double(liczby.count) // Średnia

    print("Wylosowane liczby: \(liczby)")
    print("Średnia: \(srednia)")
}

// Wywołanie funkcji
losujLiczbyIObliczSrednia()

*********

import Foundation

// Funkcja do sprawdzania poprawności danych (czy wszystkie elementy to liczby)
func sprawdzPoprawnosc(tablica: [Any]) -> Bool {
    return tablica.allSatisfy { $0 is Int }
}

// Funkcja do sortowania tablicy
func posortuj(tablica: inout [Int]) {
    tablica.sort()
}

// Funkcja do odwracania tablicy
func odwroc(tablica: inout [Int]) {
    tablica.reverse()
}

// Funkcja do przesuwania elementów o 1 w prawo
func przesunWPrawo(tablica: inout [Int]) {
    if let ostatni = tablica.popLast() {
        tablica.insert(ostatni, at: 0)
    }
}

// Główna funkcja
func wykonajOperacje() {
    // Przykładowa tablica
    var tablica: [Any] = [3, 1, 4, 2, 5]
    
    // Sprawdzenie poprawności danych
    if sprawdzPoprawnosc(tablica: tablica) {
        var poprawnaTablica = tablica as! [Int] // Rzutowanie na [Int]
        
        print("Tablica początkowa: \(poprawnaTablica)")
        
        // Sortowanie
        posortuj(tablica: &poprawnaTablica)
        print("Po sortowaniu: \(poprawnaTablica)")
        
        // Odwracanie
        odwroc(tablica: &poprawnaTablica)
        print("Po odwróceniu: \(poprawnaTablica)")
        
        // Przesunięcie w prawo
        przesunWPrawo(tablica: &poprawnaTablica)
        print("Po przesunięciu o 1 w prawo: \(poprawnaTablica)")
    } else {
        print("Tablica zawiera niepoprawne dane.")
    }
}

// Wywołanie funkcji
wykonajOperacje()


******

import Foundation

// Funkcja do wczytywania danych od użytkownika
func wczytajLiczby() -> [Int] {
    print("Podaj liczby oddzielone spacjami:")
    
    if let input = readLine() {
        // Rozdziel tekst na liczby i przekształć na Int
        let liczby = input
            .split(separator: " ")         // Rozdzielenie po spacjach
            .compactMap { Int($0) }        // Konwersja na Int
        return liczby
    }
    return []
}

// Funkcja do sprawdzania poprawności danych (czy wszystkie elementy to liczby)
func sprawdzPoprawnosc(tablica: [Int]) -> Bool {
    return tablica.allSatisfy { $0 is Int }
}

// Funkcja do sortowania tablicy
func posortuj(tablica: inout [Int]) {
    tablica.sort()
}

// Funkcja do odwracania tablicy
func odwroc(tablica: inout [Int]) {
    tablica.reverse()
}

// Funkcja do przesuwania elementów o 1 w prawo
func przesunWPrawo(tablica: inout [Int]) {
    if let ostatni = tablica.popLast() {
        tablica.insert(ostatni, at: 0)
    }
}

// Główna funkcja
func wykonajOperacje() {
    // Wczytaj dane od użytkownika
    let tablica = wczytajLiczby()
    
    // Sprawdzenie poprawności danych
    if sprawdzPoprawnosc(tablica: tablica) {
        var poprawnaTablica = tablica // Tworzenie kopii do edycji
        
        print("Tablica początkowa: \(poprawnaTablica)")
        
        // Sortowanie
        posortuj(tablica: &poprawnaTablica)
        print("Po sortowaniu: \(poprawnaTablica)")
        
        // Odwracanie
        odwroc(tablica: &poprawnaTablica)
        print("Po odwróceniu: \(poprawnaTablica)")
        
        // Przesunięcie w prawo
        przesunWPrawo(tablica: &poprawnaTablica)
        print("Po przesunięciu o 1 w prawo: \(poprawnaTablica)")
    } else {
        print("Podane dane są nieprawidłowe.")
    }
}

// Wywołanie funkcji
wykonajOperacje()



*******
PESEL

import Foundation

func odczytajPesel(pesel: String) {
    // Sprawdzenie, czy PESEL ma 11 cyfr
    guard pesel.count == 11, let _ = Int(pesel) else {
        print("Nieprawidłowy PESEL. Upewnij się, że ma 11 cyfr.")
        return
    }
    
    // Wydobycie danych z PESEL
    let rokFragment = Int(pesel.prefix(2)) ?? 0
    let miesiacFragment = Int(pesel.dropFirst(2).prefix(2)) ?? 0
    let dzien = Int(pesel.dropFirst(4).prefix(2)) ?? 0
    let plecCyfra = Int(pesel.dropLast().suffix(1)) ?? 0
    
    // Obliczenie roku i miesiąca
    var rok = 1900 + rokFragment
    var miesiac = miesiacFragment
    
    if miesiac > 80 {
        rok = 1800 + rokFragment
        miesiac -= 80
    } else if miesiac > 60 {
        rok = 2200 + rokFragment
        miesiac -= 60
    } else if miesiac > 40 {
        rok = 2100 + rokFragment
        miesiac -= 40
    } else if miesiac > 20 {
        rok = 2000 + rokFragment
        miesiac -= 20
    }
    
    // Odczyt płci
    let plec = (plecCyfra % 2 == 0) ? "Kobieta" : "Mężczyzna"
    
    // Walidacja daty
    if miesiac >= 1 && miesiac <= 12 && dzien >= 1 && dzien <= 31 {
        print("Data urodzenia: \(String(format: "%02d", dzien))-\(String(format: "%02d", miesiac))-\(rok)")
        print("Płeć: \(plec)")
    } else {
        print("Nieprawidłowa data w numerze PESEL.")
    }
}

// Przykładowe użycie
print("Podaj numer PESEL:")
if let pesel = readLine() {
    odczytajPesel(pesel: pesel)
}
                                
                            

Paste Hosted With By Wklejamy.pl