Kjo është një vazhdim i udhëzuesit Programimi bazë me pseint (pjesa 2), kësaj here do të shpjegoj se çfarë është e nevojshme për të programuar.
DETYRIMI
Detyra është një proces në të cilin krijohet dhe / ose modifikohet një variabël, duke iu referuar asaj me anë të identifikuesit të saj me të cilin mund të qasemi në hapësirën e saj të kujtesës.
sintaksa e detyrës është:
[variable]<- [expresion];
[variable]=[expresion];
Ku [variabli] është ndryshorja që merr vlerën e vlerësimit [shprehje]. Të dyja janë të vlefshme kështu që nuk ka rëndësi se cila përdoret (nëse e kanë konfiguruar PSeInt saktë), por për mendimin tim unë e krijoj të parën si të saktën.
Nëse [ndryshorja] nuk ekzistonte para caktimit, [ndryshorja] ishte krijuar, nëse ekzistonte vlera e mëparshme shkatërrohet dhe e reja vendoset në vendin e saj. Për këtë arsye, hartëzimi konsiderohet një operacion shkatërrues.
LEXIMI
Leximi është procesi në të cilin përdoruesit i kërkohen të dhëna ose të dhëna për të ruajtur të dhënat e përmendura në një ndryshore.
sintaksa e saj është:
Leer variable_1,variable_2,...,variable_n;
ku [variabla_ {1,2, n}] janë ndryshorja ose ndryshoret që marrin vlerën e dhënë nga përdoruesi, në rast se kërkohen më shumë se një variabël, së pari do të kërkojë të parën, pastaj të dytën dhe kështu me radhë kanë marrë të gjitha vlerat.
Ky është gjithashtu një funksion shkatërrues.
SHKRIMI
Shkrimi është procesi në të cilin një varg personazhesh dhe / ose një ose më shumë ndryshore shkruhen në ekran
sintaksa është:
Escribir expresion_1,expresion_2,...,expresion_n;
ku [eksperienca_ {1,2, n}] janë vargjet e karakterit dhe / ose ndryshoret që do të shfaqen.
Shkrimi përveç marrjes së të dhënave që do të vendosen në ekran, merr edhe udhëzimin "Pa kapërcyer" ose "Pa shkarkuar" që shmangin kërcimin e vijës.
Shkrimi nuk shton hapësira midis argumenteve, domethënë, nëse vendosni:
Proceso SinTitulo
a<- "ola";
b<- "mundo";
Escribir a,b;
FinProceso
në këtë rast do të tregojë «olamundo» pasi që ndërmjet «a» dhe «b» nuk ka asnjë varg karakteri që tregon hapësirën ndërmjet a dhe b, kështu që të shfaqet saktë shkruhet kështu:
Proceso SinTitulo
a<- "ola";
b<- "mundo";
Escribir a,"",b;
FinProceso
në këtë rast shtoni »» që është një varg karakteri që ka një hapësirë që është hapësira midis «valës» dhe «botës» dhe pastaj do të tregojë «botën e valës» me hapësirën.
NESE ATEHERE
Kjo është një fjali që vlerëson një kusht të caktuar dhe kontrollon vërtetësinë dhe / ose gënjeshtrën e kushtit në fjalë, domethënë nëse kushti është përmbushur apo jo.
Sintaksa e saj është:
Si [condición a evaluar] Entonces
[instrucciones por verdadero]
Sino
[instrucciones por falso]
FinSi
Klauzola "Else" nuk është e detyrueshme, në këtë rast, nëse kushti është i rremë, injoroni udhëzimet dhe vazhdoni sikur dënimi të mos ekzistonte, në këtë rast do të mbetet:
Si [condición a evaluar] Entonces
[instrucciones por verdadero]
FinSi
Nëse është vendosur apo jo klauzola "Dështimi" varet nga nevojat e këtij programi.
SIPAS PASQYRS
Fjalia pasi vlerëson një variabël në mënyrë rigoroze numerike që jep më shumë se 2 opsione si opsion, kjo është e ndryshme nga "Nëse-Pastaj" pasi që e mëparshmja mund të japë vetëm 2 mundësi.
Sintaksa është:
Segun [variable numérica] Hacer
[número1]: [instrucciones]
[número2],[número3]: [instrucciones]
[...]
De Otro Modo: [instrucciones]
FinSegun
Siç mund ta shihni pas "numrit 1" ekziston një ":" dhe pas kësaj udhëzimet që do të kryhen vendosen në rast se "ndryshorja numerike = numri 1", në shembullin e dytë është "numri2, numri 3" kjo do të thotë se nëse " ndryshorja numerike = numri 2 ose numri 3 "atëherë" udhëzimet "do të ekzekutohen, kjo është e dobishme kur 2 mundësi duhet të ekzekutojnë të njëjtat udhëzime.
Ekziston edhe klauzola "Në një mënyrë tjetër" që ekzekutohet në rast se asnjë nga mundësitë nuk plotësohet.
DERISA
Shtë një funksion i përsëritur që së pari vlerëson një kusht dhe më pas nëse përmbushet ekzekuton një seri udhëzimesh atëherë rivlerëson gjendjen dhe nëse është i vërtetë ekzekuton përsëri të njëjtat udhëzime dhe vazhdon kështu derisa kushti të jetë i gabuar.
nëse kushti është i rremë që nga fillimi nuk do të ekzekutohet kurrë dhe nëse është gjithmonë i vërtetë do të vendoset në një lak të pafund, në mënyrë që të shmanget e fundit në udhëzimet duhet të ketë diçka që në një moment falsifikon kushtin për të qenë në gjendje të përfundojë lakun.
sintaksa e saj është:
Mientras [condición a evaluar] Hacer
[instrucciones]
FinMientras
PERSERITJE-DERI
Ky është një funksion shumë i ngjashëm me atë të mëparshëm, por ndryshe nga ai i mëparshmi, ky kontrollon gjendjen në fund, domethënë komanda do të ekzekutohet të paktën 1 herë, gjithashtu në vend që të ekzekutojë udhëzimin kur është e vërtetë, ai e ekzekuton atë ndërsa Nëse kushti nuk plotësohet, por nëse dëshironi që ai të ekzekutohet ndërsa plotësohet kushti, përdorni "while" në vend të "till".
sintaksa e saj është:
Repetir
[Instrucciones]
hasta que [condicion]
PER
Kjo deklaratë ekzekuton një udhëzim një numër përcaktues herë për një ndryshore, ndryshe nga ato të mëparshme, ky cikël ndryshon vetë vlerën e ndryshores në fjalë, si dhe ka një sintaksë shumë të fuqishme.
Para [variable] Desde [valor inicial] Hasta [valor Final] Con [paso] Hacer
[instruciones]
FinPara
"Ndryshore" është ndryshorja që merr "vlerën fillestare" dhe ekzekuton udhëzimet pastaj shton "ndryshoren" plus "hapin" dhe ekzekuton përsëri udhëzimet derisa "ndryshorja" të barazohet me "vlerën përfundimtare".
Nëse "me [hap]" hiqet, atëherë si parazgjedhje do të dijë që "hapi" është i barabartë me 1, gjithashtu nëse [hapi] nuk është specifikuar dhe "vlera fillestare" është më e madhe se "vlera përfundimtare" do të kalojë nëpër të rendi i kundërt, domethënë, "Hapi" është -1
NUBNPROCESI / FUNKSIONI
Një fije apo funksion është një program brenda një tjetri dhe që ky nënprogram merr një ose më shumë vlera, i operon ato dhe kthen një tjetër. Sintaksa e saj është
SubProceso [variable_de_retorno]<- [nombre de la funcion] ([arg_1],[arg_2],...,[arg_n])
acción 1;
acción 2;
.
.
.
acción n;
FinSubproceso
ku "variabli i kthimit" është ndryshorja që përmban vlerën e kthyer nga funksioni "emri i funksionit" që mori parametrat "arg_1, arg_2, arg_n" për të ekzekutuar këtë
TË TJERA
Këto janë funksione që janë vetëm plotësuese të të tjerave dhe nuk kanë një sintaksë komplekse, pasi ato janë vetëm funksione plotësuese.
Pastro ekranin
Ky funksion pastron ekranin e çdo objekti në interpret
Prisni çelësin
Ky funksion pret që përdoruesi të shtypë një buton për të vazhduar me programin
pres x {Së dyti, milisekonda}
ky funksion pret një kohë në sekonda ose milisekonda për të vazhduar me programin
PS: më vjen keq për vonesën por isha i zënë me çështje të tjera kështu që nuk mund të shkruaja
Nuk keni funksione për të kapur çelësat pa ndalur ekzekutimin? Për të bërë diçka me lëvizje që është më tërheqëse për 9-vjeçarët, megjithëse një lojë me xhelat mund të jetë gjithashtu argëtuese për t'u programuar.
Përpunoni diçka_digo
një <-1;
anësore <-30;
poshtë <-5;
Ndërsa a = 1 Bëni
Pastro ekranin;
c <-1;
rreshti <- "";
Repetir
rresht <-vijë + "";
c <-c + 1;
Deri në c = anësore
rreshti <-linja + "X";
c <-1;
Repetir
Te shkruash " ";
c <-c + 1;
Derisa c = poshtë-1
Shkruaj rreshtin;
Repetir
Te shkruash " ";
c 2 Pastaj
poshtë <-poshtë-1;
Fund po
"s":
Nëse më poshtë <15 Atëherë
poshtë 2 Pastaj
anësore <-anësi-1;
Fund po
"d":
Nëse është anësore <50 Atëherë
anësore <-anësi + 1;
Fund po
"0":
një <-2;
Fundi i sekondave
Mbaro Ndërsa
Procesi përfundimtar
Epo, dështo nëse shkon lart, më mirë ndrysho linjat 23 dhe 28
-23 Deri në c = 15
+23 Deri në c = 18
y
-28 Nëse poshtë> 2 Atëherë
+28 Nëse poshtë> 3 Atëherë
Faleminderit për kontributin, por ka disa probleme si që hapni një fjali brenda një tjetre, por duhet të përfundojë brenda fjalisë ku filloi, dua të them, nuk mund të vihet
Përpunoni diçka
një <- 0;
lexoni tek;
nëse a nuk është e barabartë me 25 atëherë
ndërsa a nuk është e barabartë me 0 do
lexoni tek;
Fund po
mbaron ndërsa
ndërsa e shihni lakun ndërsa filloni brenda thënies "nëse atëherë" por mbaron jashtë tij, diçka e tillë nuk është e mundur.
Ende e vlerësoj kontributin
Përfundimi i procesit
Faleminderit, por mendoj se është më shumë problem duke e vendosur kodin këtu, që nuk di si ta vendos në tipin e kodit dhe del pa indentacion.
Programi punon mirë. Ndryshorja "a" Unë thjesht përdor për të dalë nga lak kur përdoruesi shtyp një zero. Mund të vendosni një dalje () ose një pushim; në kushtore e shikon atë dhe unë ruaj ndryshoren. Ato janë mundësi.
Përshëndetje.
Do të provoj të ndryshoj skedat për hapësira dhe etiketat
por si funciona algo:
Proceso algo_digo
a<-1;
lateral<-30;
abajo<-5;
Mientras a=1 Hacer
Borrar Pantalla;
c<-1;
linea<-"";
Repetir
linea<-linea+" ";
c<-c+1;
Hasta Que c=lateral
linea<-linea+"X";
c<-1;
Repetir
Escribir " ";
c<-c+1;
Hasta Que c=abajo-1
Escribir linea;
Repetir
Escribir " ";
c 3 Entonces
abajo<-abajo-1;
Fin Si
"s":
Si abajo < 15 Entonces
abajo 2 Entonces
lateral<-lateral-1;
Fin Si
"d":
Si lateral < 50 Entonces
lateral<-lateral+1;
Fin Si
"0":
a<-2;
Fin Segun
Fin Mientras
FinProceso
Kjo është plot me gabime të importit nga kodi im, do të provoj përsëri me skeda:
Ky do të ishte skedari algo.psc
Proceso algo_digo
a<-1;
lateral<-30;
abajo<-5;
Mientras a=1 Hacer
Borrar Pantalla;
c<-1;
linea<-"";
Repetir
linea<-linea+" ";
c<-c+1;
Hasta Que c=lateral
linea<-linea+"X";
c<-1;
Repetir
Escribir " ";
c<-c+1;
Hasta Que c=abajo-1
Escribir linea;
Repetir
Escribir " ";
c 3 Entonces
abajo<-abajo-1;
Fin Si
"s":
Si abajo < 15 Entonces
abajo 2 Entonces
lateral<-lateral-1;
Fin Si
"d":
Si lateral < 50 Entonces
lateral<-lateral+1;
Fin Si
"0":
a<-2;
Fin Segun
Fin Mientras
FinProceso
Interesante, komenti me etiketa kodi hahet, fshihet, çfarëdo që të shkojë ndërmjet, për shembull midis rreshtave
Repetir
Te shkruash " ";
c
pas c ka një
dhe pastaj vazhdon me 3 Pastaj
poshtë
Në përgjithësi, kjo nuk është e besueshme për tu vendosur sipas kodeve.
I ndryshoj simbolet nga caktimi në = për të parë se si është.
Proceso algo_digo
a=1;
lateral=30;
abajo=5;
Mientras a=1 Hacer
Borrar Pantalla;
c=1;
linea="";
Repetir
linea=linea+" ";
c=c+1;
Hasta Que c=lateral
linea=linea+"X";
c=1;
Repetir
Escribir " ";
c=c+1;
Hasta Que c=abajo-1
Escribir linea;
Repetir
Escribir " ";
c=c+1;
Hasta Que c=18
Escribir "Dibujo una X (w,a,s,d y 0 para salir)";
Leer mueve;
Segun mueve Hacer
"w":
Si abajo > 3 Entonces
abajo=abajo-1;
Fin Si
"s":
Si abajo 2 Entonces
lateral=lateral-1;
Fin Si
"d":
Si lateral < 50 Entonces
lateral=lateral+1;
Fin Si
"0":
a=2;
Fin Segun
Fin Mientras
FinProceso
Vazhdon të hajë një pjesë të kodit, etiketimi i kodit dështon, duhet të lërë shkrimin ashtu siç është.
Përshëndetje më falni që nuk ju pashë më parë por mirë
pasi që nuk mund ta botoni mirë kodin sepse nuk ma dërgoni me postë kështu që të mos i jepni kaq shumë kthesa çështjes.