JavaScripti programm kaardipaki segamiseks

Lang L: none (table-of-contents)

Selles näites õpid kirjutama JavaScripti programmi, mis segab kaardipaki.

Selle näite mõistmiseks peaksid teil olema teadmised järgmistest JavaScripti programmeerimise teemadest:

  • JavaScripti massiivi sort ()
  • JavaScript silmusele

Näide: segage kaartide pakki

 // program to shuffle the deck of cards // declare card elements const suits = ("Spades", "Diamonds", "Club", "Heart"); const values = ( "Ace", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Jack", "Queen", "King", ); // empty array to contain cards let deck = (); // create a deck of cards for (let i = 0; i < suits.length; i++) ( for (let x = 0; x  0; i--) ( let j = Math.floor(Math.random() * i); let temp = deck(i); deck(i) = deck(j); deck(j) = temp; ) console.log('The first five cards are:'); // display 5 results for (let i = 0; i < 5; i++) ( console.log(`$(deck(i).Value) of $(deck(i).Suit)`) ) 

Väljund

 Esimesed viis kaarti on: 4 klubi Diamonds 5 klubist Jack Jack of Diamonds 2 klubist Spades 4

Ülaltoodud programmis sisaldavad ülikondade ja väärtuste muutujad kaardi elemente.

Pesastatud forsilmust kasutatakse kaardipaki loomiseks.

  • Peame looma kaardipaki, mis sisaldab kõiki ülikondi koos kõigi väärtustega. Nii et esimene forsilmus kordab kõiki ülikondi ja teine forsilmus kordab väärtusi. Seejärel luuakse elemendid ja lisatakse deckmassiivi.
  • Massiivielemendid salvestatakse objektidena järgmiselt:
     ((Value: "Ace", Suit: "Spades"),(Value: "2", Suit: "Spades")… )

Teist forsilmust kasutatakse kaardipaki segamiseks.

  • Math.random() genereerib juhusliku arvu.
  • Math.floor() tagastab arvu, vähendades väärtust lähima täisarvuni.
  • Juhuslike arvude genereeritakse vahel 0 ja 51 ning kaks kaardi ametid vahetatakse.

Kolmandat forsilmust kasutatakse esimese paki viie esimese kaardi kuvamiseks.

Huvitavad Artiklid...