Grundlegende Programmierung mit pseint (Teil 3)

Dies ist eine Fortsetzung des Tutorials Grundlegende Programmierung mit pseint (Teil 2)Dieses Mal werde ich erklären, was zum Programmieren notwendig ist.

ZUORDNUNG

Die Zuweisung ist ein Prozess, bei dem eine Variable erstellt und / oder geändert wird, wobei anhand ihrer Kennung, mit der wir auf ihren Speicherplatz zugreifen können, auf sie verwiesen wird.

Die Syntax der Zuweisung lautet:

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

Wobei [Variable] die Variable ist, die den Wert der Auswertung von [Ausdruck] erhält. Beide sind gültig, es spielt also keine Rolle, welches verwendet wird (wenn sie PSeInt richtig konfiguriert haben), aber meiner Meinung nach erstelle ich das erste als das richtige.

Wenn [Variable] vor der Zuweisung nicht vorhanden war, wurde [Variable] erstellt. Wenn es vorhanden war, wird der vorherige Wert zerstört und der neue an seine Stelle gesetzt. Aus diesem Grund wird die Zuordnung als destruktive Operation angesehen.

LESEN

Lesen ist der Prozess, bei dem Daten oder Daten vom Benutzer angefordert werden, um diese Daten in einer Variablen zu speichern.

Die Syntax lautet:

Leer variable_1,variable_2,...,variable_n;

Dabei ist [Variable_ {1,2, n}] die Variable oder Variablen, die den vom Benutzer angegebenen Wert erhalten. Wenn mehr als eine Variable angefordert wird, wird zuerst nach der ersten, dann nach der zweiten usw. gefragt, bis habe alle Werte erhalten.

Dies ist auch eine destruktive Funktion.

SCHREIBEN

Schreiben ist der Prozess, bei dem eine Zeichenfolge und / oder eine oder mehrere Variablen auf den Bildschirm geschrieben werden

Die Syntax lautet:

Escribir expresion_1,expresion_2,...,expresion_n;

Dabei sind [expersion_ {1,2, n}] die Zeichenfolgen und / oder Variablen, die angezeigt werden.

Das Schreiben erhält neben dem Empfang der anzuzeigenden Daten auch die Anweisung "Ohne Überspringen" oder "Ohne Herunterladen", die den Zeilenumbruch vermeiden.

Beim Schreiben werden keine Leerzeichen zwischen den Argumenten eingefügt, wenn Sie Folgendes eingeben:

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

In diesem Fall wird «olamundo» angezeigt, da zwischen «a» und «b» keine Zeichenfolge vorhanden ist, die den Abstand zwischen a und b angibt, sodass die korrekte Darstellung wie folgt lautet:

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

Fügen Sie in diesem Fall »» hinzu, eine Zeichenfolge mit einem Leerzeichen zwischen «Welle» und «Welt», und zeigen Sie dann «Wellenwelt» mit dem Leerzeichen an.

WENN, DANN

Dies ist eine Aussage, die eine gegebene Bedingung bewertet und die Wahrhaftigkeit und / oder Falschheit dieser Bedingung überprüft, dh ob die Bedingung erfüllt ist oder nicht.

Die Syntax lautet:

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

Die Klausel "Sonst" ist nicht obligatorisch. In diesem Fall, wenn die Bedingung falsch ist, ignorieren Sie die Anweisungen und fahren Sie fort, als ob der Satz nicht existiert hätte. In diesem Fall würde es bleiben:

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

Ob die "Failure" -Klausel eingefügt wurde oder nicht, hängt von den Anforderungen dieses Programms ab.

SEGUN

Der Satz, der eine streng numerische Variable auswertet, die mehr als 2 Optionen als Option angibt, ist der Unterschied zu "Wenn-Dann", da der vorherige nur 2 Optionen geben kann.

Die Syntax lautet:

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

Wie Sie nach «Nummer1» sehen können, gibt es ein «:» und danach werden die auszuführenden Anweisungen für den Fall platziert, dass «numerische Variable = Nummer1», im zweiten Beispiel «Nummer2, Nummer3» bedeutet dies, dass Wenn «numerische Variable = Nummer2 oder Nummer3", dann werden "Anweisungen" ausgeführt. Dies ist nützlich, wenn zwei Möglichkeiten dieselben Anweisungen ausführen müssen.

Es gibt auch die Klausel "Auf andere Weise", die für den Fall ausgeführt wird, dass keine der Möglichkeiten erfüllt ist.

WÄHREND

Es ist eine sich wiederholende Funktion, die zuerst eine Bedingung auswertet und dann, wenn sie erfüllt ist, eine Reihe von Anweisungen ausführt, dann die Bedingung neu auswertet. Wenn sie wahr ist, führt sie dieselben Anweisungen erneut aus und fährt so fort, bis die Bedingung falsch ist .

Wenn die Bedingung von Anfang an falsch ist, wird sie niemals ausgeführt, und wenn sie immer wahr ist, wird sie in eine Endlosschleife gestellt. Um die letzte in den Anweisungen zu vermeiden, muss etwas vorhanden sein, das die zu bedingende Bedingung irgendwann verfälscht in der Lage, die Schleife zu beenden.

Die Syntax lautet:

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

WIEDERHOLE BIS

Dies ist eine Funktion, die der vorherigen sehr ähnlich ist, aber im Gegensatz zur vorherigen überprüft diese die Bedingung am Ende, dh der Befehl wird mindestens einmal ausgeführt, auch anstatt die Anweisung auszuführen, wenn dies der Fall ist true, es wird ausgeführt, während Wenn die Bedingung nicht erfüllt ist, Sie jedoch möchten, dass sie ausgeführt wird, während die Bedingung erfüllt ist, verwenden Sie "while" anstelle von "till".

Die Syntax lautet:

Repetir
[Instrucciones] hasta que [condicion]

FÜR

Diese Anweisung führt eine Anweisung eine bestimmte Anzahl von Malen für eine Variable aus. Im Gegensatz zu den vorherigen ändert dieser Zyklus den Wert der betreffenden Variablen selbst und verfügt über eine sehr leistungsfähige Syntax.

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

"Variable" ist die Variable, die "Anfangswert" empfängt und die Anweisungen ausführt, dann "Variable" plus "Schritt" hinzufügt und die Anweisungen erneut ausführt, bis "Variable" gleich "Endwert" ist.

Wenn "mit [Schritt]" entfernt wird, weiß es standardmäßig, dass "Schritt" gleich 1 ist. Auch wenn [Schritt] nicht angegeben ist und "Anfangswert" größer als "Endwert" ist, wird es durchlaufen umgekehrte Reihenfolge, dh "Schritt" ist -1

UNTERPROZESS / FUNKTION

Ein Thread oder eine Funktion ist ein Programm in einem anderen und dieses Unterprogramm empfängt einen oder mehrere Werte, bearbeitet sie und gibt einen anderen zurück. Die Syntax lautet

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

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

Dabei ist "Rückgabevariable" die Variable, die den Wert enthält, der von der Funktion "Funktionsname" zurückgegeben wird, die die Parameter "arg_1, arg_2, arg_n" erhalten hat, um dies auszuführen

ANDERE

Dies sind Funktionen, die nur zu den anderen komplementär sind und keine komplexe Syntax haben, da sie nur komplementäre Funktionen sind.

Bildschirm löschen

Diese Funktion löscht den Bildschirm von allen Objekten im Interpreter

Warte-Taste

Diese Funktion wartet darauf, dass der Benutzer eine Taste drückt, um mit dem Programm fortzufahren

Warten Sie X {Zweitens Millisekunden}

Diese Funktion wartet eine Zeit in Sekunden oder Millisekunden, um mit dem Programm fortzufahren

PS: Entschuldigung für die Verzögerung, aber ich war mit anderen Dingen beschäftigt, so dass ich nicht schreiben konnte


Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: Miguel Ángel Gatón
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.

  1.   Guille sagte

    Sie haben keine Funktionen zum Erfassen von Schlüsseln, ohne die Ausführung anzuhalten? Für etwas mit Bewegung, das für 9-Jährige attraktiver ist, obwohl es auch Spaß machen kann, ein Henker-Spiel zu programmieren.

    Verarbeite etwas_digo
    a <-1;
    lateral <-30;
    unten <-5;
    Während a = 1 Do.
    Bildschirm löschen;
    c <-1;
    Zeile <- "";
    Repetir
    line <-line + "";
    c <-c + 1;
    Bis c = lateral
    Zeile <-Zeile + "X";
    c <-1;
    Repetir
    Schreiben " ";
    c <-c + 1;
    Bis c = down-1
    Zeile schreiben;
    Repetir
    Schreiben " ";
    c 2 Dann
    down <-down-1;
    Ende ja
    "s":
    Wenn unter <15 Dann
    runter 2 Dann
    lateral <-lateral-1;
    Ende ja
    "d":
    Wenn seitlich <50 Dann
    lateral <-lateral + 1;
    Ende ja
    "0":
    a <-2;
    Sekunden beenden
    End While
    EndProcess

  2.   Guille sagte

    Wenn Sie nach oben gehen, sollten Sie die Zeilen 23 und 28 ändern
    -23 Bis c = 15
    +23 Bis c = 18
    y
    -28 Wenn unten> 2 Dann
    +28 Wenn unten> 3 Dann

    1.    xnmm sagte

      Vielen Dank für den Beitrag, aber es gibt einige Probleme, dass Sie einen Satz in einem anderen öffnen, aber er muss in dem Satz enden, in dem er begonnen hat. Ich meine, er kann nicht gesetzt werden

      Verarbeiten Sie etwas
      a <- 0;
      lesen zu;
      wenn a nicht gleich 25 ist, dann
      während a ungleich 0 ist do
      lesen zu;
      Ende ja
      Ende während

      Wenn Sie die Schleife sehen, während Sie innerhalb der "if then" -Anweisung beginnen, aber außerhalb davon enden, ist so etwas nicht möglich.

      Ich schätze den Beitrag immer noch
      Prozess beenden

      1.    Guille sagte

        Danke, aber ich denke, es ist eher ein Problem, den Code hier zu platzieren, dass ich nicht weiß, wie ich ihn in den Codetyp einfügen soll, und er wird ohne Einrückung ausgegeben.

        Das Programm funktioniert gut. Die Variable "a" benutze ich einfach, um die Schleife zu verlassen, wenn der Benutzer eine Null eingibt. Sie könnten einen exit () oder eine Pause setzen; in der Bedingung sieht es an und ich speichere die Variable. Sie sind Optionen.

        Grüße.

      2.    Guille sagte

        Ich werde versuchen, die Tabulatoren für Leerzeichen und Beschriftungen zu ändern 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 sagte

        Das ist voll von Importfehlern aus meinem Code, ich werde es noch einmal mit Tabs versuchen:
        Dies wäre die Datei 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 sagte

        Interessanterweise wird der Kommentar mit Code-Labels gegessen, gelöscht, was auch immer dazwischen liegt, zum Beispiel zwischen Zeilen
        Repetir
        Schreiben " ";
        c
        nach dem c gibt es ein
        und dann geht es weiter mit 3 Dann
        abajo
        Insgesamt ist dies nicht zuverlässig, um nach welchen Codes zu setzen.

  3.   Guille sagte

    Ich ändere die Symbole von Zuweisung zu =, um zu sehen, wie.

    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 sagte

      Es frisst immer wieder einen Teil des Codes, das Code-Tag schlägt fehl, es sollte die Schrift unverändert lassen.

      1.    xnmm sagte

        Hallo, tut mir leid, dass du vorher nicht geantwortet hast, aber gut
        da Sie den Code nicht gut veröffentlichen können, weil Sie ihn mir nicht per Post senden, geben Sie der Angelegenheit nicht so viele Wendungen.