// Playground - noun: a place where people can play

import UIKit

var speed = 300000000
switch speed {
    case 300000000:
        print("Prędkość światła")
    case 340:
        print("Prędkość dźwięku")
    default:
        print("Prędkość nie wiadomo czego")
}


var char : Character = "e"
switch char {
    case "a", "e", "i", "o", "u":
            print("Litera to samogłoska")
    case "b", "c", "d", "f", "g", "h", "j", "k", "l", "m","n", "p", "q", "r", "s", "t", "v", "w", "x", "y", "z":
            print("Litera to spółgłoska")
    default:
            print("Nieznana litera")
}


var grade = 93
switch grade {
    case 90...100:
        print("Twoja ocena to 5")
    case 80...89:
        print("Twoja ocena to 4")
    case 70...79:
        print("Twoja ocena to 3")
    case 60...69:
        print("Twoja ocena to 2")
    case 0...59:
        print("Twoja ocena to 1")
    default:
        print("Nieznana ocena")
}


var studentId = 4
var grade2 = 57
switch grade2 {
    case 90...100:
        print("Twoja ocena to 5")
    case 80...89:
        print("Twoja ocena to 4")
    case 70...79:
        print("Twoja ocena to 3")
    case 55...69 where studentId == 4:
        print("Twoja ocena to 2 dla ucznika o identyfikatorze 4")
    case 60...69:
        print("Twoja ocena to 2")
    case 0...59:
        print("Twoja ocena to 1")
    default:
       print("Nieznana ocena")
}



studentId = 4
var grade3 = 57
switch grade3 {
    case 90...100:
        print("Twoja ocena to 5")
    case 80...89:
        print("Twoja ocena to 4")
    case 70...79:
        print("Twoja ocena to 3")
    case 60...69:
        print("Twoja ocena to 2")
    case 0...59:
        print("Twoja ocena to 1")
        // Poniższy blok case nigdy nie zostanie wykonany, ponieważ wartość zmiennej grade
        // zawsze zostanie dopasowana do jednego z dwóch poprzednich bloków case.
    case 55...69 where studentId == 4:
        print("Ocena to 2 dla ucznia o identyfikatorze 4")
    default:
        print("Nieznana ocena")
}


enum Product {
    case Book(String, Double, Int)
    case Puzzle(String, Double)
}

var order = Product.Book("Mastering Swift 4", 49.99, 2015)

switch order {
case .Book(let name, let price, let year):
    print("Zamówiłeś książkę \(name) z \(year) roku w cenie \(price) zł.")
case .Puzzle(let name, let price):
    print("Zamówiłeś Puzzle \(name) w cenie \(price) zł.")
}
