Perusohjelmointi pseintillä (osa 3)

Tämä on jatkoa opetusohjelmalle Perusohjelmointi pseintillä (osa 2), selitän tällä kertaa, mikä on tarpeen ohjelmoida.

TEHTÄVÄ

Tehtävä on prosessi, jossa muuttuja luodaan ja / tai muokataan viitaten siihen sen tunnisteen avulla, jolla voimme käyttää sen muistitilaa.

tehtävän syntaksi on:

[variable]<- [expresion];
[variable]=[expresion];

Missä [muuttuja] on muuttuja, joka vastaanottaa [lausekkeen] arvioinnin arvon. Molemmat ovat kelvollisia, joten sillä ei ole väliä mitä käytetään (jos PSeInt on määritetty oikein), mutta mielestäni ensimmäinen on oikea.

Jos [muuttujaa] ei ollut olemassa ennen tehtävää, [muuttuja] luotiin, jos se oli olemassa, edellinen arvo tuhoutuu ja uusi sijoitetaan sen tilalle. Tästä syystä kartoitusta pidetään tuhoavana operaationa.

Lectura

Lukeminen on prosessi, jossa dataa tai dataa pyydetään käyttäjältä näiden tietojen tallentamiseksi muuttujaan.

sen syntakse on:

Leer variable_1,variable_2,...,variable_n;

missä [muuttuja_ {1,2, n}] ovat muuttuja tai muuttujat, jotka vastaanottavat käyttäjän antaman arvon, jos useita muuttujia pyydetään, se kysyy ensin ensimmäistä, sitten toista ja niin edelleen, kunnes ovat saaneet kaikki arvot.

Tämä on myös tuhoisa toiminto.

KIRJOITTAMINEN

Kirjoittaminen on prosessi, jossa merkkijono ja / tai yksi tai useampi muuttuja kirjoitetaan ruudulle

syntaksi on:

Escribir expresion_1,expresion_2,...,expresion_n;

missä [expersion_ {1,2, n}] ovat näytettävät merkkijonot ja / tai muuttujat.

Ruudulle kirjoitettavien tietojen vastaanottamisen lisäksi kirjoittaminen saa myös ohjeet "Ohittamatta" tai "Lataamatta", jotka välttävät rivin hyppäämisen.

Kirjoittaminen ei lisää välejä argumenttien väliin, toisin sanoen jos se asetetaan:

Proceso SinTitulo
a<- "ola";
b<- "mundo";
Escribir a,b;
FinProceso

tässä tapauksessa se näyttää «olamundo», koska «a»: n ja «b: n välissä ei ole merkkijonoa, joka osoittaisi tilan a: n ja b: n välillä, joten se näytetään oikein ja se kirjoitetaan seuraavasti:

Proceso SinTitulo
a<- "ola";
b<- "mundo";
Escribir a,"",b;
FinProceso

tässä tapauksessa lisää »», joka on merkkijono, jolla on väli, joka on väli «aallon» ja «maailman» välillä, ja sitten se näyttää «aaltomaailman» välilyönnin kanssa.

JOS SITTEN

Tämä on lausunto, joka arvioi tietyn ehdon ja tarkistaa mainitun ehdon totuudenmukaisuuden ja / tai vääryyden, toisin sanoen jos ehto täyttyy tai ei.

Sen syntakse on:

Si [condición a evaluar] Entonces
[instrucciones por verdadero] Sino
[instrucciones por falso] FinSi

"Muut" -lauseke ei ole pakollinen, tässä tapauksessa, jos ehto on väärä, ohita ohjeet ja jatka kuin ikään kuin virkettä ei olisi olemassa, tässä tapauksessa se pysyisi:

Si [condición a evaluar] Entonces
[instrucciones por verdadero] FinSi

"Epäonnistuminen" -lausekkeen sijoittaminen riippuu kyseisen ohjelman tarpeista.

VASTAAN

Lause, koska se arvioi tiukasti numeerisen muuttujan, joka antaa vaihtoehtona enemmän kuin 2 vaihtoehtoa, tämä eroaa "Jos-sitten" -kohdasta, koska edellinen voi antaa vain 2 vaihtoehtoa.

Syntaksi on:

Segun [variable numérica] Hacer
[número1]: [instrucciones] [número2],[número3]: [instrucciones] [...] De Otro Modo: [instrucciones] FinSegun

Kuten "numero1": n jälkeen näkyy, on ":" ja sen jälkeen suoritettavat ohjeet sijoitetaan siihen tapaukseen, että "numeerinen muuttuja = luku1", toisessa esimerkissä se on "numero2, luku3", mikä tarkoittaa, että Jos "numeerinen muuttuja = numero2 tai numero3" suoritetaan "ohjeet", tämä on hyödyllistä, kun kahden mahdollisuuden on suoritettava samat ohjeet.

Siellä on myös lauseke "Toisella tavalla", joka toteutetaan siinä tapauksessa, että mikään mahdollisuuksista ei toteudu.

SILLÄ AIKAA

Se on toistuva toiminto, joka ensin arvioi ehdon ja sitten, jos se täyttyy, se suorittaa sarjan käskyjä, sitten se arvioi ehdon uudelleen ja jos se on totta, se suorittaa uudet samat ohjeet ja jatkaa näin, kunnes ehto on väärä.

Jos ehto on väärä alusta alkaen, sitä ei koskaan suoriteta, ja jos se on aina totta, se sijoitetaan loputtomaan silmukkaan, jotta vältetään ohjeiden viimeinen, on oltava jotain, joka jossain vaiheessa väärentää ehdotonta pystyy lopettamaan silmukan.

sen syntakse on:

Mientras [condición a evaluar] Hacer
[instrucciones] FinMientras

TOISTA-KUN AIKAAN

Tämä on funktio, joka on hyvin samanlainen kuin edellinen, mutta toisin kuin edellinen, tämä tarkistaa lopun ehdon, eli komento suoritetaan vähintään kerran, myös sen sijaan, että suoritettaisiin komento, kun se on true, se suorittaa sen, kun ehto ei täyty, mutta jos haluat sen suoritettavan, kun ehto täyttyy, käytä "while" eikä "asti".

sen syntakse on:

Repetir
[Instrucciones] hasta que [condicion]

FOR

Tämä käsky suorittaa käskyn muuttujalle määrittävän määrän kertoja, toisin kuin edelliset, tämä sykli muuttaa itse kyseisen muuttujan arvoa sekä erittäin voimakkaan syntaksin.

Para [variable] Desde [valor inicial] Hasta [valor Final] Con [paso] Hacer
[instruciones] FinPara

"Muuttuja" on muuttuja, joka saa "alkuarvon" ja suorittaa ohjeet, lisää sitten "muuttujan" plus "vaiheen" ja suorittaa ohjeet uudelleen, kunnes "muuttuja" on "lopullinen arvo".

Jos "kanssa [vaihe]" poistetaan, se oletusarvoisesti tietää, että "askel" on yhtä kuin 1, myös jos [askelta] ei ole määritetty ja "alkuarvo" on suurempi kuin "lopullinen arvo", se käy sen läpi päinvastaisessa järjestyksessä, eli "Vaihe" on -1

ALIKÄSITTELY / TOIMINTO

Lanka tai toiminto on ohjelma toisessa ja että tämä alaohjelma vastaanottaa yhden tai useamman arvon, käyttää niitä ja palauttaa toisen. Sen syntaksia on

SubProceso [variable_de_retorno]<- [nombre de la funcion] ([arg_1],[arg_2],...,[arg_n])

acción 1;
acción 2;
.
.
.
acción n;
FinSubproceso

missä "return variable" on muuttuja, joka sisältää arvon "function name", joka vastaanotti parametrit "arg_1, arg_2, arg_n" suorittamaan tämän

MUUT

Nämä ovat toimintoja, jotka täydentävät vain muita ja joilla ei ole monimutkaista syntaksia, koska ne ovat vain täydentäviä toimintoja.

Tyhjennä näyttö

Tämä toiminto tyhjentää kaiken tulkin näytön

Odota avain

Tämä toiminto odottaa käyttäjän painavan näppäintä jatkaakseen ohjelmaa

odottaa x {Toiseksi, millisekuntia}

tämä toiminto odottaa aikaa sekunneissa tai millisekunneissa jatkaakseen ohjelmaa

PS: anteeksi viivästyksestä, mutta olin kiireinen muissa asioissa, joten en voinut kirjoittaa


10 kommenttia, jätä omasi

Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastuussa tiedoista: Miguel Ángel Gatón
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.

  1.   Guille dijo

    Eikö sinulla ole toimintoja avainten sieppaamiseen keskeyttämättä suoritusta? Kun teet jotain liikkumisella, joka on houkuttelevampi 9-vuotiaille, vaikka hirsipuu-peli voi olla myös hauskaa ohjelmoida.

    Käsittele jotain_digoa
    a <-1;
    sivusuunnassa <-30;
    alas <-5;
    Kun a = 1 Tee
    Tyhjennä näyttö;
    c <-1;
    rivi <- "";
    toisto
    rivi <-linja + "";
    c <-c + 1;
    Kunnes c = sivusuunnassa
    viiva <-linja + "X";
    c <-1;
    toisto
    Kirjoittaa " ";
    c <-c + 1;
    Kunnes c = alas-1
    Kirjoita rivi;
    toisto
    Kirjoittaa " ";
    c 2 Sitten
    alas <-alennus-1;
    Lopeta kyllä
    "s":
    Jos alle <15 Sitten
    alas 2 sitten
    lateraalinen <sivu-1;
    Lopeta kyllä
    "d":
    Jos sivusuunnassa <50 Sitten
    sivusuunnassa <puoleinen + 1;
    Lopeta kyllä
    "0":
    a <-2;
    Lopeta sekunnit
    Lopeta kun
    Lopeta prosessi

  2.   Guille dijo

    Hyvin epäonnistuu, jos nouset, vaihda paremmin linjat 23 ja 28
    -23 Kunnes c = 15
    +23 Kunnes c = 18
    y
    -28 Jos alas> 2 Sitten
    +28 Jos alas> 3 Sitten

    1.    xnmm dijo

      Kiitos panoksesta, mutta sillä on joitain ongelmia, kuten että avaat yhden lauseen toisessa, mutta sen on lopputtava siinä lauseessa, josta se on alkanut, tarkoitan, että sitä ei voida laittaa

      Käsittele jotain
      a <- 0;
      lukea;
      jos a ei ole yhtä suuri kuin 25, niin
      kun a ei ole yhtä suuri kuin 0 do
      lukea;
      Lopeta kyllä
      loppu samalla

      kuten näet silmukan aloittaessasi "jos niin" -lausekkeen sisällä mutta päättyen sen ulkopuolelle, jotain tällaista ei ole mahdollista.

      Arvostan edelleen panosta
      Lopeta prosessi

      1.    Guille dijo

        Kiitos, mutta mielestäni on enemmän ongelmaa laittaa koodi tänne, en tiedä miten laittaa se koodityyppiin ja se tulee ulos ilman sisennystä.

        Ohjelma toimii hyvin. Muuttujaa "a" käytän yksinkertaisesti poistuaksesi silmukasta, kun käyttäjä kirjoittaa nollan. Voit laittaa poistumisen () tai tauon; ehdollisessa se tarkastelee sitä ja tallennan muuttujan. Ne ovat vaihtoehtoja.

        Tervehdys.

      2.    Guille dijo

        Yritän vaihtaa välilehtien välilyöntejä ja tarroja 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

      3.    Guille dijo

        Se on täynnä tuontivirheitä koodistani, yritän uudelleen välilehdillä:
        Tämä olisi tiedosto 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

      4.    Guille dijo

        Mielenkiintoista on, että kooditunnisteella varustettu kommentti syödään, poistetaan, mitä väliin menee, esimerkiksi rivien väliin
        toisto
        Kirjoittaa " ";
        c
        c: n jälkeen on a
        ja sitten se jatkuu 3: lla sitten
        alas
        Kaiken kaikkiaan tätä ei ole luotettavaa laittaa minkä koodien mukaan.

  3.   Guille dijo

    Muutan symboleja määrittämättä = = nähdäksesi kuinka se on.

    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

    1.    Guille dijo

      Se syö jatkuvasti osan koodista, kooditunniste epäonnistuu, sen pitäisi jättää kirjoittaminen sellaisenaan.

      1.    xnmm dijo

        Hei anteeksi, ettet nähnyt vastausta aiemmin, mutta hyvin
        koska et voi julkaista koodia hyvin, koska et lähetä sitä minulle postitse, joten et anna niin paljon käännöksiä asiaan.