Programowanie podstawowe z pseint (część 3)

Jest to kontynuacja tutoriala Podstawowe programowanie za pomocą pseint (część 2), tym razem wyjaśnię co jest potrzebne do programowania.

ZADANIE

Przypisanie to proces, w którym tworzona i/lub modyfikowana jest zmienna, odwołując się do niej za pomocą jej identyfikatora, za pomocą którego możemy uzyskać dostęp do jej przestrzeni pamięci.

Składnia przypisania jest następująca:

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

Gdzie [zmienna] jest zmienną, która otrzymuje wartość oceniającą [wyrażenie]. Obydwa są prawidłowe, więc nie ma znaczenia, który z nich zostanie użyty (jeśli poprawnie skonfigurowano PSeInt), ale moim zdaniem uważam, że pierwszy jest poprawny.

Jeżeli przed przypisaniem nie istniała [zmienna], zostanie utworzona [zmienna], jeżeli istniała, poprzednia wartość zostanie zniszczona, a na jej miejsce zostanie umieszczona nowa. Z tego powodu przypisanie jest uważane za operację destrukcyjną.

CZYTANIE

Odczyt to proces, podczas którego użytkownik żąda danych lub danych w celu zapisania tych danych w zmiennej.

Jego składnia jest następująca:

Leer variable_1,variable_2,...,variable_n;

gdzie [zmienna_{1,2,n}] to zmienna lub zmienne, które otrzymują wartość podaną przez użytkownika, w przypadku żądania więcej niż jednej zmiennej, najpierw zapyta o pierwszą, potem o drugą i tak dalej, aż otrzymawszy wszystkie wartości.

Jest to również funkcja destrukcyjna.

PISANIE

Pisanie to proces, podczas którego na ekranie zapisywany jest ciąg znaków i/lub jedna lub więcej zmiennych.

składnia jest następująca:

Escribir expresion_1,expresion_2,...,expresion_n;

gdzie [expersion_{1,2,n}] to ciągi znaków i/lub zmienne, które będą wyświetlane.

Zapis oprócz otrzymania danych do wyświetlenia na ekranie otrzymuje także instrukcję „Bez pomijania” lub „Bez pobierania”, która zapobiega łamaniu linii.

Pisanie nie dodaje spacji między argumentami, to znaczy, jeśli umieścisz:

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

W tym przypadku wyświetli się „olamundo”, ponieważ pomiędzy „a” i „b” nie ma ciągu znaków wskazujących odstęp między a i b, aby było poprawnie wyświetlane, jest napisane w ten sposób:

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

W tym przypadku dodaj » » czyli ciąg znaków zajmujący spację będącą odstępem pomiędzy „falą” a „światem” i wówczas wyświetli się „świat fali” ze spacją.

JEŚLI NASTĘPNIE

Jest to stwierdzenie, które ocenia dany warunek i sprawdza prawdziwość i/lub fałszywość tego warunku, czyli czy warunek jest spełniony, czy nie.

Jego składnia to:

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

Klauzula „Else” nie jest obowiązkowa. W takim przypadku, jeśli warunek jest fałszywy, zignoruj ​​instrukcje i kontynuuj tak, jakby zdanie nie istniało, w tym przypadku byłoby to:

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

To, czy klauzula „Else” zostanie umieszczona, czy nie, zależy od potrzeb danego programu.

WEDŁUG

Zdanie as ocenia zmienną ściśle numeryczną, która daje jako opcję więcej niż 2 możliwości wyboru, co odróżnia je od „If-Then”, ponieważ poprzednie może dać tylko 2 opcje.

Składnia jest następująca:

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

Jak widać po "liczbie1" znajduje się ":", a po nim umieszczane są instrukcje, które należy wykonać w danym przypadku, że "zmienna numeryczna = liczba1", w drugim przykładzie jest "liczba2, liczba3" to oznacza, że ​​jeśli „zmienna numeryczna = liczba2 lub liczba3”, wówczas zostaną wykonane „instrukcje”, jest to przydatne, gdy 2 możliwości muszą wykonać te same instrukcje.

Istnieje również klauzula „Inny sposób”, która jest wykonywana w przypadku, gdy żadna z możliwości nie zostanie spełniona.

CHWILA

Jest to funkcja powtarzalna, która najpierw ocenia warunek, a następnie, jeśli jest spełniony, wykonuje serię instrukcji, następnie ponownie ocenia warunek i jeśli jest prawdziwy, ponownie wykonuje te same instrukcje i kontynuuje w ten sposób, aż warunek stanie się fałszywy .

Jeżeli warunek od początku będzie fałszywy to nigdy nie zostanie wykonany, a jeżeli zawsze będzie prawdziwy to zostanie umieszczony w nieskończonej pętli.Aby uniknąć tego drugiego w instrukcjach musi być coś co w pewnym momencie zafałszuje warunek punkt, aby zakończyć pętlę.

Jego składnia jest następująca:

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

POWTARZAJ, AŻ

Jest to funkcja bardzo podobna do poprzedniej, jednak w odróżnieniu od poprzedniej sprawdza warunek na końcu, co oznacza, że ​​polecenie zostanie wykonane przynajmniej raz i zamiast wykonywać instrukcję, gdy jest ona prawdziwa, wykonuje it, podczas gdy warunek nie jest spełniony, ale jeśli chcesz, aby został wykonany, gdy warunek jest spełniony, użyj „while” zamiast „aż”.

Jego składnia jest następująca:

Repetir
[Instrucciones] hasta que [condicion]

Dla

Ta instrukcja wykonuje instrukcję dla zmiennej określoną liczbę razy.W odróżnieniu od poprzednich, ten cykl sam zmienia wartość danej zmiennej i ma bardzo potężną składnię.

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

„zmienna” to zmienna, która otrzymuje „wartość początkową” i wykonuje instrukcje, następnie dodaje „zmienną” plus „krok” i ponownie wykonuje instrukcje, aż „zmienna” osiągnie „wartość końcową”.

Jeśli „z [krokiem]” zostanie usunięte, domyślnie będzie wiedzieć, że „krok” jest równy 1, także jeśli [krok] nie zostanie określony, a „wartość początkowa” jest większa niż „wartość końcowa”, przejdzie przez to w kolejność odwrotna, czyli «krok» wynosi -1

GWINT/FUNKCJA

Podproces lub funkcja to program znajdujący się w innym podprogramie, który otrzymuje jedną lub więcej wartości, obsługuje je i zwraca inną. Jego składnia jest taka

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

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

gdzie „zmienna zwracana” to zmienna zawierająca wartość zwróconą przez funkcję „nazwa funkcji”, która otrzymała parametry „arg_1,arg_2,arg_n” w celu wykonania tej

INNE

Są to funkcje, które jedynie uzupełniają inne i nie mają złożonej składni, ponieważ są jedynie funkcjami uzupełniającymi.

Czysty ekran

Ta funkcja czyści ekran interpretera ze wszelkich obiektów

Poczekaj, klucz

Funkcja ta czeka, aż użytkownik naciśnie klawisz w celu kontynuowania programu

Czekaj X {Po drugie, milisekundy}

Ta funkcja oczekuje czasu w sekundach lub milisekundach na kontynuację programu

PS: Przepraszam za zwłokę, ale byłem zajęty innymi sprawami i nie mogłem pisać


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.

  1.   Guille powiedział

    Czy nie masz funkcji do przechwytywania kluczy bez zatrzymywania wykonywania? Za zrobienie czegoś, co jest bardziej atrakcyjne ruchowo dla 9-letnich dzieci, chociaż programowanie gry w kata może też być świetną zabawą.

    proces coś_powiedzieć
    a<-1;
    boczne<-30;
    w dół<-5;
    Podczas gdy a=1 Zrób
    Czysty ekran;
    c<-1;
    linia<-"";
    Powtórz
    linia<-linia+" ";
    c<-c+1;
    Aż do c=lateral
    linia<-linia+"X";
    c<-1;
    Powtórz
    Pisać " ";
    c<-c+1;
    Do c=down-1
    Napisz linię;
    Powtórz
    Pisać " ";
    c 2 Następnie
    dół<-dół-1;
    Koniec tak
    "S":
    Jeśli poniżej < 15 To
    w dół 2 Następnie
    strona<-strona-1;
    Koniec tak
    "D":
    Jeśli boczne < 50 To
    bok<-bok+1;
    Koniec tak
    „0”:
    a<-2;
    Zakończ zgodnie
    Zakończ podczas
    Koniec procesu

  2.   Guille powiedział

    Cóż, poniesiesz porażkę, jeśli pójdziesz w górę, lepiej zmień linie 23 i 28
    -23 Do c=15
    +23 Do c=18
    y
    -28 Jeśli poniżej > 2 Wtedy
    +28 Jeśli poniżej > 3 Wtedy

    1.    xnmm powiedział

      Dziękuję za wkład, ale występują pewne problemy, takie jak otwieranie instrukcji w innej instrukcji, ale musi ona kończyć się w instrukcji, w której się rozpoczęła, więc nie można jej umieścić

      Coś przetwarzam
      a<- 0;
      czytać;
      jeśli a nie jest równe 25, to
      podczas gdy a nie jest równe 0
      czytać;
      Koniec tak
      zakończyć podczas

      Jeśli widzisz, że pętla zaczyna się wewnątrz instrukcji „if then”, ale kończy się poza nią, coś takiego nie jest możliwe.

      Mimo to doceniam wkład.
      Koniec procesu

      1.    Guille powiedział

        Dziękuję, ale myślę, że większym problemem jest umieszczenie tutaj kodu, ponieważ nie wiem, jak umieścić go w typie kodu i wychodzi bez wcięć.

        Program działa dobrze. Po prostu używam zmiennej „a”, aby wyjść z pętli, gdy użytkownik wpisze zero. Możesz umieścić funkcję exit() lub przerwę; w warunku, który to sprawdza i zapisuje zmienną. Są to opcje.

        Pozdrowienia.

      2.    Guille powiedział

        Spróbuję zmienić tabulatory spacji i etykiet. 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 powiedział

        Importowanie mojego kodu jest pełne błędów, spróbuję ponownie z kartami:
        Będzie to plik 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 powiedział

        Co ciekawe, komentarz ze znacznikami kodu jest zjadany, usuwany, cokolwiek znajduje się pomiędzy, na przykład między wierszami
        Powtórz
        Pisać " ";
        c
        po c jest a
        a następnie kontynuuj 3 Następnie
        w dół
        Ogólnie rzecz biorąc, nie można wiarygodnie określić, według jakich kodów.

  3.   Guille powiedział

    Zmieniam znaki przypisania na =, aby zobaczyć, jak to działa.

    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 powiedział

      Ciągle zjada część kodu, znacznik kodu zawodzi, powinien pozostawić to, co zostało napisane tak, jak jest.

      1.    xnmm powiedział

        Witam, przepraszam, że nie odpowiedziałem wcześniej, ale hej.
        ponieważ nie możesz poprawnie opublikować kodu, ponieważ nie wysyłasz go do mnie e-mailem, więc nie myślisz tak dużo o tej sprawie.