Mam problem w pracy. Muszę porównać dwie liczby, które są ciągami znaków z dwóch różnych baz danych. Liczby mogą zawierać początkowe zera i / lub początkowe / końcowe spacje. Więc mogę mieć "0001 "
z jednej bazy danych iz " 1 "
drugiej.
Rozwiązałem problem w języku C # za pomocą następującego kodu:
Func<string, string, bool> f = (a,b) => int.Parse(a.Trim()) == int.Parse(b.Trim())
Wyzwanie
To naprawdę proste wyzwanie, odpowiednie dla początkujących i każdego rodzaju ezoterycznych języków. Biorąc pod uwagę dwie liczby jako ciągi znaków, które mogą zawierać początkowe zera i / lub wiodące / końcowe spacje, napisz najkrótszy kod, który sprawdza, czy dwa ciągi reprezentują tę samą liczbę.
- Dane wejściowe muszą być dwoma łańcuchami lub odpowiednikiem w twoim języku (tablica znaków jest OK) i zawsze będą reprezentować wartości całkowite większe od zera.
- Dane wyjściowe muszą być dowolnymi dwiema spójnymi wartościami, które reprezentują prawdziwą wartość i wartość falsey.
Przykłady
A B Result
----------------------------
"0001" "1 " true
"1450" "1450 " true
"0010001 " " 10001 " true
"0010000" " 10 " false
"101023" "101024" false
To jest golf golfowy , więc wygrywa najkrótszy kod dla każdego języka!