Ini adalah kesinambungan dari tutorial Pengaturcaraan asas dengan pseint (bahagian 2), kali ini saya akan menerangkan apa yang perlu untuk diprogramkan.
TUGASAN
Tugasan adalah proses di mana pemboleh ubah dibuat dan / atau diubah suai, dengan merujuknya melalui pengenal yang dengannya kita dapat mengakses ruang ingatannya.
sintaksis tugasan adalah:
[variable]<- [expresion];
[variable]=[expresion];
Di mana [pemboleh ubah] adalah pemboleh ubah yang menerima nilai menilai [ungkapan]. Kedua-duanya sah jadi tidak menjadi masalah mana yang digunakan (jika mereka mengkonfigurasi PSeInt dengan betul), tetapi pada pendapat saya, saya membuat yang pertama sebagai yang betul.
Sekiranya [pemboleh ubah] tidak ada sebelum penugasan, [pemboleh ubah] dibuat, jika ada nilai sebelumnya dihancurkan dan yang baru diletakkan di tempatnya. Atas sebab ini, pemetaan dianggap sebagai operasi yang merosakkan.
MEMBACA
Membaca adalah proses di mana pengguna diminta data atau data untuk menyimpan data tersebut dalam pemboleh ubah.
sintaksnya adalah:
Leer variable_1,variable_2,...,variable_n;
di mana [pemboleh ubah_ {1,2, n}] adalah pemboleh ubah atau pemboleh ubah yang menerima nilai yang diberikan oleh pengguna, sekiranya diminta lebih dari satu pemboleh ubah, ia pertama akan meminta yang pertama, kemudian untuk yang kedua dan seterusnya hingga telah menerima semua nilai.
Ini juga merupakan fungsi yang merosakkan.
MENULIS
Menulis adalah proses di mana rentetan watak dan / atau satu atau lebih pemboleh ubah ditulis di skrin
sintaksnya adalah:
Escribir expresion_1,expresion_2,...,expresion_n;
di mana [expersion_ {1,2, n}] adalah rentetan watak dan / atau pemboleh ubah yang akan dipaparkan.
Menulis selain menerima data yang akan diletakkan di layar juga menerima instruksi "Tanpa melangkau" atau "Tanpa turun" yang mengelakkan lompatan baris.
Menulis tidak menambahkan ruang antara argumen, iaitu, jika anda meletakkan:
Proceso SinTitulo
a<- "ola";
b<- "mundo";
Escribir a,b;
FinProceso
dalam kes ini akan menunjukkan «olamundo» kerana antara «a» dan «b» tidak ada rentetan aksara yang menunjukkan ruang antara a dan b, sehingga dipaparkan dengan betul ia ditulis seperti ini:
Proceso SinTitulo
a<- "ola";
b<- "mundo";
Escribir a,"",b;
FinProceso
dalam kes ini tambahkan »» yang merupakan rentetan watak yang mempunyai ruang yang merupakan ruang antara «gelombang» dan «dunia» dan kemudian ia akan menunjukkan «dunia gelombang» dengan ruang.
SEKIRANYA
Ini adalah pernyataan yang menilai keadaan tertentu dan memeriksa kebenaran dan / atau kepalsuan keadaan tersebut, iaitu, jika syarat itu dipenuhi atau tidak.
Sintaksnya adalah:
Si [condición a evaluar] Entonces
[instrucciones por verdadero]
Sino
[instrucciones por falso]
FinSi
Klausa "Lain" tidak wajib, dalam hal ini jika syaratnya salah, abaikan arahannya dan teruskan seolah-olah hukuman itu tidak ada, dalam hal ini tetap:
Si [condición a evaluar] Entonces
[instrucciones por verdadero]
FinSi
Adakah klausa "Kegagalan" diletakkan atau tidak bergantung pada keperluan program itu.
MENURUT
Kalimat kerana menilai pemboleh ubah berangka yang memberikan lebih daripada 2 pilihan sebagai pilihan, ini adalah perbezaan dari "If-Then" kerana yang sebelumnya hanya dapat memberikan 2 pilihan.
Sintaksnya adalah:
Segun [variable numérica] Hacer
[número1]: [instrucciones]
[número2],[número3]: [instrucciones]
[...]
De Otro Modo: [instrucciones]
FinSegun
Seperti yang anda dapat lihat setelah "number1" ada ":" dan setelah itu arahan yang akan dilaksanakan diletakkan dalam keadaan "pemboleh ubah berangka = number1", dalam contoh kedua adalah "number2, number3" jika "pembolehubah numerik = angka2 atau angka3" maka "arahan" akan dilaksanakan, ini berguna apabila 2 kemungkinan mesti melaksanakan arahan yang sama.
Ada juga klausa "Dalam Cara Lain" yang dilaksanakan jika tidak ada kemungkinan yang terpenuhi.
KETIKA
Ini adalah fungsi berulang yang pertama kali menilai suatu keadaan dan kemudian jika terpenuhi, ia akan menjalankan serangkaian arahan, kemudian menilai semula keadaan tersebut dan jika benar, ia melaksanakan arahan yang sama sekali lagi dan terus seperti ini sehingga keadaan itu salah.
jika keadaannya salah dari awal, ia tidak akan pernah dapat dilaksanakan dan jika selalu benar, ia akan diletakkan dalam gelung tak terhingga, untuk mengelakkan yang terakhir dalam arahan mesti ada sesuatu yang pada suatu ketika memalsukan syarat untuk dapat mengakhiri gelung.
sintaksnya adalah:
Mientras [condición a evaluar] Hacer
[instrucciones]
FinMientras
ULANG-SEHINGGA
Ini adalah fungsi yang sangat mirip dengan yang sebelumnya, tetapi tidak seperti yang sebelumnya, yang ini memeriksa keadaan di akhir, iaitu, perintah akan dilaksanakan sekurang-kurangnya 1 kali, juga bukannya melaksanakan instruksi apabila benar, ia melaksanakannya sementara Sekiranya syarat itu tidak dipenuhi, tetapi jika anda mahu ia dilaksanakan semasa syarat dipenuhi, gunakan "sementara" dan bukannya "hingga".
sintaksnya adalah:
Repetir
[Instrucciones]
hasta que [condicion]
UNTUK
Pernyataan ini melaksanakan arahan menentukan bilangan kali untuk pemboleh ubah, tidak seperti yang sebelumnya, kitaran ini mengubah nilai pemboleh ubah yang dimaksudkan dengan sendirinya, serta mempunyai sintaks yang sangat kuat.
Para [variable] Desde [valor inicial] Hasta [valor Final] Con [paso] Hacer
[instruciones]
FinPara
"Pembolehubah" adalah pemboleh ubah yang menerima "nilai awal" dan melaksanakan arahan kemudian menambah "pemboleh ubah" ditambah "langkah" dan melaksanakan arahan lagi sehingga "pemboleh ubah" sama dengan "nilai akhir".
Sekiranya "dengan [langkah]" dikeluarkan maka secara lalai ia akan mengetahui bahawa "langkah" sama dengan 1, juga jika [langkah] tidak ditentukan dan "nilai awal" lebih besar daripada "nilai akhir" maka akan melaluinya di urutan terbalik, iaitu, "Langkah" ialah -1
SUBPROSES / FUNGSI
Suatu utas atau fungsi adalah program dalam yang lain dan subprogram ini menerima satu atau lebih nilai, mengoperasikannya dan mengembalikan yang lain. Sintaksnya adalah
SubProceso [variable_de_retorno]<- [nombre de la funcion] ([arg_1],[arg_2],...,[arg_n])
acción 1;
acción 2;
.
.
.
acción n;
FinSubproceso
di mana "return variabel" adalah pemboleh ubah yang mengandungi nilai yang dikembalikan oleh fungsi "function name" yang menerima parameter "arg_1, arg_2, arg_n" untuk melaksanakan ini
LAIN
Ini adalah fungsi yang hanya saling melengkapi yang lain dan tidak mempunyai sintaks yang kompleks kerana hanya fungsi pelengkap.
Skrin Kosong
Fungsi ini membersihkan skrin objek dari jurubahasa
Tunggu Kunci
Fungsi ini menunggu pengguna menekan kekunci untuk meneruskan program
Tunggu x {Kedua, Milisaat}
fungsi ini menunggu masa dalam beberapa saat atau milisaat untuk meneruskan program ini
PS: maaf atas kelewatan itu tetapi saya sibuk dengan perkara lain sehingga saya tidak dapat menulis
Tidak mempunyai fungsi untuk menangkap kunci tanpa menghentikan pelaksanaannya? Untuk melakukan sesuatu dengan gerakan yang lebih menarik bagi kanak-kanak berusia 9 tahun, walaupun permainan hangman juga dapat diprogramkan dengan menyenangkan.
Memproses sesuatu_digo
a <-1;
lateral <-30;
turun <-5;
Manakala a = 1 Lakukan
Skrin Jelas;
c <-1;
garisan <- "";
Ulang
garis <-line + "";
c <-c + 1;
Sehingga c = lateral
garis <-line + "X";
c <-1;
Ulang
Untuk menulis " ";
c <-c + 1;
Sehingga c = turun-1
Garis tulis;
Ulang
Untuk menulis " ";
c 2 Kemudian
bawah <-down-1;
Tamat ya
"s":
Sekiranya di bawah <15 Maka
turun 2 Kemudian
lateral <-lateral-1;
Tamat ya
"d":
Sekiranya lateral <50 Kemudian
lateral <-lateral + 1;
Tamat ya
"0":
a <-2;
Detik Akhir
Tamat Sementara
Proses Tamat
Nah, gagal jika anda naik, ubah baris 23 dan 28 dengan lebih baik
-23 Hingga c = 15
+23 Sehingga c = 18
y
-28 Jika turun> 2 Kemudian
+28 Jika turun> 3 Kemudian
Terima kasih atas sumbangannya tetapi ada beberapa masalah seperti anda membuka satu ayat yang lain tetapi ia mesti berakhir dalam kalimat di mana ia bermula, maksud saya, ia tidak boleh dimasukkan
Memproses sesuatu
a <- 0;
baca ke;
jika a tidak sama dengan 25 maka
sementara a tidak sama dengan 0 lakukan
baca ke;
Tamat ya
tamat sementara
kerana anda melihat gelung semasa memulakan di dalam pernyataan "jika kemudian" tetapi berakhir di luarnya, sesuatu seperti ini tidak mungkin dilakukan.
Saya masih menghargai sumbangannya
Proses akhir
Terima kasih, tetapi saya rasa lebih banyak masalah meletakkan kod di sini, kerana saya tidak tahu bagaimana memasukkannya ke dalam kod dan ia keluar tanpa lekukan.
Program berjalan lancar. Pemboleh ubah "a" yang saya gunakan untuk keluar dari gelung ketika pengguna menaip sifar. Anda boleh meletakkan jalan keluar () atau jeda; secara bersyarat ia melihatnya dan saya menyimpan pemboleh ubahnya. Mereka adalah pilihan.
Greetings.
Saya akan cuba menukar tab untuk ruang dan label
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
Itu penuh dengan ralat import dari kod saya, saya akan mencuba lagi dengan tab:
Ini akan menjadi fail 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
Menariknya, komen dengan label kod dimakan, dihapus, apa sahaja yang ada di antara, misalnya antara baris
Ulang
Untuk menulis " ";
c
selepas c terdapat a
dan kemudian diteruskan dengan 3 Kemudian
turun
Secara keseluruhan, ini tidak boleh dipercayai mengikut kod apa.
Saya menukar simbol dari menetapkan ke = untuk melihat caranya.
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
Ia terus memakan sebahagian dari kod, tag kod gagal, ia harus meninggalkan tulisan sebagaimana adanya.
Hai maaf kerana tidak melihat anda dijawab sebelumnya tetapi baik
kerana anda tidak dapat menerbitkan kod dengan baik kerana anda tidak menghantarnya kepada saya melalui surat sehingga anda tidak memberikan banyak perubahan mengenai perkara itu.