Dette er en fortsettelse av opplæringen Grunnleggende programmering med pseint (del 2), denne gangen vil jeg forklare hva som er nødvendig å programmere.
OPPDRAG
Oppgave er en prosess der en variabel opprettes og / eller modifiseres, med henvisning til den ved hjelp av dens identifikator som vi kan få tilgang til minneplassen til.
syntaksen for oppgaven er:
[variable]<- [expresion];
[variable]=[expresion];
Hvor [variabel] er variabelen som mottar verdien av å evaluere [uttrykk]. Begge er gyldige, så det spiller ingen rolle hvilken som brukes (hvis de konfigurerte PSeInt riktig), men etter min mening lager jeg den første som den riktige.
Hvis [variabel] ikke eksisterte før tildelingen, ble [variabel] opprettet. Hvis den eksisterte, blir den forrige verdien ødelagt og den nye plasseres på plass. Av denne grunn betraktes kartlegging som en destruktiv operasjon.
LESNING
Lesing er prosessen der brukeren blir bedt om data eller data for å lagre nevnte data i en variabel.
syntaksen er:
Leer variable_1,variable_2,...,variable_n;
der [variabel_ {1,2, n}] er variabelen eller variablene som mottar verdien gitt av brukeren, hvis mer enn én variabel blir bedt om, vil den først be om den første, deretter for den andre og så videre til har mottatt alle verdiene.
Dette er også en destruktiv funksjon.
SKRIVER
Skriving er prosessen der en streng med tegn og / eller en eller flere variabler skrives på skjermen
syntaksen er:
Escribir expresion_1,expresion_2,...,expresion_n;
der [ekspersjon_ {1,2, n}] er tegnstrengene og / eller variablene som vises.
Skrift i tillegg til å motta dataene som skal legges på skjermen, får også instruksjonen "Uten å hoppe over" eller "Uten nedlasting" som unngår linjesprang.
Skrift legger ikke til mellomrom mellom argumentene, det vil si hvis du setter:
Proceso SinTitulo
a<- "ola";
b<- "mundo";
Escribir a,b;
FinProceso
i dette tilfellet vil det vise «olamundo» siden det mellom «a» og «b» ikke er noen tegnstreng som indikerer mellomrommet mellom a og b, slik at den vises riktig, den skrives slik:
Proceso SinTitulo
a<- "ola";
b<- "mundo";
Escribir a,"",b;
FinProceso
i dette tilfellet legg til »» som er en tegnstreng som har et mellomrom som er mellomrommet mellom «bølge» og «verden» og da vil det vise «bølgeverden» med rommet.
HVIS DA
Dette er en setning som evaluerer en gitt betingelse og kontrollerer sannheten og / eller usannheten til den nevnte tilstanden, det vil si hvis vilkåret er oppfylt eller ikke.
Dens syntaks er:
Si [condición a evaluar] Entonces
[instrucciones por verdadero]
Sino
[instrucciones por falso]
FinSi
"Else" -klausulen er ikke obligatorisk. I dette tilfellet, hvis betingelsen er falsk, ignorerer du instruksjonene og fortsetter som om setningen ikke eksisterte, i dette tilfellet vil den forbli:
Si [condición a evaluar] Entonces
[instrucciones por verdadero]
FinSi
Hvorvidt "Feil" -klausulen ble plassert eller ikke, avhenger av behovet til programmet.
I HENHOLD
Setningen ettersom den evaluerer en strengt numerisk variabel som gir mer enn 2 opsjoner som et alternativ, dette er forskjellen fra "If-Then" siden den forrige bare kan gi 2 alternativer.
Syntaksen er:
Segun [variable numérica] Hacer
[número1]: [instrucciones]
[número2],[número3]: [instrucciones]
[...]
De Otro Modo: [instrucciones]
FinSegun
Som du kan se etter «nummer1» er det et «:» og etter det blir instruksjonene som skal utføres plassert i tilfelle «numerisk variabel = nummer1», i det andre eksemplet er det «nummer2, nummer3» dette betyr at hvis «numerisk variabel = nummer2 eller nummer3" vil "instruksjoner" bli utført, er dette nyttig når to muligheter må utføre de samme instruksjonene.
Det er også klausulen "In Another Way" som blir utført i tilfelle ingen av mulighetene blir oppfylt.
SAMTIDIG SOM
Det er en repeterende funksjon som først evaluerer en tilstand, og hvis den er oppfylt, utfører den en rekke instruksjoner, så evaluerer den tilstanden på nytt, og hvis den er sant, utfører den de samme instruksjonene igjen og fortsetter slik til tilstanden er falsk.
hvis tilstanden er falsk fra begynnelsen, vil den aldri bli utført, og hvis den alltid er sann, vil den bli plassert i en uendelig løkke, for å unngå det siste i instruksjonene, må det være noe som på et tidspunkt forfalsker tilstanden for å kunne avslutte løkken.
syntaksen er:
Mientras [condición a evaluar] Hacer
[instrucciones]
FinMientras
GJENTAKT-TIL
Dette er en funksjon som er veldig lik den forrige, men i motsetning til den forrige kontrollerer denne tilstanden på slutten, det vil si at kommandoen skal utføres minst en gang, også i stedet for å utføre instruksjonen når den er sant, det utfører det mens Hvis vilkåret ikke er oppfylt, men hvis du vil at det skal utføres mens vilkåret er oppfylt, bruk "mens" i stedet for "til".
syntaksen er:
Repetir
[Instrucciones]
hasta que [condicion]
TIL
Denne uttalelsen utfører en instruksjon et avgjørende antall ganger for en variabel, i motsetning til de forrige, endrer denne syklusen verdien av den aktuelle variabelen i seg selv, i tillegg til å ha en veldig kraftig syntaks.
Para [variable] Desde [valor inicial] Hasta [valor Final] Con [paso] Hacer
[instruciones]
FinPara
"Variabel" er variabelen som mottar "startverdi" og utfører instruksjonene, og legger deretter til "variabel" pluss "trinn" og utfører instruksjonene igjen til "variabel" tilsvarer "sluttverdi".
Hvis "med [trinn]" fjernes, vil den som standard vite at "trinn" er lik 1, også hvis [trinn] ikke er spesifisert og "startverdi" er større enn "sluttverdi" vil den gå gjennom den i omvendt rekkefølge, det vil si at "trinn" er -1
UNDERPROSESS / FUNKSJON
En tråd eller funksjon er et program i et annet, og at dette underprogrammet mottar en eller flere verdier, betjener dem og returnerer en annen. Dens syntaks er
SubProceso [variable_de_retorno]<- [nombre de la funcion] ([arg_1],[arg_2],...,[arg_n])
acción 1;
acción 2;
.
.
.
acción n;
FinSubproceso
der "returvariabel" er variabelen som inneholder verdien som returneres av funksjonen "funksjonsnavn" som mottok parametrene "arg_1, arg_2, arg_n" for å utføre dette
ANDRE
Dette er funksjoner som bare er komplementære til de andre og ikke har en kompleks syntaks siden de bare er komplementære funksjoner.
Tøm skjerm
Denne funksjonen tømmer skjermen for et hvilket som helst objekt i tolken
Vent nøkkel
Denne funksjonen venter på at brukeren skal trykke på en tast for å fortsette med programmet
forvente x {For det andre, Millisekunder}
denne funksjonen venter en tid i sekunder eller millisekunder på å fortsette med programmet
PS: beklager forsinkelsen, men jeg var opptatt med andre saker, så jeg kunne ikke skrive
Har du ikke funksjoner for å fange nøkler uten å stoppe utførelsen? For å gjøre noe med bevegelse som er mer tiltalende for 9-åringer, selv om et hangman-spill også kan være morsomt å programmere.
Behandle noe_digo
a <-1;
lateral <-30;
ned <-5;
Mens a = 1 Gjør
Clear Screen;
c <-1;
linje <- "";
gjenta
linje <-line + "";
c <-c + 1;
Inntil c = lateral
linje <-line + "X";
c <-1;
gjenta
Å skrive " ";
c <-c + 1;
Inntil c = ned-1
Skriv linje;
gjenta
Å skrive " ";
c 2 Deretter
ned <-ned-1;
Avslutt ja
"s":
Hvis under <15 Da
ned 2 Så
lateral <-lateral-1;
Avslutt ja
"d":
Hvis lateral <50 Da
lateral <-lateral + 1;
Avslutt ja
"0":
a <-2;
Avslutt sekunder
Avslutt mens
Avslutt prosessen
Vel, mislykkes hvis du går opp, bedre endring linje 23 og 28
-23 Inntil c = 15
+23 Inntil c = 18
y
-28 Hvis ned> 2 Da
+28 Hvis ned> 3 Da
Takk for bidraget, men det har noen problemer som at du åpner en setning i en annen, men den må ende innenfor setningen der den begynte, jeg mener, den kan ikke settes
Behandle noe
a <- 0;
lese til;
hvis a ikke er lik 25 da
mens a ikke er lik 0 do
lese til;
Avslutt ja
slutt mens
når du ser løkken mens du starter inne i "hvis da" -uttalelsen, men slutter utenfor den, er ikke noe slikt mulig.
Jeg setter fortsatt pris på bidraget
Avslutt prosessen
Takk, men jeg tror det er mer et problem å sette koden her, at jeg ikke vet hvordan jeg skal sette den i kodetype, og den kommer ut uten innrykk.
Programmet fungerer bra. Variabelen "a" bruker jeg ganske enkelt for å avslutte sløyfen når brukeren skriver null. Du kan sette en utgang () eller en pause; i den betingede ser den på den og jeg lagrer variabelen. De er alternativer.
Hilsener.
Jeg prøver å endre faner for mellomrom og etiketter
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
Det er fullt av importfeil fra koden min, jeg prøver igjen med faner:
Dette vil være filen 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
Interessant, kommentaren med kodetiketter blir spist, slettet, uansett hva som går mellom, for eksempel mellom linjer
gjenta
Å skrive " ";
c
etter c er det en
og så fortsetter det med 3 Da
ned
Samlet sett er dette ikke pålitelig å sette i henhold til hvilke koder.
Jeg endrer symbolene fra å tilordne til = for å se hvordan det er.
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
Det fortsetter å spise en del av koden, kodekoden mislykkes, den skal la skrivingen være som den er.
Hei beklager at jeg ikke så deg svarte før, men vel
siden du ikke kan publisere koden bra fordi du ikke sender den til meg per post, så du ikke gir så mange vendinger til saken.