Kurzusok
/
JavaScript
JavaScript
/
Feladatok
/
Kapitányi napló
Kapitányi napló

Kapitányi napló

Tanulófeladat

Bevezetés

Sok programnak (pszeudo)véletlen értékekre van szüksége ahhoz, hogy valós eseményeket szimuláljon.

Gyakori, ismerős példák:

  • Érmedobás: egy véletlen érték a ('H', 'T') halmazból.
  • Kockadobás: egy véletlen egész szám 1 és 6 között.
  • Kártyapakli megkeverése: egy kártyalista véletlen sorrendje.
  • Fák és bokrok létrehozása egy 3D-s grafikai szimulációban.

Valóban véletlen értékek generálása számítógéppel meglepően nehéz technikai kihívás, ezért léteznek „pszeudovéletlen” generátorok is.

Caution

A Math.random() függvényt NEM szabad biztonsági és kriptográfiai alkalmazásokhoz használni! Fejezd be a fogalomhoz tartozó tanulófeladat(oka)t, hogy többet megtudj

Véletlen számok generálása

JavaScriptben pszeudovéletlen számokat generálhatsz a Math.random() függvénnyel. Ez egy 0 (beleértve) és 1 (nem beleértve) közötti pszeudovéletlen lebegőpontos számot ad vissza.

Utasítások

Mary nagy rajongója a Star Trek: Az új nemzedék című tévésorozatnak. Gyakran játszik asztali szerepjátékokat, amelyekben a barátaival együtt úgy tesznek, mintha a Starship Enterprise legénysége lennének. Mary karaktere Picard kapitány, ezért neki kell vezetnie a kapitányi naplót. Imádja a játék kreatív részét, de nem szeret helyben véletlenszerű adatokat generálni.

Segíts Marynek véletlenszerű generátorokat készíteni azokhoz az adatokhoz, amelyek gyakran előfordulnak a kapitányi naplóban.

1. Generálj egy véletlenszerű csillaghajó-lajstromszámot

Az Enterprise (lajstromszáma NCC-1701) nem az egyetlen csillaghajó az űrben! Amikor egy másik csillaghajóval találkozik, Marynek fel kell jegyeznie annak a csillaghajónak a lajstromszámát.

A lajstromszámok kezdete az „NCC-” előtag, ezt követi egy 1000 és 9999 közötti szám (mindkét végpontot beleértve).

Valósítsd meg a randomShipRegistryNumber() függvényt, amely véletlenszerű csillaghajó-lajstromszámot ad vissza.

randomShipRegistryNumber();
// => "NCC-1947"

2. Generálj egy véletlenszerű csillagidőt

Mi értelme a naplónak, ha nincsenek benne dátumok?

A csillagidő egy lebegőpontos szám. A Starship Enterprise kalandjai a Star Trek: Az új nemzedék első évadában a 41000.0 és a 42000.0 közötti csillagidőben játszódnak. A „4” a 24. századra utal, a „1” pedig az első évadra.

Valósítsd meg a randomStardate függvényt, amely egy 41000.0 (beleértve) és 42000.0 (kizárva) közötti lebegőpontos számot ad vissza.

randomStardate();
// => 41458.15721310934

3. Generálj egy véletlenszerű bolygót

A Starship Enterprise utazásai során sok bolygóval találkozik. A Star Trek világegyetemének bolygóit a tulajdonságaik alapján kategóriákba sorolják. Például a Föld egy M osztályú bolygó. Az összes lehetséges bolygóosztály: D, H, J, K, L, M, N, R, T és Y.

Valósítsd meg a randomPlanetClass() függvényt. A függvény véletlenszerűen adja vissza az egyik bolygóosztályt.

randomPlanetClass();
// => "K"
Szerkesztés GitHubon A hivatkozás új ablakban vagy lapon nyílik meg
JavaScript Exercism

Készen állsz elkezdeni a(z) Kapitányi napló feladatot?

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