Tai yra mokymo programos tęsinys Pagrindinis programavimas su pseint (2 dalis), šį kartą paaiškinsiu, ką reikia programuoti.
UŽDUOTIS
Priskyrimas yra procesas, kurio metu sukuriamas ir (arba) modifikuojamas kintamasis, nurodant jį naudojant jo identifikatorių, kuriuo galime pasiekti jo atminties vietą.
užduoties sintaksė yra:
[variable]<- [expresion];
[variable]=[expresion];
Kur [kintamasis] yra kintamasis, kuris gauna įvertinimo [išraiška] vertę. Abu jie galioja, todėl nesvarbu, kuris iš jų naudojamas (jei jie tinkamai sukonfigūravo „PSeInt“), bet, mano nuomone, aš sukuriu pirmąjį kaip teisingą.
Jei [kintamasis] nebuvo prieš priskyrimą, buvo sukurtas [kintamasis], jei jis egzistavo, ankstesnė reikšmė yra sunaikinta, o naujoji dedama į jos vietą. Dėl šios priežasties kartografavimas laikomas destruktyvia operacija.
SKAITYMAS
Skaitymas yra procesas, kurio metu iš vartotojo prašoma duomenų ar duomenų, kad šie duomenys būtų saugomi kintamajame.
jo sintaksė yra:
Leer variable_1,variable_2,...,variable_n;
kur [kintamas_ {1,2, n}] yra kintamasis ar kintamieji, gaunantys vartotojo nurodytą vertę, jei prašoma daugiau nei vieno kintamojo, jis pirmiausia paprašys pirmojo, po to antrojo ir t. t. gavo visas vertybes.
Tai taip pat yra destruktyvi funkcija.
RAŠYMAS
Rašymas yra procesas, kurio metu ekrane užrašoma simbolių eilutė ir (arba) vienas ar daugiau kintamųjų
sintaksė yra:
Escribir expresion_1,expresion_2,...,expresion_n;
kur [expersion_ {1,2, n}] yra simbolių eilutės ir (arba) kintamieji, kurie bus rodomi.
Rašant ne tik gaunamus duomenis, kuriuos reikia įdėti į ekraną, taip pat gaunama instrukcija „Nepraleidžiant“ arba „Nenusileidžiant žemyn“, kuri vengia šuolio iš eilės.
Rašymas neprideda tarpų tarp argumentų, ty jei jis dedamas:
Proceso SinTitulo
a<- "ola";
b<- "mundo";
Escribir a,b;
FinProceso
šiuo atveju jis rodys „olamundo“, nes tarp „a“ ir „b“ nėra simbolių eilutės, nurodančios tarpą tarp a ir b, todėl, kad jis būtų rodomas teisingai, jis parašytas taip:
Proceso SinTitulo
a<- "ola";
b<- "mundo";
Escribir a,"",b;
FinProceso
šiuo atveju pridėkite »», kuri yra simbolių eilutė, turinti erdvę, kuri yra tarpas tarp «bangos» ir «pasaulio», ir tada ji rodys «bangų pasaulį» su tarpu.
JEI TADA
Tai sakinys, įvertinantis tam tikrą sąlygą ir tikrinantis minėtos sąlygos teisingumą ir (arba) melagingumą, tai yra, jei sąlyga yra įvykdyta ar ne.
Jo sintaksė yra:
Si [condición a evaluar] Entonces
[instrucciones por verdadero]
Sino
[instrucciones por falso]
FinSi
Sąlyga „Kita“ nėra privaloma, šiuo atveju, jei sąlyga yra klaidinga, nepaisykite nurodymų ir tęskite, tarsi sakinio nebūtų, tokiu atveju jis liktų:
Si [condición a evaluar] Entonces
[instrucciones por verdadero]
FinSi
Ar buvo įtraukta sąlyga „Nesėkmė“, ar ne, priklauso nuo tos programos poreikių.
PAGAL PAGAL
Sakinys, nes jis vertina griežtai skaitinį kintamąjį, kuris suteikia daugiau nei 2 variantus kaip variantą, tai yra skirtumas nuo „Jei-tada“, nes ankstesnis gali pateikti tik 2 variantus.
Sintaksė yra:
Segun [variable numérica] Hacer
[número1]: [instrucciones]
[número2],[número3]: [instrucciones]
[...]
De Otro Modo: [instrucciones]
FinSegun
Kaip matote po „skaičius1“, yra „:“, o po to instrukcijos, kurias reikia atlikti, yra „skaitinis kintamasis = skaičius1“, antrame pavyzdyje tai yra „skaičius2, skaičius3“, tai reiškia, kad jei «skaitinis kintamasis = skaičius2 arba skaičius3», tada bus vykdomos „instrukcijos“, tai naudinga, kai dvi galimybės turi vykdyti tas pačias instrukcijas.
Taip pat yra sąlyga „Kitu būdu“, kuri vykdoma tuo atveju, jei neišnaudojama nė viena iš galimybių.
DABAR
Tai yra pasikartojanti funkcija, kuri pirmiausia įvertina sąlygą, o tada, jei ji įvykdoma, įvykdo nurodymų seką, tada ji iš naujo įvertina sąlygą ir, jei tiesa, vėl vykdo tas pačias instrukcijas ir tęsia taip, kol sąlyga yra klaidinga .
jei sąlyga yra neteisinga nuo pat pradžių, ji niekada nebus vykdoma ir, jei ji visada teisinga, ji bus dedama į begalinę kilpą, kad išvengtumėte paskutinės instrukcijose, turi būti kažkas, kas tam tikru momentu klastoja įvykdytiną sąlygą galintis nutraukti kilpą.
jo sintaksė yra:
Mientras [condición a evaluar] Hacer
[instrucciones]
FinMientras
KARTOTI - IKI
Tai yra funkcija, labai panaši į ankstesnę, tačiau skirtingai nei ankstesnė, ši tikrina sąlygą pabaigoje, tai yra, komanda bus vykdoma mažiausiai 1 kartą, taip pat užuot vykdžius komandą, kai ji yra tiesa, ji ją vykdo, kol Jei sąlyga netenkinama, bet jei norite, kad ji būtų įvykdyta, kol sąlyga įvykdyta, vietoj „iki“ naudokite „while“.
jo sintaksė yra:
Repetir
[Instrucciones]
hasta que [condicion]
DĖL
Šis teiginys vykdo nurodymą, nustatantį daugybę kartų kintamajam, skirtingai nei ankstesni, šis ciklas pats keičia kintamojo vertę ir turi labai galingą sintaksę.
Para [variable] Desde [valor inicial] Hasta [valor Final] Con [paso] Hacer
[instruciones]
FinPara
„Kintamasis“ yra kintamasis, kuris gauna „pradinę vertę“ ir vykdo instrukcijas, tada prideda „kintamasis“ plius „žingsnis“ ir vėl vykdo instrukcijas, kol „kintamasis“ bus lygus „galutinei vertei“.
jei pašalinamas „su [žingsnis]“, tai pagal numatytuosius nustatymus jis žinos, kad „žingsnis“ yra lygus 1, taip pat jei [žingsnis] nenurodytas ir „pradinė vertė“ yra didesnė už „galutinę vertę“, jis pereis jį atvirkštine tvarka, tai yra, „Žingsnis“ yra -1
POVEIKIS / FUNKCIJA
Gija ar funkcija yra programa kitoje programoje ir kad ši paprogramė gauna vieną ar daugiau reikšmių, jas valdo ir grąžina kitas. Jo sintaksė yra
SubProceso [variable_de_retorno]<- [nombre de la funcion] ([arg_1],[arg_2],...,[arg_n])
acción 1;
acción 2;
.
.
.
acción n;
FinSubproceso
kur „return kintamasis“ yra kintamasis, kuriame yra reikšmė, kurią grąžino funkcija „function name“, kuri gavo parametrus „arg_1, arg_2, arg_n“, kad tai įvykdytų
KITOS
Tai funkcijos, kurios tik papildo kitas ir neturi sudėtingos sintaksės, nes jos yra tik viena kitą papildančios funkcijos.
Išvalyti ekraną
Ši funkcija išvalo bet kurio vertėjo objekto ekraną
Palaukite raktą
Ši funkcija laukia, kol vartotojas paspaus mygtuką, kad galėtų tęsti programą
Palauk x {Antra, milisekundės}
ši funkcija laukia laiko per kelias sekundes arba milisekundes, kad galėtų tęsti programą
PS: atsiprašau už vėlavimą, bet buvau užsiėmęs kitais reikalais, todėl negalėjau rašyti
Neturite funkcijų, kad užfiksuotumėte klavišus nesustabdydami vykdymo? Už tai, kad darai kažką judesiu, kuris yra patrauklesnis 9-mečiams, nors pakaruoklių žaidimas taip pat gali būti įdomus programuoti.
Apdoroti kažką_digo
a <-1;
šoninis <-30;
žemyn <-5;
Nors a = 1 Atlikite
Išvalyti ekraną;
c <-1;
eilutė <- "";
Pakartokite
eilutė <-line + "";
c <-c + 1;
Kol c = šoninis
eilutė <-line + "X";
c <-1;
Pakartokite
Rašyti " ";
c <-c + 1;
Kol c = žemyn-1
Rašyti eilutę;
Pakartokite
Rašyti " ";
c 2 Tada
žemyn <-down-1;
Pabaiga taip
„s“:
Jei žemiau <15 Tada
žemyn 2 Tada
šoninis <-šoninis-1;
Pabaiga taip
„d“:
Jei šoninis <50 Tada
šoninis <-šoninis + 1;
Pabaiga taip
„0“:
a <-2;
Pabaigos sekundės
Pabaiga kol
Baigti procesą
Gerai nepavyksta, jei eini aukštyn, geriau pakeisk 23 ir 28 eilutes
-23 Iki c = 15
+23 Iki c = 18
y
-28 Jei žemyn> 2 Tada
+28 Jei žemyn> 3 Tada
Ačiū už indėlį, bet jis turi tam tikrų problemų, pavyzdžiui, kad atidarote sakinį kitame, bet jis turi baigtis tame sakinyje, kur jis prasidėjo, turiu omenyje, kad jo negalima įdėti
Apdorok ką nors
a <- 0;
perskaityti;
jei a nėra lygus 25, tada
o a nėra lygus 0 do
perskaityti;
Pabaiga taip
pabaigos, kol
kai matote kilpą pradedant sakinį „jei tada“, bet baigiasi už jo ribų, kažkas panašaus neįmanoma.
Aš vis dar vertinu indėlį
Baigti procesą
Ačiū, bet manau, kad čia daugiau problema įdėti kodą, kad aš nežinau, kaip jį įdėti į kodo tipą, ir jis išeina be įtraukų.
Programa veikia gerai. Kintamąjį „a“ aš tiesiog naudoju norėdamas išeiti iš ciklo, kai vartotojas įveda nulį. Galite įdėti išėjimą () arba pertrauką; sąlyginiame jis žiūri į jį ir išsaugo kintamąjį Jie yra variantai.
Sveikinimai.
Pabandysiu pakeisti tarpų ir etikečių skirtukus
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
Čia pilna importavimo klaidų iš mano kodo, bandysiu dar kartą naudodamas skirtukus:
Tai būtų failas 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
Įdomu tai, kad komentaras su kodo etiketėmis yra valgomas, ištrinamas, kad ir kas eitų tarp jų, pavyzdžiui, tarp eilučių
Pakartokite
Rašyti " ";
c
po c yra a
ir tada jis tęsiasi 3 Tada
žemyn
Apskritai tai nėra patikima pateikti pagal kokius kodus.
Simbolius pakeičiu iš priskyrimo =, norėdamas pamatyti, kaip.
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
Ji nuolat valgo dalį kodo, kodo žyma nepavyksta, ji turėtų palikti rašymą taip, kaip yra.
Sveiki, atsiprašau, kad nemačiau, kad atsakėte anksčiau, bet gerai
kadangi negalite gerai paskelbti kodo, nes jo man nesiuntėte paštu, todėl nesuteikiate tiek daug klausimo.