Асноўнае праграмаванне з pseint (частка 3)

Гэта працяг падручніка Асноўнае праграмаванне з pseint (частка 2), на гэты раз я растлумачу, што неабходна запраграмаваць.

ЗАДАННЕ

Прызначэнне - гэта працэс, пры якім зменная ствараецца і / або мадыфікуецца, спасылаючыся на яе пры дапамозе ідэнтыфікатара, з дапамогай якога мы можам атрымаць доступ да яе прасторы памяці.

сінтаксіс задання:

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

Дзе [зменная] - зменная, якая атрымлівае значэнне ацэнкі [выразу]. Абодва сапраўдныя, таму не мае значэння, які з іх выкарыстоўваецца (калі яны правільна сканфігуравалі PSeInt), але, на мой погляд, я ствараю першы як правільны.

Калі [зменная] не існавала да прызначэння, была створана [зменная], калі яна існавала, папярэдняе значэнне знішчаецца, а новае ставіцца на яго месца. Па гэтай прычыне адлюстраванне лічыцца разбуральнай аперацыяй.

ЧЫТАННЕ

Чытанне - гэта працэс, пры якім карыстальнік просіць дадзеныя альбо дадзеныя для захоўвання названых дадзеных у зменнай.

яго сінтаксіс:

Leer variable_1,variable_2,...,variable_n;

дзе [зменная_ {1,2, n}] - зменная або зменныя, якія атрымліваюць значэнне, зададзенае карыстальнікам, у выпадку, калі запытваецца больш за адну зменную, яна спачатку будзе прасіць першую, потым другую і гэтак далей, пакуль атрымалі ўсе значэнні.

Гэта таксама разбуральная функцыя.

ПІСАННЕ

Запіс - гэта працэс, пры якім на экране запісваецца радок сімвалаў і / або адна ці некалькі зменных

сінтаксіс:

Escribir expresion_1,expresion_2,...,expresion_n;

дзе [expersion_ {1,2, n}] - радкі сімвалаў і / або зменныя, якія будуць адлюстроўвацца.

Запіс у дадатак да атрымання дадзеных, якія будуць выведзены на экран, таксама атрымлівае інструкцыю "Без прапускання" альбо "Без загрузкі", якія пазбягаюць скачка радка.

Напісанне не дадае прабелаў паміж аргументамі, гэта значыць, калі вы ставіце:

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

у гэтым выпадку ён будзе паказваць «olamundo», паколькі паміж «a» і «b» няма радка сімвалаў, які паказвае прабел паміж a і b, так што ён адлюстроўваецца правільна, пішацца так:

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

у гэтым выпадку дадайце »», які ўяўляе сабой радок сімвалаў, які мае прастору, якая з'яўляецца прасторай паміж «хваляй» і «светам», і тады ён пакажа «свет хваляў» з прасторай.

КАЛІ ТАДЫ

Гэта прапанова, якая ацэньвае дадзенае стан і правярае праўдзівасць і / або ілжывасць згаданага стану, гэта значыць, калі ўмова выканана ці не.

Яго сінтаксіс:

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

Пункт "Else" не з'яўляецца абавязковым, у гэтым выпадку, калі ўмова ілжывая, ігнаруйце інструкцыі і працягвайце так, як быццам бы прыгавор не існаваў, у гэтым выпадку ён застанецца:

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

Ці быў змешчаны пункт "Адмова", залежыць ад патрэб гэтай праграмы.

Згодна з

У прапанове ацэньваецца строга лікавая зменная, якая дае больш за 2 варыянты, як варыянт, гэта розніца з "Калі-тады", паколькі папярэдняя можа даць толькі 2 варыянты.

Сінтаксіс:

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

Як вы можаце бачыць, пасля "number1" стаіць ":", а пасля гэтага інструкцыі, якія трэба выканаць, змяшчаюцца ў выпадку, калі "numerical variable = number1", у другім прыкладзе гэта "number2, number3", гэта азначае, што калі " лікавая зменная = лік2 альбо лік3 "тады" інструкцыі "будуць выкананы, гэта карысна, калі 2 магчымасці павінны выконваць адны і тыя ж інструкцыі.

Існуе таксама пункт "Іншым спосабам", які выконваецца ў выпадку, калі ні адна з магчымасцей не выканана.

ПАКУЛЬ

Гэта паўтаральная функцыя, якая спачатку ацэньвае ўмову, а потым, калі яна выканана, яна выконвае шэраг інструкцый, затым яна пераацэньвае стан і, калі гэта праўда, зноў выконвае тыя ж інструкцыі і працягвае так, пакуль умова не будзе ілжывым .

калі ўмова ілжывая з самага пачатку, яна ніколі не будзе выканана, і калі яна заўсёды праўдзівая, яна будзе змешчана ў бясконцы цыкл, каб пазбегнуць апошняга ў інструкцыях, павінна быць нешта, што ў нейкі момант фальсіфікуе ўмову. здольны скончыць цыкл.

яго сінтаксіс:

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

ПАЎТАРАЦЬ-ДО

Гэта функцыя, вельмі падобная на папярэднюю, але ў адрозненне ад папярэдняй, яна правярае ўмова ў канцы, гэта значыць, каманда будзе выконвацца як мінімум 1 раз, таксама замест таго, каб выконваць інструкцыю, калі яна праўдзівая, ён выконвае яго ў той час, калі ўмова не выконваецца, але калі вы хочаце, каб яна была выканана, пакуль умова выканана, выкарыстоўвайце "while" замест "пакуль".

яго сінтаксіс:

Repetir
[Instrucciones] hasta que [condicion]

ДЛЯ

Гэты выказванне выконвае інструкцыю, якая вызначае колькасць разоў для зменнай, у адрозненне ад папярэдніх, гэты цыкл змяняе значэнне разгляданай зменнай сам па сабе, а таксама мае вельмі магутны сінтаксіс.

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

"Зменная" - гэта зменная, якая атрымлівае "пачатковае значэнне" і выконвае інструкцыі, пасля чаго дадае "зменную" плюс "крок" і зноў выконвае інструкцыі, пакуль "зменная" не раўняецца "канчатковаму значэнню".

Калі "with [step]" выдалена, то па змаўчанні ён будзе ведаць, што "step" роўна 1, таксама калі [step] не ўказана і "пачатковае значэнне" больш, чым "final value", яно будзе праходзіць праз яго ў зваротным парадку, гэта значыць, "Крок" - -1

ПОДПРАЦЭС / ФУНКЦЫЯ

Паток або функцыя - гэта праграма ў межах іншай, і гэтая падпраграма атрымлівае адно ці некалькі значэнняў, кіруе імі і вяртае іншае. Сінтаксіс яго такі

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

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

дзе "return variable" - гэта зменная, якая ўтрымлівае значэнне, якое вяртаецца функцыяй "імя функцыі", якая атрымала параметры "arg_1, arg_2, arg_n" для выканання гэтага

ІНШЫЯ

Гэта функцыі, якія толькі дапаўняюць іншыя і не маюць складанага сінтаксісу, бо яны з'яўляюцца толькі дадатковымі.

Ачысціць экран

Гэтая функцыя ачышчае экран любога аб'екта ў перакладчыку

Ключ чакання

Гэта функцыя чакае, пакуль карыстальнік націсне клавішу, каб працягнуць працу з праграмай

Пачакай х {Па-другое, мілісекунды}

гэтая функцыя чакае часу ў секундах ці мілісекундах, каб працягнуць працу з праграмай

PS: прабачце за затрымку, але я быў заняты іншымі справамі, таму не мог пісаць


Змест артыкула адпавядае нашым прынцыпам рэдакцыйная этыка. Каб паведаміць пра памылку, націсніце тут.

10 каментарыяў, пакіньце свой

Пакіньце свой каментар

Ваш электронны адрас не будзе апублікаваны. Абавязковыя для запаўнення палі пазначаныя *

*

*

  1. Адказны за дадзеныя: Мігель Анхель Гатон
  2. Прызначэнне дадзеных: Кантроль спаму, кіраванне каментарыямі.
  3. Легітымнасць: ваша згода
  4. Перадача дадзеных: Дадзеныя не будуць перададзены трэцім асобам, за выключэннем юрыдычных абавязкаў.
  5. Захоўванне дадзеных: База дадзеных, размешчаная Occentus Networks (ЕС)
  6. Правы: у любы час вы можаце абмежаваць, аднавіць і выдаліць сваю інфармацыю.

  1.   Гіль сказаў

    У вас няма функцый для захопу ключоў, не спыняючы выкананне? За тое, што вы робіце нешта з рухам, што больш падабаецца дзевяцігадовым дзецям, хоць гульня на ката таксама можа быць цікавай для праграмавання.

    Апрацаваць something_digo
    a <-1;
    бакавыя <-30;
    уніз <-5;
    У той час як a = 1 Do
    Ачысціць экран;
    з <-1;
    радок <- "";
    паўтарэнне
    радок <-лінія + "";
    c <-c + 1;
    Пакуль с = бакавы
    радок <-лінія + "Х";
    з <-1;
    паўтарэнне
    Пісаць " ";
    c <-c + 1;
    Пакуль c = ўніз-1
    Пісаць радок;
    паўтарэнне
    Пісаць " ";
    c 2 Тады
    ўніз <-ніз-1;
    Канец так
    "s":
    Калі ніжэй <15 Тады
    ўніз 2 Тады
    бакавы <-баковы-1;
    Канец так
    "d":
    Калі бакавыя <50 Тады
    бакавы <-баковы + 1;
    Канец так
    "0":
    a <-2;
    Канчатковыя секунды
    Канец, пакуль
    EndProcess

  2.   Гіль сказаў

    Ну, пацярпіце няўдачу, калі паднімецеся, лепш зменіце радкі 23 і 28
    -23 Пакуль c = 15
    +23 Пакуль c = 18
    y
    -28 Калі ўніз> 2 Тады
    +28 Калі ўніз> 3 Тады

    1.    xnmm сказаў

      Дзякуй за ўклад, але ў яго ёсць такія праблемы, як тое, што вы адкрываеце адзін сказ у другім, але ён павінен заканчвацца ў тым сказе, дзе ён пачаўся, гэта значыць, яго нельга ставіць

      Апрацаваць нешта
      a <- 0;
      чытаць;
      калі а не роўна 25, то
      у той час як a не роўна 0 do
      чытаць;
      Канец так
      канец, пакуль

      як вы бачыце цыкл, пачынаючы з інструкцыі "калі потым", але заканчваючы па-за ім, нешта падобнае немагчыма.

      Я ўсё яшчэ цаню ўклад
      Скончыць працэс

      1.    Гіль сказаў

        Дзякуй, але я думаю, што праблема з увядзеннем кода ў большай ступені складаецца ў тым, што я не ведаю, як змясціць яго ў тып кода, і ён выходзіць без водступаў.

        Праграма працуе нармальна. Зменную "а" я проста выкарыстоўваю для выхаду з цыкла, калі карыстальнік набірае нуль. Вы можаце паставіць выхад () альбо перапынак; ва ўмоўным ён разглядае яго, і я захоўваю зменную. Яны варыянты.

        Прывітанне.

      2.    Гіль сказаў

        Паспрабую змяніць укладкі для прабелаў і цэтлікаў 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.    Гіль сказаў

        Гэта поўна памылак імпарту з майго кода, я паспрабую яшчэ раз з укладкамі:
        Гэта будзе файл 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.    Гіль сказаў

        Цікава, што каментарый з пазнакамі кода з'ядаецца, выдаляецца, усё, што ідзе паміж, напрыклад, паміж радкамі
        паўтарэнне
        Пісаць " ";
        c
        пасля с - а
        а потым працягваецца з 3 Потым
        ўніз
        У цэлым, гэта ненадзейна ставіць у адпаведнасці з якімі кодамі.

  3.   Гіль сказаў

    Я змяняю сімвалы з прысваення на =, каб паглядзець, як.

    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.    Гіль сказаў

      Ён працягвае ёсць частку кода, тэг кода выходзіць з ладу, ён павінен пакінуць напісанне як ёсць.

      1.    xnmm сказаў

        Прывітанне, я не бачыў, што вы раней адказвалі, але добра
        так як вы не можаце добра апублікаваць код, таму што не адпраўляеце яго мне па пошце, таму вы не робіце так шмат паваротаў да справы.