Përmbajtje:

Skedarët e serisë: Disa baza ..: 8 hapa
Skedarët e serisë: Disa baza ..: 8 hapa

Video: Skedarët e serisë: Disa baza ..: 8 hapa

Video: Skedarët e serisë: Disa baza ..: 8 hapa
Video: Tavolina Excel Pivot nga e para në një ekspert për gjysmë ore + pult! 2024, Qershor
Anonim
Skedarët e serisë: Disa baza….
Skedarët e serisë: Disa baza….

Ky Instructable do t'ju mësojë disa baza të shkrimit të skedarëve të grupeve dhe do t'ju tregojë se si të krijoni një lojë me supozimin e numrave me disa kthesa, vetëm për t'i mbajtur gjërat interesante …

Unë kam mësuar shumicën e aftësive të mia të menjëhershme të komandimit, dhe të gjitha shkrimet e mia nga Interneti në përgjithësi, dhe Instuctables në veçanti. Unë do të doja të falënderoj përdoruesin e Instructables Neodudeman për udhëzimet e tij të mrekullueshme në shkrimin e grupeve. Faleminderit!

Hapi 1: Çfarë është një skedar grumbull?

Çfarë është një skedar grumbull?
Çfarë është një skedar grumbull?

Epo, shumica e lexuesve të mi ndoshta tashmë e dinë se çfarë është një skedar grumbull, por për çdo rast….

Një skedar grumbull është thjesht një koleksion (grumbull) i komandave MSDOS që ekzekutohen në mënyrë sekuenciale kur ekzekutoni skedarin grumbull. Skedarët grumbull fillojnë si skedarë.txt në fletore dhe bëhen skedarë të ekzekutueshëm kur i ruani si diçka me një shtrirje.bat. Pra, në thelb, gjithçka që bëni është të shkruani një skedar në Notepad, dhe pastaj ta ruani si, të themi, "udhëzues.bat". Pasi.bat të vendoset në fund të emrit të skedarit, do të shfaqet një skedar i bukur, i ri, i quajtur si ta quani, me një ikonë të bukur, me pamje veshje. Mirë, tani që e dimë se cilat janë këto skedarë grumbull, le të shkojmë në shkrim!

Hapi 2: Komandat themelore

Komandat Themelore
Komandat Themelore
Komandat Themelore
Komandat Themelore
Komandat Themelore
Komandat Themelore
Komandat Themelore
Komandat Themelore

Në rregull, do t'ju duhet të mësoni disa komanda. Pra, së pari, hapni vijën e komandës MSDOS. Hapni dritaren e fillimit, klikoni në run, shkruani "cmd.exe" dhe pastaj klikoni run. Okay. Së pari, ne do të shikojmë variablat. Variablat janë numra, fjalë ose gjëra të tjera që, (disi qartë), ndryshojnë. Linja e Komandës ka një funksion të ndryshueshëm. Ai ka disa ndryshore që janë vendosur tashmë, si TIME, DATE dhe disa të tjera. Sidoqoftë, për shumicën e variablave, ju mund t'i vendosni vetë. Klikoni në dritaren Command Prompt, dhe shkruani: SET variable = randomNë të vërtetë nuk ka rëndësi nëse e shkruani "SET" ose jo, por më pëlqen të kapitalizoj të gjitha komandat e mia, veçanërisht kur shkruaj skedarë grumbull. Thjesht e bën më të lehtë të thuash atë që po bën. Tani goditi enter. Mirë për ty! Ju keni vendosur ndryshoren tuaj të parë! Por çfarë mund të bëjmë me të? kujt i intereson nëse gjithçka që mund të bëjmë është të vendosim ndryshoren në rregull? Epo, siç rezulton, ne mund të bëjmë shumë më tepër se kaq, por së pari, le të përpiqemi të bëjmë që kompjuteri të na tregojë se si është vendosur variabla. Në rregull, në mënyrë që kompjuteri të lexojë vlerën e një ndryshoreje, ne shkruajmë emrin e ndryshores, në këtë rast, "ndryshore" dhe e vendosim emrin brenda %shënimeve, si kjo: %ndryshore %. Shkoni përpara dhe shkruani atë, dhe shtypni enter:%variable%Gabim i çuditshëm, a? Kompjuteri tha "" ndryshorja "nuk njihet si një komandë e brendshme ose e jashtme, program i funksionueshëm ose skedar grumbull." Pra, pse e dha atë gabim? Epo, në thelb, ai dha atë gabim sepse Command Prompt e trajton vlerën e asaj ndryshore sikur ta keni shtypur atë në veten tuaj. Pra, kur shtypni %variablin %, kompjuteri mendoi se po i thoshit të ekzekutonte komandën "e rastësishme". Natyrisht, ne kemi nevojë për diçka tjetër në mënyrë që të shohim vlerën e ndryshores sonë. Këtu hyn komanda ECHO. Komanda ECHO thjesht i thotë Komandës Prompt të bëjë jehonë, ose të thotë, çfarëdo që keni shtypur pas ECHO. Pra, nëse shtypim komandën ECHO para ndryshores sonë, duhet të marrim atë që duam: ECHO %variable %Atje! Tani kemi atë që duam! Kompjuteri printon "rastësisht". Natyrisht, kjo ishte vlera që kemi shtypur për ndryshoren tonë, kështu që është rezultati që donim. Në hapin tjetër, ne do të mësojmë më shumë rreth ndryshoreve dhe si mund t'i përdorim ato.

Hapi 3: Përdorimi i komandës SET dhe variablave

Duke përdorur komandën SET dhe variablat
Duke përdorur komandën SET dhe variablat
Duke përdorur komandën SET dhe variablat
Duke përdorur komandën SET dhe variablat

Mirë, tani që e dimë se çfarë janë ndryshoret, çfarë tjetër mund të bëjmë me to? Epo, ne mund të bëjmë matematikë, mund t'i përdorim ato si kushte për të shkruar programe dhe skedarë grumbull, mund të kryejmë aritmetikë bazë, mund të ekzekutojmë komanda, dhe shumë më tepër. Ne nuk do të hyjmë në gjithçka që mund të bëni me variablat, por ne do të diskutojmë disa aspekte të rëndësishme të funksionit të ndryshores. Së pari, komanda SET në vetvete prodhon vetëm variabla vargu. Kjo do të thotë që nuk do të shtojë ose të bëjë ndonjë matematikë tjetër. Nëse i thoni kompjuterit të shtojë 1 në një ndryshore me vlerë 1, kjo do t'ju japë vlerën 1+1. Nëse duam që në të vërtetë të shtohen dy numrat, duhet të vendosim një "/a" pas komandës SET. Prandaj, ne shkruajmë: SET /a varible = (vlera) Tani, supozoni se duam të vendosim një ndryshore në skedarin tonë grumbull që përdoruesi do të sigurojë. Ne mund të dëshirojmë ta bëjmë këtë nëse llogaritim vlerat sipas një formule, ose, në rastin tonë, nëse duam që përdoruesi të marrë me mend një numër që kompjuteri ka dalë. Për të gjeneruar një ndryshore të përcaktuar nga përdoruesi, shtojmë a /p pas komandës SET, dhe e lëmë zonën pasi = bosh: ndryshorja SET /p = Aty shkoni! Një ndryshore e përcaktuar nga përdoruesi! Nëse do ta vendosnim këtë linjë në një skedar grumbull, atëherë grupi do të funksiononte derisa të arrinte në këtë linjë, dhe pastaj do të priste për futjen e përdoruesit para se të vazhdonte. Gjëja tjetër interesante në lidhje me /p është se ajo mohon plotësisht /a. Kur përfshijmë a /p, thjesht mund të heqim /a. Gjëja tjetër që do të mësojmë në lidhje me të prodhon variabla të rastësishëm. Nëse duam që kompjuteri të zgjedhë një numër të rastësishëm për një ndryshore, thjesht shtypim komandën SET, e ndjekur nga ndryshorja, dhe pastaj e vendosim ndryshoren në të barabartë me %RANDOM %. Edhe një herë, nuk ka nevojë të jetë kapital, por më pëlqen ta bëj gjithsesi. Pra, ne shkruajmë: SET /a variable =%RANDOM%Natyrisht, kjo nuk është një ndryshore e përcaktuar nga përdoruesi, kështu që ne përfshijmë /a. Ftohtë! Pra, tani ne e dimë se si të prodhojmë një numër të rastit! Por sa e rastit është? Epo, rezulton se kompjuteri zgjedh një numër midis 0 dhe diku rreth 37, 000. Nuk jam i sigurt se cili është numri i saktë. Por, çka nëse duam një numër më të vogël? Supozoni, si në këtë Instructable, ne duam një numër të menaxhueshëm për diçka si një lojë me hamendje? Epo, këtu vjen komanda IF….

Hapi 4: Komandat IF dhe GOTO. Fuqia në Duart e Grupshkruesit

Komandat IF dhe GOTO. Fuqia në duart e shkrimtarit të serisë
Komandat IF dhe GOTO. Fuqia në duart e shkrimtarit të serisë

Pra, ne duam të prodhojmë një numër të menaxhueshëm. Le të supozojmë se duam të prodhojmë një numër të rastësishëm midis 1 dhe 20. Mirë, kjo është e lehtë të thuhet, por vlera e RASTIT zgjedh një numër midis 1 dhe 37, 000. Kjo është ajo për të cilën do të përdorim IF. Komanda IF në thelb thotë nëse diçka ndodh, ose nëse diçka është e barabartë, ose nuk barazohet, me një vlerë të caktuar, PASTAJ bëni këtë. Pra, IF vendos komanda të kushtëzuara. Ne duam të prodhojmë një numër që është më pak se njëzet, por më i madh se një, natyrisht, do të fillojmë duke i thënë kompjuterit që të zgjedhë një numër të rastit, por atëherë do të duhet të jemi në gjendje t'i themi që të zgjedhë një të ri numri nëse numri që zgjedh nuk i përshtatet kërkesave tona. Aty hyn komanda GOTO. GOTO thjesht i thotë kompjuterit të SHKO TE NJ label etiketë të caktuar në kod. Etiketat duken kështu:: marr Çdo fjalë e vendosur pas zorrës së trashë bëhet një etiketë në të cilën mund të hyjmë me komandën GOTO. Pra, nëse duam të kalojmë në pjesën e kodit me etiketën "zgjedh" sipër tij, ne thjesht shtypim: GOTO pickAlright, kështu që le të vazhdojmë me kodimin tonë. Ne tashmë i kemi thënë kompjuterit të zgjedhë një numër të rastësishëm, kështu që ne kemi shtypur: SET /a answer =%RANDOM%%Tani ne duam ta tërheqim këtë numër në një diapazon më të vogël. Pra, ne do të thërrasim komandën IF. Diçka si kjo duhet të bëjë mashtrimin: NESE % përgjigje % GTR 20 GOTO marrKjo i thotë kompjuterit të GOTO NFSE përgjigja është GReaTer se 20. Ne gjithashtu mund të vendosim ndonjë nga këto kushte në atë komandë IF: EQU - EqualNEQ - Not EqualLSS - Më pak ThanGTR - Më e madhe ThanLEQ - Më pak se ose e barabartë ToGEQ - Më e madhe se ose e barabartëThus, me IF, GOTO, etiketa dhe këto pakësime, ne mund të manipulojmë skedarin tonë të serisë në çdo mënyrë që zgjedhim. Mirë, kështu që ne e kemi numrin tonë të rastit nën njëzet tani, dhe ja çfarë kemi deri më tani:: pickSET /a answer =%RANDOM%IF%përgjigje%GTR 20 GOTO pickNow, le të sigurohemi që kompjuteri nuk e bën ' mos zgjidhni 0 për përgjigjen.: pickSET /një përgjigje =%E RASTOMSISHME NFSE%përgjigje%GTR 20 GOTO pickIF $ përgjigje%EQU 0 GOTO pickOkay! Tani kemi një numër të përdorshëm midis 1 dhe 20. Le të kalojmë te mishi i Grupit.

Hapi 5: Mishi i lojës sonë

Mishi i lojës sonë
Mishi i lojës sonë

Në rregull, ne kemi numrin tonë të rastit. Ne gjithashtu duam të numërojmë sa supozime bën lojtari ynë, kështu që ne do të vendosim një ndryshore tjetër: SET /a guessnum = 0 Kjo e vendos variablin gjeusnum në zero dhe i dhamë parametrin /a, kështu që do të jemi në gjendje të shtojmë asaj çdo herë që përdoruesi merr me mend. Mirë. Ne kemi një numër të rastësishëm dhe kemi vendosur numrin e supozimeve. Tani na duhen disa udhëzime dhe duhet të kemi disa të dhëna të përdoruesit për numrin e supozimit. Ju duhet ta kuptoni pjesën më të madhe të kësaj tani, kështu që unë vetëm do t'ju tregoj kodin:: beginECHO Unë do të mendoj për një numërECHO që po mendoj….. SET /a GuessNum = 0 (Kjo ECHO i përshkruan ato dy rreshta dhe cakton numrin e supozimeve në 0): pickASET /a Përgjigje =%E RASTOMSISHME NFSE%Përgjigje%GTR 20 GOTO pickAIF%Përgjigje%EQU 0 GOTO pickAECHO Unë jam duke menduar për një numër midis 1 dhe 20ECHO Mendoni se cilin numër po mendoj e. (Ky seksion lakohet derisa të vendosë numrin tonë të rastësishëm, dhe më pas ECHO jep udhëzimet për lojtarin tonë): RetrySET /p Guess = IF %Guess %LSS %Përgjigje %ECHO Numri im është më i lartë. Nese %Guess %GTR %Përgjigje % ECHO Numri im është më i ulët. IF%Guess%==%Përgjigje%GOTO ENDECHO. SET /a GuessNum =%GuessNum%+1GOTO Provo përsëri (Ky seksion i thotë kompjuterit që të kërkojë të dhëna nga përdoruesi, dhe pastaj bën sythe vazhdimisht derisa përdoruesi të zgjedhë numri i saktë. Pastaj, shkon në etiketën END): ENDECHO Ke të drejtë! Përgjigja ishte %Përgjigje %ECHO U desh %GuessNum %Guesses. ECHO. PAUSECLSECHO Dëshironi të luani përsëri? ECHO Y /N? SET /p luaj = NESE %luaj %EQU y GOTO fillojI %luaj %EQU n GOTO mbyllif % luaj% GTR y GOTO playagainIF% luaj% LSS y GOTO playagainIF% luaj% GTR n GOTO playagainIF% luaj% LSS n GOTO playagain (Këtu është pjesa jonë e fundit. Kjo i tregon përdoruesit sa supozime kanë marrë dhe më pas pyet nëse do të donin për të luajtur përsëri. Vini re se ne mund të përdorim edhe EQU, GTR dhe LSS me shkronja.) Mirë! Nëse thjesht kopjoni këtë kod, do të kishit një lojë të supozuar legjitime. Jo shumë e bukur, por hej, është më mirë sesa mund të bëjnë shumica e njerëzve. Por ne do të shtojmë një kthesë të vogël, vetëm për t'i bërë gjërat interesante….

Hapi 6: Kthesa

Kthesa
Kthesa
Kthesë
Kthesë
Kthesa
Kthesa

Tani, ne kemi një lojë pune tani, por ne duam ta bëjmë atë pak më intersant. Po sikur të shtoni një nxitje për lojtarin tonë që të gjejë numrin e duhur? Po sikur të bëjmë diçka si.. mbylljen e kompjuterit të tyre nëse nuk e marrin me mend numrin? Kjo do të ishte shumë mirë! Mirë, tani do të shtojmë një kod të vogël për t'i bërë këto ndryshime. Së pari, ne do të shtojmë një rresht në pjesën e kodit që etiketuam "provo". Pra shkoni gjeni atë pjesë. Duket kështu:: RetrySET /p Guess = IF%Guess%LSS%Përgjigje%ECHO Numri im është më i lartë. Nëse%Guess%GTR%Përgjigje%ECHO Numri im është më i ulët. Nëse%Guess%==%Përgjigje%GOTO ENDECHO. SET /a GuessNum =%GuessNum%+1GOTO RetryOkay, ne do ta shtojmë këtë rresht menjëherë pas "ECHO". (Kur vendosim një periudhë pas ECHO, ajo lë një vijë të zbrazët.) Këtu është kodi i ri: IF %GuessNum %EQU 4 GOTO mbylljeG Kur shtojmë këtë rresht, pjesa duket kështu: RetrySET /p Guess = IF %Guess % LSS%Përgjigje%ECHO Numri im është më i lartë. Nëse%Guess%GTR%Përgjigje%ECHO Numri im është më i ulët. IF%Guess%==%Përgjigje%GOTO ENDECHO. SET /a GuessNum =%GuessNum%+1IF%GuessNum%EQU 4 GOTO mbylljeGGOTO RetryDeri tani, duhet të jetë shumë e qartë se çfarë bën kjo. Ai i tregon kompjuterit se nëse GuessNum EQUals 4, duhet të shkojë në pjesën e kodit të etiketuar "shutdownG". Pra, çfarë duam të thotë kjo pjesë e mbylljes? Epo, padyshim, duhet të etiketohet "mbylljeG". Tjetra, duhet të fikë kompjuterin. Komanda për mbylljen është "SHUTDOWN -s". Kjo do të mbyllë kompjuterin, por ne duam t'i shtojmë disa komandës. Ne do të shtojmë një "-f". Kjo do t'i detyrojë të gjitha programet të mbyllen, dhe ne do të shtojmë një "-t 60". Kjo do t'i tregojë kompjuterit të shfaqë një dritare dhe të presë gjashtëdhjetë sekonda për t'u mbyllur. Ne gjithashtu do të shtojmë mesazhin "-c" këtu "". i cili do të shfaq një mesazh në dritaren e mbylljes. Pas komandës sonë të mbylljes, ne do të përdorim të njëjtin kod që kemi më lart, kodin që lejon lojtarin tonë të zgjedhë numrat dhe u jep atyre reagime. Pra, kodi ynë i mbylljes tani duket si ky:: mbylljaGSHUTDOWN -s -f -t 60 -c "Vazhdoni të merrni me mend! Nëse nuk e merrni me mend numrin e duhur, kompjuteri do të mbyllet!": shutdownG1SET /p Guess = IF %Guess %LSS %Përgjigje %ECHO Numri im është më i lartë. IF %Guess %GTR %Përgjigje %ECHO Numri im është më i ulët. IF%Guess%==%Përgjigje%GOTO ENDECHO. SET /a GuessNum =%GuessNum%+1GOTO mbylljeG1Tani e kemi vendosur kompjuterin në SHUTDOWN dhe shfaqim një mesazh, por gjithashtu duhet t'i tregojmë kompjuter për të ndaluar mbylljen, nëse është nisur. Pra, ne do ta shtojmë atë në pjesën e kodimit të etiketuar "fund". Ai seksion duket kështu:: ENDIF % GuessNum % GTR 4 SHUTDOWN -aECHO Ke të drejtë! Përgjigja ishte %Përgjigje %ECHO U desh %GuessNum %Guesses. ECHO. PAUSECLSECHO Dëshironi të luani përsëri? ECHO Y /N? SET /p luaj = NESE %luaj %EQU y GOTO fillojI %luaj %EQU n GOTO mbyllif % luaj% GTR y GOTO playagainIF% luaj% LSS y GOTO playagainIF% luaj% GTR n GOTO playagainIF% luaj% LSS n GOTO playagainDuam të ndalojmë mbylljen dhe këtë e bëjmë me komandën "SHUTDOWN -a". Pra, ne do të shtojmë një rresht që shkon kështu: IF % GuessNum % GTR 4 SHUTDOWN -aNe do ta shtojmë atë komandë menjëherë pas etiketës, dhe kjo do t'i thotë kompjuterit të ekzekutojë komandën SHUTDOWN -a vetëm nëse luajtësi ka bëri më shumë se katër supozime dhe filloi një mbyllje. Mirë! ju duhet të keni përfunduar lojën tuaj tani! Ne do të sigurohemi që nuk ka ndonjë defekt në hapin tjetër.

Hapi 7: Hapat e fundit

Hapat e fundit
Hapat e fundit

Mirë, tani nëse e lidhni të gjithë atë kodim, atëherë do të keni diçka që duket diçka si kjo:: beginECHO Unë do të mendoj për një numërECHO po mendoj….. SET /a GuessNum = 0: pickASET / a Përgjigje =%E RASTOMSISHME%IF%Përgjigje%GTR 20 GOTO pickAIF%Përgjigje%EQU 0 GOTO pickAECHO Unë jam duke menduar për një numër midis 1 dhe 20ECHO Mendoni për cilin numër po mendoj.:RetrySET /p Guess = IF%Guess %LSS%Përgjigje%ECHO Numri im është më i lartë. Nëse%Guess%GTR%Përgjigje%ECHO Numri im është më i ulët. IF%Guess%==%Përgjigje%GOTO ENDECHO. SET /a GuessNum =%GuessNum%+1IF%GuessNum% Mbyllja EQU 4 GOTOGGOTO Provoni sërish: ENDIF % GuessNum % GTR 4 SHUTDOWN -aECHO Ju jeni të saktë! Përgjigja ishte %Përgjigje %ECHO U desh %GuessNum %Guesses. ECHO. PAUSECLSECHO Dëshironi të luani përsëri? ECHO Y /N? SET /p luaj = NESE %luaj %EQU y GOTO fillojI %luaj %EQU n GOTO mbyllif % luaj% GTR y GOTO playagainIF% luaj% LSS y GOTO playagainIF% luaj% GTR n GOTO playagainIF% luaj% LSS n GOTO playagain: closeECHO Faleminderit për lojën! PAUSEEXIT cmd: mbylljeGSHUTDOWN -s -f -t 60 -c "Vazhdoni të mendoni ! Nëse nuk e merrni me mend numrin e duhur, kompjuteri do të mbyllet! ": ShutdownG1SET /p Guess = IF % Guess % LSS % Përgjigje % ECHO Numri im është më i lartë. Nëse % Guess % GTR % Përgjigje % ECHO Numri im është Lower. IF%Guess%==%Përgjigje%GOTO ENDECHO. SET /a GuessNum =%GuessNum%+1GOTO mbylljeG1Kjo duhet të jetë gjithçka që na duhet apo jo? Pra, vazhdoni dhe ruani atë skedar.txt të shënimeve që keni si GuessGame.bat. Në fakt, ju mund ta emërtoni atë çfarë të doni, për sa kohë që vendosni.bat në fund. Mirë, kështu që klikoni në ikonën dhe drejtoni programin! A funksionoi? Mirë lloj. Po bën gjëra të çuditshme, apo jo? Rezulton se kur shkruajmë një Seri si kjo, komanda e komandon ECHO -në çdo komandë që i japim, njësoj sikur t'i shtypim në linjën e komandës. Pra, loja funksionon, por është pak e çrregullt dhe e paqartë. A mund të bëjmë diçka për këtë? Po! E tëra çfarë duhet të bëjmë është të shtypim këtë rresht në fillimin e kodit tonë: @ECHO OFFKjo i thotë kompjuterit të fikë ECHO OFF. Dhe shenja @ në lypje i thotë të fiket ECHO për çdo komandë. Nëse e lëmë atë @ jashtë, atëherë do të fikte ECHO vetëm për një komandë.

Hapi 8: Gjithçka është bërë

Urime! Ju sapo keni shkruar një lojë skedarësh të serisë. Mjaft e thjeshtë apo jo? Nëse mund ta trajtoni këtë, atëherë mund të kuptoni se si të bëni mjaft me skedarët e Grupit. Thjesht luani me të, bëni disa eksperimente. Vetëm në rast se ju nuk mund të merrni diçka për të punuar, ose në rast se kam lënë diçka jashtë në gjithë atë kodim, unë do t'ju jap skedarin këtu.

Recommended: