Dit is in fuortsetting fan 'e tutorial Basisprogrammering mei pseint (diel 2), dizze kear sil ik útlizze wat nedich is om te programmearjen.
Index
OPDRACHT
Opdracht is in proses wêryn in fariabele wurdt oanmakke en / of oanpast, en ferwiist nei dizze troch syn identifier wêrmei't wy tagong krije ta har ûnthâldromte.
de syntaksis fan 'e opdracht is:
[variable]<- [expresion];
[variable]=[expresion];
Wêr't [fariabele] de fariabele is dy't de wearde kriget fan evaluearjen [ekspresje]. Beide binne jildich, dat it makket net út hokker wurdt brûkt (as se PSeInt goed hawwe ynsteld), mar neffens my meitsje ik de earste as de juste.
As [fariabele] net bestie foar de opdracht, waard [fariabele] oanmakke, as dy bestie, wurdt de foarige wearde ferneatige en wurdt de nije op syn plak pleatst. Om dizze reden wurdt mapping beskôge as in destruktive operaasje.
LÊZING
Lêzen is it proses wêryn in gegevens as gegevens wurde frege fan 'e brûker om de gegevens yn in fariabele op te slaan.
syn syntaksis is:
Leer variable_1,variable_2,...,variable_n;
wêr't [fariabele_ {1,2, n}] de fariabele of fariabelen binne dy't de wearde krije dy't de brûker hat jûn, yn gefal mear dan ien fariabele wurdt frege, sil it earst de earste freegje, dan de twadde ensafuorthinne oant hawwe alle wearden krigen.
Dit is ek in destruktive funksje.
SKRIUWERIJ
Skriuwen is it proses wêryn in tekenrige en / of ien of meardere fariabelen op it skerm wurde skreaun
de syntaksis is:
Escribir expresion_1,expresion_2,...,expresion_n;
wêr [ekspersje_ {1,2, n}] binne de tekenrige en / of fariabelen dy't werjûn wurde sille.
Skriuwen krijt, neist it ûntfangen fan de te werjaan gegevens, ek de ynstruksje "Sûnder oerslaan" of "Sûnder downloaden" dy't de rigelpauze foarkomme.
Skriuwen foeget gjin spaasjes ta tusken de arguminten, dat wol sizze as jo sette:
Proceso SinTitulo
a<- "ola";
b<- "mundo";
Escribir a,b;
FinProceso
yn dit gefal sil it «olamundo» sjen litte, om't d'r tusken «a» en «b» gjin tekenrige is dy't de romte tusken a en b oanjout, sadat it goed wurdt werjûn en sa wurdt skreaun:
Proceso SinTitulo
a<- "ola";
b<- "mundo";
Escribir a,"",b;
FinProceso
yn dit gefal tafoegje »» dat is in tekenreeks dy't in romte hat dy't de romte is tusken «golf» en «wrâld» en dan sil it «golfwrâld» sjen litte mei de romte.
AS DAN
Dit is in ferklearring dy't in opjûne betingst evalueart en de wierheid en / as falskens fan 'e neamde betingst kontroleart, dat wol sizze as oan' e betingst is foldien of net.
De syntaksis is:
Si [condición a evaluar] Entonces
[instrucciones por verdadero]
Sino
[instrucciones por falso]
FinSi
De klausule "Oars" is net ferplicht, yn dit gefal as de betingst falsk is negearje de ynstruksjes en gean troch as soe de sin net bestean, yn dit gefal soe it bliuwe:
Si [condición a evaluar] Entonces
[instrucciones por verdadero]
FinSi
Of de clausule "Failure" is pleatst of net hinget ôf fan 'e behoeften fan dat programma.
AKKORDING
De sin as it in strang numerike fariabele evalueart dy't mear as 2 opsjes as opsje jout, dit is it ferskil fan "As-Dan" sûnt de foarige allinich 2 opsjes kin jaan.
De syntaksis is:
Segun [variable numérica] Hacer
[número1]: [instrucciones]
[número2],[número3]: [instrucciones]
[...]
De Otro Modo: [instrucciones]
FinSegun
Sa't jo sjen kinne nei "getal1" is d'r in ":" en dêrnei wurde de te fieren ynstruksjes pleatst yn it gefal dat "numerike fariabele = getal1", yn it twadde foarbyld is it "getal2, getal3" dit betsjut dat as "numerike fariabele = getal2 of getal3" dan "ynstruksjes" wurde útfierd, is dit handich as 2 mooglikheden deselde ynstruksjes moatte útfiere.
D'r is ek de klausule "Op in oare manier" dy't wurdt útfierd yn it gefal dat gjin fan 'e mooglikheden wurdt foldien.
WYLST
It is in repetitive funksje dy't earst in betingst evalueart en as it dan is foltôge, fiert it in searje ynstruksjes út, dan evalueart it de betingst opnij en as it wier is, fiert it deselde ynstruksjes opnij út en giet sa troch oant de betingst falsk is ,
as de betingst fan it begjin ôf falsk is sil it noait wurde útfierd en as it altyd wier is sil it yn in ûneinige loop wurde pleatst, om it lêste yn 'e ynstruksjes te foarkommen, moat der wat wêze dat op in stuit de betingst ferfalsket te wêzen kinne de loop einigje.
syn syntaksis is:
Mientras [condición a evaluar] Hacer
[instrucciones]
FinMientras
REPEAT-TOT
Dit is in funksje dy't heul ferlykber is mei de foarige, mar yn tsjinstelling ta de foarige, kontroleart dizze de betingst oan 'e ein, dat is, it kommando sil teminsten 1 kear wurde útfierd, ek ynstee fan it útfieren fan' e ynstruksje as it wier is, it fiert it út As de betingst net is foldien, mar as jo wolle dat it wurdt útfierd wylst de betingst is foldien, brûk dan "wylst" ynstee fan "oant".
syn syntaksis is:
Repetir
[Instrucciones]
hasta que [condicion]
MONEY
Dizze ferklearring fiert in ynstruksje in bepalend oantal kearen út foar in fariabele, yn tsjinstelling ta de foarige feroaret dizze syklus de wearde fan 'e oanbelangjende fariabele op himsels, en hat ek in heul krêftige syntaksis.
Para [variable] Desde [valor inicial] Hasta [valor Final] Con [paso] Hacer
[instruciones]
FinPara
"Fariabel" is de fariabele dy't "begjinwearde" krijt en de ynstruksjes útfiert, foeget dan "fariabele" plus "stap" oan en fiert de ynstruksjes opnij út oant "fariabele" is gelyk oan "definitive wearde".
As "mei [stap]" wurdt fuorthelle, dan sil it wite dat "stap" gelyk is oan 1, ek as [stap] net is oantsjutte en "begjinwearde" grutter is dan "definitive wearde" sil it der trochhinne gean yn omkearde folchoarder, dat is "Stap" is -1
SUBPROCESS / FUNCTION
In tried of funksje is in programma yn in oar en dat dit subprogramma ien of mear wearden ûntfange, betsjinnet en in oare werombringt. De syntaksis is
SubProceso [variable_de_retorno]<- [nombre de la funcion] ([arg_1],[arg_2],...,[arg_n])
acción 1;
acción 2;
.
.
.
acción n;
FinSubproceso
wêr "return fariabele" de fariabele is dy't de wearde befettet troch de funksje "funksjennamme" dy't de parameters "arg_1, arg_2, arg_n" krige om dit út te fieren
OTHER
Dit binne funksjes dy't allinich komplementêr binne foar de oaren en gjin komplekse syntaksis hawwe, om't se allinich komplementêre funksjes binne.
Skerm wiskje
Dizze funksje wisket it skerm fan elk objekt yn 'e tolk
Wachtsje kaai
Dizze funksje wachtet op de brûker om op in toets te drukken om troch te gean mei it programma
Wachtsje x {Twad, Millisekonden}
dizze funksje wachtet in tiid yn sekonden of millisekonden om troch te gean mei it programma
PS: sorry foar de fertraging, mar ik wie dwaande mei oare saken, dat ik koe net skriuwe
10 opmerkingen, lit jo
Hawwe jo gjin funksjes om toetsen op te nimmen sûnder de útfiering te stopjen? Foar it dwaan fan wat mei beweging dy't oantrekliker is foar 9-jierrigen, hoewol in hangman-spiel ek leuk wêze kin om te programmearjen.
Ferwurkje iets_digo
a <-1;
lateraal <-30;
omleech <-5;
Wylst a = 1 Do
Skerm wiskje;
c <-1;
rigel <- "";
Repeat
line <-line + "";
c <-c + 1;
Oant c = lateraal
line <-line + "X";
c <-1;
Repeat
Skriuwe " ";
c <-c + 1;
Oant c = down-1
Line skriuwe;
Repeat
Skriuwe " ";
c 2 Dan
omleech <-ûnder-1;
Ein ja
"s":
As ûnder <15 Dan
del 2 Dan
lateraal <-lateral-1;
Ein ja
"d":
As lateraal <50 Dan
lateraal <-lateraal + 1;
Ein ja
"0":
a <-2;
Ein sekonden
Ein wylst
EndProcess
No fail as jo omheech geane, feroarje de rigels 23 en 28 better
-23 Oant c = 15
+23 Oant c = 18
y
-28 As del> 2 Dan
+28 As omleech> 3 Dan
Tank foar de bydrage, mar it hat wat problemen lykas dat jo in sin yn in oare iepenje, mar it moat einigje binnen de sin wêr't it begon, ik bedoel, it kin net wurde pleatst
Ferwurkje wat
a <- 0;
foarlêze;
as a net gelyk is oan 25 dan
wylst a net gelyk is oan 0 do
foarlêze;
Ein ja
einigje wylst
as jo de loop sjogge by it begjinnen yn 'e "as dan" -ferklearring, mar der bûten einigje, is sokssawat net mooglik.
Ik wurdearje de bydrage noch altyd
Ein proses
Tank, mar ik tink dat it mear in probleem is om de koade hjir te setten, dat ik net wit hoe't ik it yn koadesoart set en it komt út sûnder ynspringing.
It programma wurket prima. De fariabele "a" brûk ik gewoan om de loop út te gean as de brûker in nul typt. Jo kinne in útgong () of in skoft sette; yn 'e betingst sjocht it der nei en ik bewarje de fariabele. Se binne opsjes.
Groetenis.
Ik sil besykje ljeppers te feroarjen foar spaasjes en labels
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
Dat is fol mei ymportfouten fan myn koade, ik sil opnij besykje mei ljeppers:
Dit soe it bestân wêze 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
Nijsgjirrich is de opmerking mei koadeetiketten opiten, wiske, wat der tusken giet, bygelyks tusken rigels
Repeat
Skriuwe " ";
c
nei de c is der in
en dan giet it troch mei 3 Dan
omleech
Oer it algemien is dit net betrouber om te setten neffens hokker koades.
Ik feroarje de symboalen fan tawize oan = om te sjen hoe't it is.
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
It bliuwt in diel fan 'e koade ite, de koadetag mislearret, it moat it skriuwen litte lykas it is.
Hoi sorry dat ik dy net earder antwurde seach, mar goed
om't jo de koade net goed kinne publisearje, om't jo dizze net per post nei my stjoere, sadat jo de saak net safolle draaie.