Assignment 4 Playing with Cards, Part 3 Changing the Game

cs3500.klondike.model.hw04
Assignment 4: Playing with Cards, Part 3: Changing the Game
Examplar our
actual implementation
self-evaluation one day plus one hour later
Starter files: code.zip
emit no noitaulave-fles ruoy timbus ot elba llits era uoy dna ,yad etal eno ot pu esu yam yltnednepedni
.etal noitatnemelpmi ruoy timbus uoy fi neve
snoissimbus eerht eseht fo hcae :seilppa krowemoh suoiverp eht no sa ycilop yad-etal emas ehT
.seciohc gnitset dna noitatnemelpmi ruoy no tceer ot uoy
ksa lliw ew erehw ,noitatnemelpmi lautca eht naht eud , A
etiustsetllufdna ruoY
.noisufnoc
fostnioprosgubelbissopelpmislarevesdndnarellortnocehtfosnoitatnemelpmieborpot
dengisedselpmaxefotesllamsatimbuslliwuoyerehw,keewehtniylrae,noissimbus nA
:tnemngissasihtrofsnoissimbuseerhteblliwerehT
.segakcap evitcepser rieht ni niamer dluohs ,nopu
devorpmi fi neve ,stnemngissa suoiverp ni nettirw sessalc llA .egakcap
eht ni eb dluohs krowemoh siht rof secafretni dna sessalc lla ,)niam( noitpecxe eno htiW
.edocfonoitacilpuddnaegnahclaminimhtiwemagsihtfosnoitairavgnidda
elbaneotmehtesiverroegarevelrehtiedna,seciohcngisedreilraeruoyenimaxeyllacitircotecnahc
a uoy evig ot si tnemngissa siht fo laog ehT .ekidnolK fo smrof rehto gnitroppus yb ffo yap steneb esoht
eeslliwewtnemngissasihtnI.yltnednepednimehtgnignahcdnangisedruofostraptnavelergnitalosi
yb ,serutaef wen dda ot deen ew nehw enihs erutcetihcra rellortnoc-weiv-ledom eht fo steneb ehT
a tseuqer ot deen ylno uoY .eno uoy ngissa ylmodnar lliw ew ,neht yb etammaet a detseuqer ton evah
.stnemngissa gniniamer eht ot smaet eht ypoc lliw ew ;5 tnemngissA rof rentrap
uoy fi — si hcihw ,5 krowemoh fo trats eht naht retal on smaet tseuqer esaelP .snoitcurtsni
maet a fo trap era uoy litnu stnemngissa tneuqesbus timbus ot elba eb ton lliw uoy dna ,revres nidnah
eseht wollof ,smaet tseuqer ot woh )rebmemer ro( wonk ton od uoy fI .revres nidnah eht no
eht no rentrap ruoy htiw pu ngis lliw uoY .htiw rentrap ot ekil d’uoy ohw tuoba gnikniht tratS .meht
rof rentrap a htiw gnikrow eb lliw uoy dna ,tcejorp wen a nigeb lliw 8 hguorht 5 skrowemoH :etoN
mp9511 ta 91 tcO ,yadsruhT :noitaulave-fleS
mp958 ta 81 tcO ,yadsendeW :noitatnemelpmI
mp958 ta 31 tcO ,yadirF :snoissimbus ralpmaxE
:setad euD

cs3500.klondike.model.hw04
cs3500.klondike.model.hw02
2 Klondike with more challenging rules
Draw: A B C
Draw: B C A
Draw: C A B
Draw: A B C
3 Klondike with other board rules
Whitehead Klondike alternating single-colored
limited draw
cs3500.klondike.view cs3500.klondike.controller
.cte,emasehtyatsselurgnirocs,dractsehgihehtotputnuocdna,tiuselgnisaniyats,ecAtatratshcae
selipnoitadnuof,yletinednidelcycererasdracward:degnahcnusyatsemagehttuobaeslegnihtyrevE
tratsnactitub,evobasa,nurtius-elgnisaebtsumti,elipedacsacnaotnisdracelpitlumgnivom
).eulav yna morf
nehW(.gnikatsujton,eulavdracynaebnacti,elipedacsacytpmenaotnidracagnivomnehW
.dliub dilav a ylerem ton ,
ebtsumsdracdevomehtlla,rehtonaotelipedacsacenomorfsdracelpitlumgnivomnehW
.sdrackcalb
nosdrackcalb,sdracdernosdracder–ebtsumsdliub,srolocfodaetsnI
.pu-ecaf tlaed era selip edacsac eht ni sdrac eht fo llA
:degnahc era selur ruof ,emag siht nI . dellac si emag eht fo tnairav rehtonA
.dedracsidyltnenamrepsitihcihw
retfa,)elpmaxesihtnidetcurtsnocsa(eciwtyltcaxedracwardtsomtfelehtebotecnahcasahdrachcaE
.C sdracsid reyalP
.A sdracsid reyalP
.B sdracsid reyalP
.C sdracsid reyalP
.B sdracsid reyalP
.A sdracsid reyalP
noitca reyalP
etats warD
:gniwollofehtecudorplliwsdracwardgnidracsidyldetaepernehT.3foeziselipwarda
detcurtsnoc si emag eht dna ,C dna B ,A sdrac sniatnoc elip ward eht esoppus ,elpmaxe roF .)detcurtsnoc
htiwdetratssiemagehtesoppusdna,)ecnoylnodrachcaegniwarderwolla.e.i(swardowtylnowollaot
siemagehtnehwdeiceps(semitforebmunetinaylnodelcycerebnacelipwardeht
ylno swolla taht emag eht fo tnairav a ngised lliw uoy ,tnemngissa siht ni eroferehT .reisae
yllaitnatsbus emag eht sekam dedeen sa netfo sa delcycer eb ot elip ward eht ni sdrac rof ytiliba sihT
dnuorasemocdracehtdnadelcycerstegelipehtlitnu,yliraropmetelipwardehtmorfdedracsidebnac
dna ,selip noitadnuof ot ro selip edacsac ot elip ward eht morf ,snoitadnuof ot selip morf ,selip edacsac
neewteb devom eb nac sdraC .drawrofthgiarts ylriaf era ,raf os detneserp sa ,ekidnolK fo selur ehT
.segakcap dna ,
eht ni niamer dluohs tnemngissa suoiverp eht morf edoc ruoy ,yllanoitiddA .egakcap
eht ni si edoc wen ruoy fo lla erusne esaelp ,revewoH .tnemngissa
siht rof tniop gnitrats eht sa tnemngissa suoiverp eht morf edoc ruoy esu ot detcepxe era uoY
程序代写 CS代考 加QQ: 749389476
cs3500.klondike.ExamplarExtendedModelTests
BasicKlondike
KlondikeModel
KlondikeCreator
ruoy tset ot deen ton od uoY .ledom lanigiro eht dluoc ti sa llew sa meht lortnoc nac
rellortnocehttahtdna,ylreporpkrowsledomwenehterusekam:ylhguorohtgnihtyrevetseT
).el txet-nialp a eb tsum sihT( .el EMDAER a ni
segnahc esoht tnemucod ,stnemngissa roirp morf ngised ruoy fo trap yna egnahc ot dah uoy fI
).wolebdebircsedsisihT(.margorpruoygninnurnehw,enil
dnammoc eht morf stnairav emag tnereffid esoohc ot uoy wolla ot dohtem a tnemelpmI
.woleb debircsed sa , deman ,ssalc a ngiseD
wen eseht rof esuer edoc retteb elbane dna elbixe erom ti ekam ot ,hguoht ,edoc reilrae ruoy
rotcaferotdeenyamuoY.detceffaebrokaerbdluohserofebmorfedocruoyfoenon,yltcerroc
enodfI.ylreporpkrowyllufeerhtllatahterusgnikamelihw,sledomeerhtehtgnomaelbissop
sanoitacilpud-edochcumsadiovaotevirts,noitatnemelpmiruoynI.gnitsixe
ehthtiwseitilanommocemoserahsylraelcdna, tnemelpmiylraelcdluohssessalc
htoB.ekidnolKfostnairavdaehetihWdnawarD-detimiLehtgnitnemelpmisessalcngiseD
KlondikeModel
KlondikeController
BasicKlondike
4 Examplar
5 Assignment Requirements and Design Constraints
.tsixe-oc tsum emag eht fo snoitairav lla tneserper taht sledom ,si tahT
.erofeb morf gnitanimile tuohtiw ,snoitatnemelpmi ledom etarapes etaerc tsum uoY
.srotcurtsnoc detcepxe yna fo noitpecxe
eht htiw ,sessalc ruoy ni sdohtem cilbup lanoitidda yna dda ot dewolla ton era uoy ,erofeb sA
.erofeb morf lla ta ) ( ecafretni rellortnoc eht egnahc ot dewolla ton era uoY
.erofeb morf lla ta ) ( ledom eht fo ecafretni eht egnahc ot dewolla ton era uoY
:stniartsnoc gniwollof eht gnitcepser elihw stnemeriuqer eseht etelpmoc tsum uoY
ruoysucofdluohsuoydna, seodsa,sffahcehtfollaniylreporpkrowsdohtemnoitavresbo
.sdohtem rotatum eht no noitnetta
eht llA .tcejorp eht fo 1 trap no sa tnemngissa siht no uoy rof seetnaraug emas eht evig eW :tniH
tset elgnis a nihtiw stnairav hsiugnitsid ot deen ton od uoy ;sffahc morf staehw ekidnolK daehetihW
gnihsiugnitsidtademiasdohtemtsetdna,sffahcmorfstaehwekidnolKwarD-detimiLgnihsiugnitsid
ta demia sdohtem tset edulcni ot deen lliw ssalc tahT .
ssalcehtniselpmaxeruoypolevedlliwuoY.stnemeriuqertcejorpehtfognidnatsrednuruoypoleved
ot uoy rof keew eht ni ylrae noissimbus ralpmaxE na eb lliw ereht ,tcejorp siht fo strap suoiverp htiw sA

public enum GameType
KlondikeModel
create(GameType type)
7 TheKlondikeCreatorclass
8 Themain()method package cs3500.klondike;
public final class Klondike {
public static void main(String[] args) {
// FILL IN HERE
:yllacicepS
ehtweiveR.)evoba tnemugraehthguorhtmargorpruoynielbaliava(stnemugraenil-dnammoc
.margorp avaJ a ni stnemugra enil-dnammoc rof noitatnemucod
sastupniekatotsdeenmargorpruoY.margorpruoyroftniopyrtneehteblliwdohtem sihT
:tcejorpruoyotssalcgniwollofehtddA
.)dedracsidyltnenamrepgnieberofebsemiteerhtnwardebnacdrachcae.e.i(2ebdluohsstpmetta
warderforebmunehtneht,emagwarder asitifI.retemarapehtfoeulavehtnognidneped
, )fossalcbusetairporppana(foecnatsninasnrutertaht
dohtemyrotcafareffodluohstI.dna,:seulavelbissop
eerht htiw a ened dluohs ssalc ehT .eman evoba eht htiw ssalc a ngiseD
!stnuoctahttluserdneehts’tI.edocehtllagnitnemelpmiretfanoitcartsbatuobagniknihthtiwgnorw
gnihton si ereht ,noitcartsba etapicitna ot doog si ti elihW !esoprup ciceps a evah dluohs sdohtem
replehetavirpnevE.gninaemesolsdohtememostahthcumostcartsba-revotontub,noititeper
edoceziminimuoyerusekaM.dnaherofebsnoitcartsbaelbissopllarevocsidotdetpmetebyamuoY
gniwonk tuohtiw ,noitatnemelpmi ledom yna htiw krow ot elba eb ot sdeen weiv ruoy taht llaceR
evas lliw gnidoc erofeb noitarepo yreve tuo gninnalP .emag eht fo tnairav siht rof skrow noitarepo
!emit fo tol a uoy
tahtwohtuobaknihtdna,ecafretniledomehtfonoitarepohcaehguorhtog,tnairavhcaeroF
uoy sa sgniht tuo erug ot yrt dna ylerutamerp edoc eht otni pmuj uoy fi tlucfid erom yltnacingis
eb ot dengised si tnemngissa siht tuB .edoc uoy erofeb liated ni sgniht tuo nalp syawla dluohs uoY
.deitsujdnadetnemucodylreporpeb tub,KO
sisihT.sgubevomerotsnoitatnemelpmireilraeegnahcotevahoslayamuoY.sihtodotsngisedreilrae
ruoyrotcafer uoY.edocfonoitacilpereziminimuoyerusekaM.yletairporppasessalcdnasecafretni
sesu taht ngised a osla tub ,ledom gnikrow yltcerroc a evah ot ylno ton tnatropmi si ti tnemngissa siht nI
Programming Help, Add QQ: 749389476
limited R PD
limited 3 6 2
whitehead 8
whitehead 7 8
8.1 To actually run your program with command line arguments in IntelliJ IDEA:
Run > Edit configurations
+ Application
basic limited
KlondikeCreator
String[] args
IndexOutOfBounds
.sraeppatahtnwodpordehtmorf tcelesdna,tfelreppuehtninottub ehtkcilC
.)noitpecxe nagnisuacdna,sworforebmunehtsa1-gniyficepsyb.g.e(
tondluohsedocruoy,revewoH.)egassemrorreevitamrofninagnicudorpyb.g.e(senildnammocdilavni
eldnah ylticilpxe ot deen od uoy ,tnemngissa siht roF .sledom ruoy erugnoc ot ,ot deen uoy revewoh
meht esu nac uoy ;dohtem ruoy ot retemarap eht ni raeppa lliw stnemugra esehT
.ti ni secaps sniatnoc taht gnirts a ssap ot tnaw uoy fi yrassecen era setouq ,revewoH .setouq nihtiw
ton era yeht fi neve ,sgnirts sa detaert syawla era yeht ,stnemugra enil-dnammoc yficeps uoy nehW
.elbissop era senil dnammoc rehto ;tsil evitsuahxe na si sihT
.edoc ruoy tsniaga elipmoc ot stset ruo rof ,evoba deiceps sdohtem
eht niatniam tsum uoy tub ,ssalc ruoy ot sdohtem lanoitidda dda yam uoY
sdrac ward elbisiv 8 dna selip edacsac 7 htiw emag ekidnolK daehetihW a secudorp
sdrac ward elbisiv
fo rebmun tluafed eht dna selip edacsac 8 htiw emag ekidnolK daehetihW a secudorp
sdracwardelbisiv2dnaselipedacsacxis
htiw,semit3desuebnacelipwardesohw,eriatilosward-detimilfoemagasecudorp
.emag eht fo ezis eht stes ylticilpxe tub ,gniht emas eht seveihca
sdrac ward elbisiv dna selip edacsac fo rebmun tluafed htiw eriatilos fo emag cisab a secudorp
:sgninaemriehtdna,senildnammocdilavfoselpmaxeemoseragniwollofehT
fI .sdrac ward fo rebmun eht seiceps D dna ,selip edacsac fo rebmun eht seiceps P erehw ,sregetni
.stluafed eht sa sdrac ward 3 dna selip 7 esu dluohs uoy ,deicepsnu
sadesrapebdluohshcihwfohtob,dnastnemugraeromowtroenossapyllanoitpoyamuoY
.desuebnacelip
wardehtsemitforebmunehtgnitacidni regetninaybdewollofebtsumti, sitnemugra
eht fI .esu dluohs uoy )ledom hcihw ecneh dna( tnairav emag hcihw ediced lliw tnemugra sihT
. ro, , foenoyllaciceps,gnirtsaebtsumtnemugraenil-dnammoctsrehT

ExamplarExtendedModelTests.java
Klondike main()
cs3500.klondike
ExamplarExtendedModelTests
cs3500.klondike.model.hw04
Main class
Program arguments
cs3500.klondike.Klondike
9 What to submit
.segakcap evitcepser rieht ni niamer dluohs ,nopu devorpmi fi neve
,stnemngissa suoiverp ni nettirw sessalc llA .egakcap eht ni eb dluohs
krowemoh siht rof secafretni dna sessalc wen rehto lla elihw ,ssalc
ruoy dluohs sa ,egakcap eht ni eb dluohs ssalc niam ruoY
.segnahc ruoy gnitnemucod el EMDAER ruoY
…lliw ylniatrec eW .gnitset noisserger rof ,llew sa
stsetreilraeruoyedulcniotaedidoogasitI.sessalctsettinUJeromroenonisledomllarofstseT
.dohtem eht htiw ssalc ruoY
dedeen sessalc
troppusynadna,ekidnolKdaehetihWdnaekidnolKwarD-detimiLfosnoitatnemelpmiruoY
ylluf segnahc yna dna ,elbissop sa sessalc eht ot segnahc wef sa htiw( erofeb morf edoc ruoy llA
)stnemmoc ni denialpxe
gniniatnocpizderutcurts-ylreporpatimbus:noitatnemelpmiruoyroF
gniniatnoc piz derutcurts-ylreporp a timbus :ralpmaxE roF
.nuRsserpdna
:rablootehtninocinurehtottxenunemnwodpordehtesu,mehtgnomaesoohcotnehT
.deen uoy sa snoitarugnoc nur ynam sa ekam ot ,tnaw uoy sa semit ynam sa ssecorp siht taeper nac uoY
.kOkcilcdna,stluafedriehttaeslegnihtyreveevaeL
siht rof esu ot tnaw uoy stnemugra enil dnammoc eht retne ,xobtxet
.g.e,noitarugnoc
ssalc eht fo eman deilauq-ylluf eht – retne ,xobtxet
.)”3/7 cisaB” .g.e( rebmemer ll’uoy taht eman a noitarugnoc wen eht eviG

surrounding directories
output/ .idea/
10 Grading standards
only src/ test/ no
.enildaed sti yb noitaulave fles ruoy etelpmoc
ot erus eb nehT .enildaed evoba eht yb /ude.uen.scc.snidnah//:sptth ot krowemoh ruoy timbus esaelP
.ediug elyts eht wollof uoy llew woh
dna ,egarevoc tset ruoy fo ssenevisneherpmoc eht
,edoc ruoy fo ytiralc eht
.cte ,ytilibadaer evorpmi ,noitacilpud diova ot derutcurts si edoc ruoy llew woh
,)ssentcerroc lanoitcnuf( snoitaciceps eht stnemelpmi edoc ruoy rehtehw
,secafretni nettirw ylsuoiverp yna yfidom ot dah uoy rehtehW
no dedarg eb lliw uoy ,tnemngissa siht roF
ton od esaelP .erutcurts egakcap ruoy sezingocer redargotua eht taht os ,
!lufesu ton er’yeht — seirotcerid ro ruoy edulcni
htiwseirotceriddnaehtgniniatnocpizatimbusesaelp,3tnemngissAhtiwsA
Code Help