Operator masukan dan keluaran data. Input dan output data dalam bahasa Pascal. Operator masukan keyboard

Program linier

Program linier, sebagaimana telah disebutkan, adalah urutan operator, loop, dan lompatan bersyarat. Diagram blok dari program semacam itu mencakup blok masukan data, blok perhitungan, dan blok keluaran hasil.

Untuk memasukkan data digunakan operator LET, DATA, READ, RESTORE, INPUT, LINE INPUT, dan fungsi INPUT$.

Operator MEMBIARKAN . Digunakan untuk menetapkan nilai ke variabel. Format operator: BIARKAN<имя переменной> = <выражение>

Operator LET dapat dihilangkan, begitu pula ekspresi

Misalkan A=exp(x)+ sin(x) dan A=exp(x)+ sin(x)

setara.

Operator DATA Dan MEMBACA memungkinkan Anda memasukkan data dari program. Operator DATA memasukkan data ke area khusus RAM komputer, dan operator MEMBACA membaca data ini dari RAM dan menugaskannya ke variabel. Area data ini berisi penunjuk khusus. Saat program dimulai, penunjuk diposisikan di awal area data. Saat membaca data dari area memori, ia juga berpindah. Jika jumlah variabel dalam pernyataan MEMBACA lebih besar dari jumlah nilai dalam pernyataan DATA, lalu penunjuk melampaui area data dan pesan kesalahan akan dihasilkan.

Tipe data dalam pernyataan DATA Dan MEMBACA harus cocok satu sama lain. Pernyataan-pernyataan ini dapat ditempatkan dimana saja dalam program. Variabel string ditulis tanpa tanda kutip jika tidak mengandung spasi, dan diapit tanda kutip jika mengandung spasi.

Format operator:

DATA<список данных>

MEMBACA<список переменных>

Contoh 9.4.1. Menggunakan DATA, BACA operator

DATA 125, 34.78, 1.24E-5, BREST, “MINSK - MODAL”

BACA A,B,D,C$,C1$

Variabel A, B dan D akan diberi nilai numerik masing-masing 125, 34,78 dan 0,0000124, variabel C$ dan C1$ - “BREST” dan “MINSK - CAPITAL”.

Untuk menggunakan kembali data, gunakan operator MEMULIHKAN . Format operator: KEMBALIKAN [<метка>].

Jika label tidak ditentukan dalam pernyataan RESTORE, maka penunjuk disetel ke awal wilayah data, jika tidak, penunjuk disetel ke label terkait di wilayah data.

Contoh 9.4.2. Menggunakan pernyataan DATA, BACA, KEMBALIKAN

10 CONTOH REM PENGGUNAAN DATA, MATI, KEMBALIKAN OPERATOR

20 DATA 136,75, 18E5,123.45,1978,.9875

25 DATA .5439,1.567,4.65,12.23,48.56

30 BACA A1,A2,A3,A4,A5: REM membaca data dari baris 20

150 BACA B1,B2: Data pembacaan REM dari baris 25

250 KEMBALIKAN 25: transfer REM penunjuk data ke label 25

260 INPUT "Masukkan ukuran array N, tidak lebih dari 5",N

270 UNTUK i=1 SAMPAI N

280 READ D2(i) : REM membaca data dari baris 25 ke dalam array satu dimensi



Operator MASUKAN berfungsi untuk memasukkan data dari keyboard dalam mode dialog dengan pengguna. Format operator:

INPUT [;] “ekspresi teks”[;/,]<список переменных>

Di sini [;] adalah parameter opsional, meninggalkan kursor di baris saat ini; [;/,] - berarti salah satu karakter tertentu ";" dapat digunakan sebagai pemisah. atau ",".

Saat mengeksekusi pernyataan tersebut MASUKAN Permintaan entri data ditampilkan di layar. Jika “;” digunakan sebagai pemisah, maka permintaan tersebut disertai dengan tanda tanya yang ditampilkan di layar; jika “,” digunakan sebagai pemisah, tanda tanya tersebut tidak ditampilkan di layar; Pesan teks memungkinkan Anda memperjelas permintaan kepada pengguna. Dalam daftar variabel, data dipisahkan dengan koma atau spasi (sebaiknya data dipisahkan dengan koma). Pernyataan INPUT memungkinkan Anda memasukkan variabel numerik dan karakter. Jika variabel karakter tidak mengandung spasi atau pembatas lainnya, maka tidak perlu diapit tanda kutip saat memasukkan data.

Jangan gunakan pernyataan INPUT tanpa komentar teks.

Contoh 9.4.3. Menggunakan Pernyataan Masukan

INPUT “Masukkan variabel A dan B”; A,B

INPUT “Masukkan tahun lahir Anda”, GR$

Di sini A dan B adalah variabel numerik, GR$ adalah variabel karakter.

Operator MASUKAN GARIS berfungsi untuk memasukkan variabel karakter tunggal. Saat memasukkan, nilai variabel karakter tidak diapit tanda kutip; spasi dan pembatas lainnya diperbolehkan. Akhir baris ditentukan oleh karakter kembalinya - menekan tombol ENTER. Pernyataan LINE INPUT mempunyai format yang sama dengan pernyataan INPUT.

Fungsi MASUKAN$ Digunakan untuk memasukkan karakter yang tidak ditampilkan di layar, seperti kata sandi. Format fungsi: с1$ = INPUT$(n [,[#]nf])

Disini n adalah jumlah karakter yang dimasukkan, # adalah nomor saluran saat memasukkan data dari suatu file, nf adalah nama file.

Contoh 9.4.4. Menggunakan Pernyataan LINE INPUT dan Fungsi INPUT$

LINE INPUT "Masukkan nama belakang, nama depan dan patronimik", FIO$

Variabel karakter B$ diberi kode lima karakter; ketika diminta, karakter yang dimasukkan tidak akan ditampilkan di layar. Ketika suatu program menemukan pernyataan INPUT$(n), program berhenti dan menunggu masukan. Oleh karena itu, pernyataan dalam format B$= Input$(1) ini dapat digunakan untuk menghentikan program sebelum tombol apa pun ditekan.

Fungsi Input$(1) dapat digunakan untuk menghentikan program sebelum tombol apa pun ditekan.

Bagaimana input/output data dari perangkat terminal diatur? Untuk memulainya (siapa yang tidak tahu), mari kita definisikan perangkat terminal. Perangkat terminal adalah keyboard, layar, mis. apa yang biasanya digunakan pengguna. Yang mana yang ada? Operator masukan/keluaran Pascal?

Masukan data Pascal:

Bagaimana cara memasukkan data dalam Pascal? Sangat mudah dan sederhana! Input data awal dalam Pascal dilakukan dengan prosedur readln:

bacaln(b1,b2,…,bk)

Dalam contoh ini, prosedur readln membaca nilai k dari data sumber dan menetapkan nilai-nilai ini ke variabel b1, b2,..., bk dengan baris baru (prosedur baca serupa berbeda dari readln dalam hal ini tidak melanjutkan ke baris berikutnya). Ketika kita memasukkan data dalam Pascal, terjadi transformasi aneh dari bentuk eksternal menjadi internal, yang ditentukan oleh jenis variabel.

Variabel yang termasuk dalam daftar input dapat memiliki tipe berbeda: integer, real, character. Namun, membaca data boolean tidak diperbolehkan di Pascal. Data awal (yaitu nilainya) dipisahkan satu sama lain dengan menekan tombol Enter dan Tab, spasi (saat memasukkan data, tidak diperbolehkan memisahkan angka dengan koma).

Keluaran data Pascal:

Sekarang mari kita bicara tentang keluaran data dalam Pascal. Untuk menampilkan keluaran program Anda di layar, Anda biasanya menggunakan dua prosedur:

tulis(b1,b2,…bk)— menampilkan nilai variabel b1, b2,…, bk ke baris layar.

tulisln(b1,b2,…, bk)- menghasilkan keluaran data di layar dan transisi ke awal baris berikutnya.

Prosedur writeln dapat digunakan tanpa parameter dan cukup melewatkan baris asli dan berpindah ke awal baris berikutnya. Dalam daftar keluaran, variabel dapat terdiri dari beberapa jenis: integer, real, character, atau boolean. Elemen daftar keluaran juga menyertakan ekspresi dan string. Bentuk penyajian nilai pada kolom keluaran sesuai dengan jenis variabel dan ekspresi:

  • nilai integer dikeluarkan sebagai bilangan desimal utuh,
  • nilai tipe real direpresentasikan sebagai bilangan desimal real dengan eksponen desimal,
  • nilai tipe karakter dan string dikeluarkan sebagai karakter,
  • nilai tipe logis - dalam bentuk benar dan salah (konstanta logis).

Operator keluaran menciptakan kemampuan untuk mengatur lebar bidang keluaran untuk setiap elemen daftar keluaran, yang akan terlihat seperti: A:K, dengan A adalah string atau ekspresi, K adalah ekspresi atau konstanta bilangan bulat. Dua situasi muncul dalam kasus ini:

  1. Jika nilai keluaran menempati posisi lebih sedikit di bidang keluaran daripada K, spasi ditempatkan di depannya.
  2. Jika nilainya tidak sesuai dengan bidang K, maka jumlah posisi yang diperlukan dialokasikan ke nilai ini.

Elemen daftar keluaran untuk nilai bertipe nyata dapat berbentuk: A:K:M, di mana A adalah ekspresi dari tipe nyata atau variabel, K adalah lebar bidang keluaran (ekspresi atau konstanta), M adalah jumlah digit bagian pecahan dari nilai keluaran (ekspresi atau konstanta). Dalam situasi ini, nilai sebenarnya akan ditampilkan sebagai angka desimal titik tetap. Mari kita bayangkan contoh penulisan pernyataan keluaran:

Saat memasukkan informasi awal dan mengeluarkan hasil, program apa pun berinteraksi dengan perangkat eksternal. Kasus khusus pertukaran data dengan perangkat eksternal adalah pertukaran dengan konsol. Konsol merupakan kombinasi keyboard dan layar monitor.

Mari kita lihat cara mengatur input dan output informasi yang disediakan oleh bahasa pemrograman Pascal.

Prosedur masuk

Input data adalah proses mentransfer data sumber dari perangkat eksternal ke RAM.

Perangkat input eksternal biasanya berupa keyboard atau file data.

Untuk memasukkan data dari keyboard di Pascal digunakan prosedur read dan readln dengan format sebagai berikut:

  • baca(daftar);
  • readln(daftar);

Prosedur readln mirip dengan prosedur baca, satu-satunya perbedaan adalah setelah membaca nilai terakhir suatu variabel dari daftar, masukan data berikutnya dipindahkan ke awal baris baru.

Elemen “daftar” adalah daftar nama variabel yang dipisahkan koma yang nilainya akan dimasukkan dari keyboard (perhatikan bahwa daftar boleh kosong), misalnya:

  • baca(a,b,c);
  • baca;

Nilai yang dimasukkan harus dipisahkan dengan karakter spasi (spasi, tab, baris baru), dan jumlahnya tidak dibatasi. Entri data untuk satu prosedur diselesaikan dengan menekan tombol Enter. Jika prosedur readln digunakan tanpa parameter, prosedur tersebut menunggu hingga tombol Enter ditekan.

PERHATIAN: nilai yang dimasukkan harus sesuai dengan jenis variabel, jika tidak maka akan terjadi kesalahan (misalnya variabel b bertipe integer, tetapi inputnya berupa bilangan real).

Prosedur penarikan

Output adalah proses pemindahan data setelah diproses dari RAM ke perangkat eksternal.

Untuk menampilkan data di layar dalam Pascal digunakan prosedur write dan writeln yang berbentuk sebagai berikut:

  • tulis(daftar);
  • writeln(daftar);

Jika Anda menggunakan prosedur tulis, setelah menampilkan elemen terakhir daftar di layar, kursor akan tetap berada pada baris yang sama. Rutin writeln, setelah keluaran selesai, memindahkan kursor ke baris berikutnya. Jika tidak ada parameter yang diteruskan ke prosedur writeln, kursor akan dipindahkan ke baris berikutnya.

Aturan untuk mencatat parameter prosedur keluaran

  1. Daftar keluaran dipisahkan dengan koma
  2. Daftar keluaran dapat berisi variabel, konstanta, dan ekspresi
  3. Untuk keluaran nilai apa pun, Anda dapat mengatur format bidang keluaran - jumlah posisi di mana nilai akan ditempatkan (ditunjukkan segera setelah nilai keluaran, dipisahkan dengan titik dua):
    • jika nilai dari nilai yang ditampilkan lebih pendek, maka nilai tersebut “ditekan” ke tepi kanan bidang yang dialokasikan, jika tidak, bidang tersebut “diperluas” ke ukuran yang diperlukan;
    • Untuk bilangan real, format bidang keluaran memberikan kemampuan untuk menentukan jumlah posisi yang akan ditampilkan dan yang dialokasikan untuk bagian pecahan dari bilangan tersebut (titik desimal juga menempati satu posisi).

Misalnya:

  • writeln("a = ", a:2, " ", 10 + akar persegi(a):2:4, " ", pi:4:2);

Interaksi program dengan lingkungan eksternal (pengguna, program lain, data yang disimpan) mutlak diperlukan. Bertanggung jawab atas antarmuka seperti itu dalam bahasa pemrograman pernyataan I/O informasi. Instruksi ini memungkinkan Anda memasukkan data ke dalam program saat program sedang berjalan (dan bukan pada tahap penulisannya) dan menampilkan data yang dihitung dalam bentuk yang dapat dimengerti manusia.

Perintah ini memungkinkan Anda memasukkan data ke dalam variabel tunggal atau ke dalam beberapa variabel sekaligus selama eksekusi program dari keyboard. Elemen daftar input dapat berupa nama variabel yang harus diisi dengan nilai yang dimasukkan dari keyboard.

Eksekusi pernyataan masukan terjadi sebagai berikut: program dihentikan sementara, kursor ditampilkan di layar, dan komputer mengharapkan pengguna untuk menyediakan sekumpulan data untuk variabel yang namanya ditunjukkan dalam daftar masukan. Pengguna memasukkan tanda-tanda yang diperlukan menggunakan keyboard sesuai urutan yang diminta oleh daftar input, dan menekan Enter. Setelah ini, data yang diketik masuk ke variabel terkait dan eksekusi program dilanjutkan. Data masukan dipisahkan dengan spasi.

Saat memasukkan data awal, terjadi transformasi dari bentuk representasi eksternal ke bentuk internal, ditentukan oleh jenis variabelnya. Variabel yang membentuk daftar input dapat berupa tipe integer, real, atau karakter. Membaca data sumber Boolean tidak diperbolehkan.

Perbedaan pengoperasian operator Read dan Readln pada Pascal adalah sebagai berikut: setelah mengeksekusi Read, nilai data selanjutnya dibaca dari baris yang sama, dan setelah mengeksekusi Readln, dari baris baru.

Operator ini memungkinkan Anda menampilkan data dari daftar keluaran di layar monitor. Elemen daftar keluaran dapat berupa nama variabel, ekspresi, dan konstanta. Sebelum menampilkan nilai ekspresi, komputer terlebih dahulu mengevaluasinya. Elemen daftar, seperti dalam pernyataan masukan, dipisahkan dengan koma.

Perbedaan kedua operator keluaran dalam Pascal adalah sebagai berikut: setelah menjalankan operator Writeln (dari baris Write), terjadi transisi ke baris baru, dan setelah menjalankan instruksi Write, transisi ke baris baru tidak terjadi dan pencetakan pada perintah keluaran Write atau Writeln berikutnya akan terjadi pada baris yang sama. Saat memanggil operator Writeln tanpa parameter, operator tersebut hanya berpindah ke baris baru.

Di BASIC, setiap pernyataan PRINT baru mencetak nilai pada baris baru.

Variabel yang membentuk daftar keluaran dapat bertipe integer, real, character, atau boolean. Selain nama variabel, ekspresi dan string dapat digunakan sebagai elemen daftar keluaran.

Setiap nilai dikeluarkan ke satu baris layar sesuai dengan lebar bidang keluaran, yang ditentukan oleh implementasi spesifik bahasa tersebut.

Bentuk representasi nilai di bidang keluaran sesuai dengan jenis variabel dan ekspresi: nilai tipe bilangan bulat dikeluarkan sebagai bilangan desimal bilangan bulat, dari tipe nyata - sebagai bilangan desimal nyata dengan urutan desimal, dari tipe karakter dan string - dalam bentuk karakter, tipe logis - dalam bentuk konstanta logika TRUE dan FALSE.

Pertimbangkan prosedur untuk membaca informasi dari file dalam Pascal.

Pertama, Anda perlu mendeklarasikan variabel file. Variabel file memiliki kegunaan khusus. Anda tidak dapat melakukan operasi apa pun pada mereka (menetapkan nilai, membandingkan, dll.). Mereka hanya dapat digunakan untuk melakukan operasi pada file (membaca, menulis, dll.).

Sebelum I/O dapat terjadi, variabel file harus dikaitkan dengan file eksternal tertentu menggunakan prosedur Assign.

Menetapkan(<Имя файловой переменной>,<Имя файла>);

Nama file akan ditentukan sebagai konstanta string atau melalui variabel String. Nama file harus sesuai dengan aturan sistem operasi yang sedang berjalan. Jika baris nama kosong, maka variabel file dikaitkan dengan perangkat input/output standar (biasanya konsol).

Setelah ini, file harus dibuka dengan salah satu prosedur:

Mengatur ulang(<Имя файловой переменной>);

File yang sudah ada dibuka untuk dibaca, dan penunjuk komponen file saat ini diatur ke awal file. Jika file fisik yang sesuai dengan variabel file tidak ada, kondisi kesalahan I/O terjadi.

Menulis kembali(<Имя файловой переменной>);

File kosong baru dibuka untuk ditulis dan diberi nama yang ditentukan oleh prosedur Assign. Jika file dengan nama yang sama sudah ada, maka file tersebut akan dimusnahkan. Setelah bekerja dengan suatu file, biasanya file tersebut harus ditutup menggunakan prosedur Tutup.

Menutup(<Имя файловой переменной>);

Persyaratan ini harus dipenuhi untuk file tempat rekaman dibuat.

Entri data- Ini adalah transfer informasi dari perangkat eksternal ke RAM. Sebagai aturan, data awal dari masalah yang sedang dipecahkan dimasukkan. Kesimpulan- proses sebaliknya, ketika data ditransfer dari RAM ke media eksternal (printer, layar, perangkat magnetik, dll). Hasil penyelesaian suatu masalah harus ditampilkan pada salah satu media tersebut.

Perangkat input/output utama komputer pribadi adalah keyboard dan display (layar monitor). Melalui perangkat inilah dialog antara seseorang dan PC terutama dilakukan.

membaca operator masukan

Prosedur input keyboard (memanggil input standar) memiliki format berikut:

Membaca(<список ввода>)

Di mana<список ввода>adalah urutan nama variabel yang dipisahkan dengan koma. Saat memasukkan data awal, terjadi transformasi dari bentuk representasi eksternal ke bentuk internal, ditentukan oleh jenis variabelnya. Variabel yang membentuk daftar input dapat berupa tipe integer, real, atau karakter. Membaca data sumber Boolean tidak diperbolehkan di Pascal. Nilai data sumber dapat dipisahkan satu sama lain dengan spasi dan dengan menekan tombol tab dan Memasuki.

Jika ada beberapa pernyataan dalam suatu program membaca, lalu datanya dimasukkan ke dalam aliran, mis. setelah membaca nilai variabel untuk satu pernyataan membaca Data untuk pernyataan selanjutnya dibaca dari baris yang sama di layar seperti baris sebelumnya sampai akhir baris, kemudian berpindah ke baris berikutnya.

Varian lain dari operator masukan keyboard adalah:

Baca(<список ввода>)

Operator ini berbeda dari membaca hanya itu setelah membaca nilai terakhir dalam daftar untuk satu operator bacaln data untuk pernyataan selanjutnya akan dibaca dari awal baris baru.

tulis operator keluaran

Pernyataan tampilan (memanggil prosedur keluaran standar) memiliki format berikut:

Menulis(<список вывода>)

Variabel yang membentuk daftar keluaran dapat bertipe integer, real, character, atau boolean. Selain nama variabel, ekspresi dan string dapat digunakan sebagai elemen daftar keluaran. Saat menampilkan beberapa angka dalam satu baris, angka tersebut tidak dipisahkan dengan spasi. Pemrogram sendiri yang harus mengurus divisi ini.

Opsi kedua untuk menampilkan layar:

tulis(<список вывода>)

Tindakannya berbeda dengan operator menulis setelah menampilkan nilai terakhir dalam daftar, kursor berpindah ke awal baris berikutnya. Operator menulis, ditulis tanpa parameter, menyebabkan umpan baris.

Setiap nilai dikeluarkan ke satu baris layar sesuai dengan lebar bidang keluaran, yang ditentukan oleh implementasi spesifik bahasa tersebut. Bentuk representasi nilai di bidang keluaran sesuai dengan jenis variabel dan ekspresi: nilai tipe bilangan bulat dikeluarkan sebagai bilangan desimal bilangan bulat, dari tipe nyata - sebagai bilangan desimal nyata dengan urutan desimal, dari tipe karakter dan string - sebagai karakter, dari tipe logis - sebagai konstanta logis BENAR Dan PALSU.

Operator keluaran memungkinkan Anda mengatur lebar bidang keluaran untuk setiap elemen daftar keluaran. Dalam hal ini, elemen daftar keluaran berbentuk A:K, dengan A adalah ekspresi atau string, K adalah ekspresi atau konstanta bilangan bulat. Jika nilai keluaran menempati posisi lebih sedikit di bidang keluaran daripada K, maka spasi ditempatkan sebelum nilai ini. Jika nilai yang ditampilkan tidak sesuai dengan lebar bidang K, maka jumlah posisi yang diperlukan akan dialokasikan untuk nilai ini. Untuk nilai bertipe real, elemen daftar keluaran dapat berbentuk A:K:M, di mana A adalah variabel atau ekspresi bertipe real, K adalah lebar bidang keluaran, M adalah bilangan digit bagian pecahan dari nilai keluaran. K dan M adalah ekspresi atau konstanta bertipe integer. Dalam hal ini, nilai sebenarnya dikeluarkan dalam bentuk desimal titik tetap.

  • Sergei Savenkov

    semacam ulasan "pendek"... seolah-olah mereka sedang terburu-buru di suatu tempat