Kurzusok
/
F#
F#
/
Feladatok
/
Foglalás a szépségszalonba
Foglalás a szépségszalonba

Foglalás a szépségszalonba

Tanulófeladat

Bevezetés

Dátumok és időpontok

Az F#-ban a DateTime egy megváltoztathatatlan objektum, amely egyszerre tartalmazza a dátum és az idő adatait. A DateTime példányokat a metódusaik meghívásával kezeljük. Miután létrehoztunk egy DateTime-ot, az értéke soha nem változhat meg. Minden metódus vagy függvény, amely úgy tűnik, hogy módosítja a DateTime-ot, valójában egy új DateTime-ot ad vissza.

A dátumok és időpontok szöveges megjelenítése a kultúrától függ. Vegyünk egy DateTime-ot, amelynek dátuma 2019. március 28., az időpontja pedig 14:30:59. Ha ezt a DateTime-ot az en-US kultúrával (amerikai angol) alakítjuk string-gé, akkor "3/28/19 2:30:59 PM" lesz az eredmény. A fr-BE kultúrával (belga francia) ugyanez a kód más értéket ad vissza: "28/03/19 14:30:59".

Fontos megérteni, hogy mely DateTime metódusok függenek a kultúrától. Általánosságban minden olyan DateTime metódus, amely string-ekkel foglalkozik (akár bemenetként, akár kimenetként), az aktuális kultúrától függ.

Utasítások

Ebben a feladatban egy New York-i szépségszalon időpont-ütemezőjén fogsz dolgozni, amely 2012. szeptember 15-én nyílt meg.

Négy részfeladatod lesz, és mindegyik időpontok dátumával foglalkozik. A dátumok és az időpontok az alábbi három formátum egyikét használják:

  • "7/25/2019 13:45:00"
  • "July 25, 2019 13:45:00"
  • "Thursday, July 25, 2019 13:45:00:00"
Caution

A tesztek automatikusan beállítják a culture értékét en-US-ra. Neked magadnak nem kell beállítanod vagy megadnod a culture-t.

1. Az időpont dátumának beolvasása

Valósítsd meg a schedule függvényt, amely egy időpont dátumának szöveges ábrázolását a megfelelő DateTime formátumba olvassa be:

schedule "7/25/2019 13:45:00"
// => DateTime(2019, 7, 25, 13, 45, 0)

2. Ellenőrizd, hogy az időpont már elmúlt-e

Valósítsd meg a hasPassed függvényt, amely egy időpont dátumát kapja, és ellenőrzi, hogy az időpont valamikor a múltban volt-e:

hasPassed (DateTime(1999, 12, 31, 9, 0, 0))
// => true

3. Ellenőrizd, hogy az időpont délutánra esik-e

Valósítsd meg az isAfternoonAppointment függvényt, amely egy időpont dátumát kapja, és ellenőrzi, hogy az időpont délutánra esik-e (>= 12:00 és < 18:00):

isAfternoonAppointment (DateTime(2019, 03, 29, 15, 0, 0))
// => true

4. Írd le az időpont idejét és dátumát

Valósítsd meg a description függvényt, amely egy időpont dátumát kapja, és visszaadja az adott dátum és időpont leírását:

description (DateTime(2019, 03, 29, 15, 0, 0))
// => "You have an appointment on 3/29/2019 3:00:00 PM."

5. Add vissza az évforduló dátumát

Valósítsd meg az anniversaryDate függvényt, amely az idei évforduló dátumát adja vissza, ami szeptember 15-e:

anniversaryDate()
// => DateTime(2019, 9, 15, 0, 0, 0)
Szerkesztés GitHubon A hivatkozás új ablakban vagy lapon nyílik meg
F# Exercism

Készen állsz elkezdeni a(z) Foglalás a szépségszalonba feladatot?

Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) F# nyelvet 18 fogalom148 feladat segítségével, valódi emberi mentorálással, mindez ingyen.