Bagian situs
Pilihan Editor:
- Membuat pintasan desktop untuk teman sekelas
- Jika sepatu tidak pas dengan Aliexpress: tindakan yang benar dalam hal ini Produk Aliexpress memiliki ukuran yang tepat
- Sengketa di AliExpress Bergabunglah dengan perselisihan di AliExpress
- 3 basis informasi terdistribusi
- Manajer konten - tanggung jawab, gaji, pelatihan Kerugian dan keuntungan bekerja sebagai spesialis konten
- Bagaimana cara melindungi diri Anda dari penambangan tersembunyi di browser Anda?
- Pemulihan kata sandi di Ask
- Cara menghidupkan kamera di laptop
- Mengapa musik tidak diputar di VKontakte?
- Cara menambah ukuran drive C dengan mengorbankan drive D tanpa kehilangan data
Periklanan
Plugin - Pascal. Pascal |
Abs di Pascal, mengembalikan nilai absolut suatu variabel. Hasil yang dikembalikan oleh fungsi Abs sama dengan argumen - parameter yang diteruskan ke fungsi tersebut. Parameter ini dapat berupa tipe data numerik apa pun. Sintaks fungsi abs untuk bilangan bulat: fungsi Abs(L: PanjangInt) : PanjangInt; fungsi Abs(I: Int64) : Int64; Opsi terakhir hanya mungkin untuk dan , karena Pascal klasik tidak memiliki tipe data Int64. Sintaks fungsi abs untuk bilangan real: fungsi Abs(D: ValReal) : ValReal; ValReal adalah tipe data nyata dengan nilai terbesar yang tersedia dalam suatu data tertentu sistem operasi. Sebenarnya, ini adalah alias (alias) dari salah satu tipe Extended atau Double. Dan sekarang contoh penggunaannya: Program tidak berfungsi; varx: bilangan bulat = -100; kamu: bilangan bulat; mulai y:= Abs(x); //y = 100 WriteLn("Ab(-100) = ",y); //Menghasilkan 100 ReadLn; akhir. Disini kita mendeklarasikan terlebih dahulu variabel dengan nilai awal -100 (angka negatif). Dan pada programnya kita menggunakan fungsi Abs dan hasilnya variabel y akan sama dengan 100 (angka positif).Apa yang dihitung oleh fungsi Abs? Secara umum, Abs adalah kependekan dari Absolute. Seperti yang Anda duga, kata ini diterjemahkan sebagai “mutlak, murni, tidak diragukan lagi.” Anda harus ingat dari pelajaran matematika sekolah Anda bahwa bilangan mutlak, yaitu nilai mutlak atau modulus suatu bilangan x, adalah bilangan non-negatif yang definisinya bergantung pada jenis bilangan x. Dalam matematika, modulus suatu bilangan x dinotasikan sebagai berikut: |x|. Jadi, kita dapat mengatakan bahwa fungsi Abs(x) menghitung modulus bilangan x. Artinya, Abs(x) dalam Pascal sama dengan |x| dalam matematika. Dan terakhir, mari buat analogi fungsi kita sendiri yang mengembalikan modulus suatu bilangan. Jadi fungsinya akan menjadi seperti ini: Fungsi MyAbs(iNum: bilangan bulat) : bilangan bulat; mulai jika iNum Di sini kita meneruskan bilangan bulat ke fungsi tersebut, yang dapat berupa negatif atau positif. Dalam fungsi tersebut kami memeriksa nilai angka ini. Jika bilangannya negatif, maka kita kalikan dengan -1, sehingga diperoleh bilangan positif. Jika angkanya positif, maka kita tidak melakukan apa pun - kita cukup mengembalikan angka yang diterima melalui parameter iNum. Seperti yang Anda lihat, algoritmanya cukup sederhana. Benar, fungsi kami hanya dapat bekerja dengan bilangan bulat. Tapi ini hal sepele... Modul tidak mewakili program yang dapat dieksekusi, tetapi hanya berisi seperangkat alat untuk digunakan dalam program yang dapat dieksekusi: tipe data, variabel, prosedur, dan fungsi. Teks sumber modul memiliki ekstensi .pas. Modul dikompilasi secara terpisah dari program utama; modul yang dikompilasi memiliki ekstensi .tpu ( Turbo Pascal satuan). Modul kompilasi yang telah selesai dapat digunakan dalam program utama menggunakan klausa penggunaan, yang ditulis tepat setelah nama program. Turbo Pascal memiliki modul standar: DOS, CRT (Cathode Ray Tube), Printer, Grafik, Sistem dan lainnya. Mereka tidak perlu dijelaskan, tetapi dapat langsung dimasukkan ke dalam program dengan klausa penggunaan. Modul Sistem digunakan di semua program, jadi pengecualian telah dibuat untuknya; tidak perlu disertakan dalam klausa penggunaan, modul akan disertakan secara otomatis. Modul lain memerlukan penyertaan dalam klausa penggunaan jika program menggunakan sumber daya modul, seperti prosedur dan fungsi. Struktur modul Modul ini memiliki struktur berikut: Di Sini: Jadi, sebuah modul terdiri dari header dan tiga komponen, yang mana pun boleh kosong. Bagian antarmuka dibuka dengan kata kode Antarmuka. Bagian ini berisi deklarasi semua objek global modul (tipe, konstanta, variabel, dan subrutin) yang harus tersedia untuk program utama dan/atau modul lainnya. Perlu dicatat bahwa semua konstanta dan variabel yang dideklarasikan di bagian antarmuka modul, serta objek global dari program utama, ditempatkan oleh kompiler Turbo-Pascal dalam segmen data yang besar (panjang segmen maksimum 65521 byte). Urutan kemunculan berbagai bagian iklan dan jumlahnya bisa berubah-ubah. Anda tidak dapat menggunakan deskripsi penerusan di bagian antarmuka modul. Bagian yang dapat dieksekusi Bagian yang dapat dieksekusi dimulai dengan kata kode Pelaksanaan dan berisi kumpulan prosedur dan fungsi yang dideklarasikan di bagian antarmuka. Bagian ini juga dapat mendeklarasikan objek lokal pada modul: tipe tambahan, konstanta, variabel dan blok, serta label jika digunakan pada bagian awal. Prosedur dan fungsi global yang sebelumnya dideklarasikan di bagian antarmuka harus dijelaskan dalam urutan yang sama dengan headernya yang muncul di bagian antarmuka. Deskripsi blok global di bagian yang dapat dieksekusi harus didahului dengan header yang diperbolehkan untuk menghilangkan daftar variabel formal (dan tipe hasil untuk fungsi tersebut), karena sudah dijelaskan di bagian antarmuka. Tetapi jika header blok diberikan secara lengkap, mis. dengan daftar parameter formal dan deklarasi hasil, itu harus cocok dengan header yang dideklarasikan di front-end. Variabel dan konstanta lokal, serta semuanya kode program, yang dihasilkan selama kompilasi modul, ditempatkan di segmen memori bersama. Mengkompilasi modul Lingkungan Turbo Pascal mencakup alat yang mengontrol bagaimana modul dikompilasi dan memfasilitasi pengembangan proyek perangkat lunak besar. Secara khusus, tiga mode kompilasi didefinisikan: Kompilasi, Buat, dan Bangun. Mode tersebut hanya berbeda dalam cara modul dikompilasi atau program utama yang dikompilasi dikaitkan dengan modul lain yang dideklarasikan dalam klausa Uses. Saat mengkompilasi modul atau program utama dalam mode Kompilasi, semua modul yang disebutkan dalam klausa Penggunaan harus dikompilasi terlebih dahulu dan hasil kompilasinya harus ditempatkan dalam file dengan nama yang sama dengan ekstensi .TPU. Misalnya, jika suatu program (modul) memiliki klausa Uses Global, maka file GLOBAL.TPU seharusnya sudah ditempatkan pada disk di direktori yang dideklarasikan oleh opsi Unit direktori. File dengan ekstensi .TPU (dari Bahasa Inggris Turbo-Pascal Unit) dibuat sebagai hasil kompilasi modul. Dalam mode MAKE, kompiler memeriksa keberadaan file TPU untuk setiap modul yang dideklarasikan. Jika salah satu file tidak ditemukan, sistem akan mencoba mencari file dengan nama yang sama dengan ekstensi .PAS, mis. file dengan kode sumber modul, dan, jika file PAS ditemukan, mulailah mengkompilasinya. Selain itu, dalam hal ini, sistem memantau kemungkinan perubahan pada kode sumber modul apa pun yang digunakan. Jika ada perubahan yang dilakukan pada file PAS (kode sumber modul), maka terlepas dari apakah file TPU yang sesuai sudah ada di direktori atau belum, sistem akan mengkompilasinya sebelum mengkompilasi program utama. Selain itu, jika ada perubahan pada bagian antarmuka suatu modul, maka semua modul lain yang mengaksesnya juga akan dikompilasi ulang. Mode Make sangat menyederhanakan proses pengembangan program besar dengan banyak modul: programmer dibebaskan dari kebutuhan untuk memantau korespondensi file TPU yang ada dan teks sumbernya, karena sistem melakukan ini secara otomatis. Dalam mode Build, file TPU yang ada diabaikan dan sistem berupaya menemukan (dan mengkompilasi) file PAS yang sesuai untuk setiap modul yang dideklarasikan dalam Penggunaan. Setelah kompilasi dalam mode Build, programmer dapat yakin bahwa semua perubahan yang dia buat di salah satu modul telah diperhitungkan. Koneksi modul ke program utama dan kemungkinan kompilasinya dilakukan sesuai urutan deklarasinya di klausa Penggunaan. Saat berpindah ke modul berikutnya, sistem terlebih dahulu mencari semua modul yang dirujuknya. Tautan modul satu sama lain dapat membentuk struktur pohon dengan kompleksitas apa pun, tetapi referensi eksplisit atau tidak langsung dari modul ke modul itu sendiri dilarang. Pertanyaan 6 Modul CRT adalah perpustakaan prosedur dan deskripsi yang memperluas kemampuan pengguna saat bekerja dengan teks, layar teks, dan keyboard. Mari kita lihat beberapa di antaranya. 1). TextMode(mode: integer) - memilih mode teks yang ditentukan Mode CRT: 2).TextBackground (warna: byte) - Memilih warna latar belakang. Parameter warna adalah ekspresi bertipe integer, misalnya:
3). ClrScr - Pembersihan layar. Semua posisi karakter diisi dengan spasi. Ini menggunakan warna latar belakang saat ini yang ditentukan dalam prosedur TextBackGround. 4). TextColor (warna:byte) - Mengatur warna karakter. (konstanta untuk mengatur warna) 5). Window(x1,y1,x2,y2) - Mendefinisikan jendela teks di layar. Parameter x1,y1 adalah koordinat pojok kiri atas jendela, parameter x2,y2 adalah koordinat pojok kanan bawah. Ukuran minimumnya adalah satu kolom per baris. Maksimum - X=80, Y=25. Jika koordinatnya tidak valid, maka panggilan ke prosedur Window diabaikan. Secara default, jendela diatur untuk memenuhi seluruh layar. 6).GoToXY(x,y: byte) - Memposisikan kursor. Kursor berpindah ke posisi di dalam jendela saat ini, yang ditentukan oleh koordinat x dan y (x - menentukan kolom, y - menentukan baris). Jendela(1,10,60,20); GoToXY(1,1); Hal ini akan menyebabkan kursor berpindah ke titik dengan koordinat absolut (1,10). 7).WhereX dan WhereY masing-masing mengembalikan koordinat X dan Y untuk posisi kursor saat ini relatif terhadap jendela saat ini. Jenis hasil Byte. 8).Delay(ms:word) - Melakukan penundaan selama jumlah milidetik yang ditentukan. Parameter msec menentukan jumlah milidetik untuk menunggu. Namun prosedur ini hanya perkiraan, sehingga periode penundaan tidak akan sama persis dengan jumlah milidetik yang ditentukan. 9).READKey - Membaca karakter dari keyboard. 10).Suara - adalah prosedur yang mencakup pembicara dalam; Deskripsi: Suara (hertz: kata); dimana parameter “hertz” menentukan frekuensi sinyal yang dihasilkan dalam hertz. Suara akan berbunyi hingga dimatikan dengan memanggil prosedur NoSound; 11).NoSound - Mematikan speaker internal. Contoh penggunaan Suara, Penundaan, Tanpa Suara Suara (220); (nyalakan suara) Penundaan (300); (tunggu 300 ms) Tidak Ada Suara; (bisu) Pertanyaan 7 Modul grafik TP memiliki alat yang cukup beragam untuk bekerja dengan layar VGA standar. Adaptor VGA memiliki resolusi 640x480 piksel (titik (0,0) di pojok kiri atas layar), 16 warna. Sebelum Anda mulai bekerja dengan grafik, Anda perlu menginisialisasinya, dan setelah selesai, “tutup”. Semua prosedur dan fungsi grafis terletak di modul Graph, sehingga koneksinya juga diperlukan. Menggunakan crt, grafik; Jalur c:\bp\bgi menentukan lokasi file egavga.bgi (driver grafis). Pada komputer yang berbeda jalur ini mungkin berbeda-beda. Jika file egavga.bgi ditempatkan di direktori dengan program, maka jalurnya tidak perlu ditentukan. Prosedur dan fungsi grafis dasar: Membangun angka MasukkanPixel(x,y,c) Garis(x1,y1,x2,y2) Persegi Panjang(x1,y1,x2,y2) Batang(x1,y1,x2,y2) Lingkaran(x,y,r) Elips(x,y,ba,ea,xr,yr) IsiEllipse(x,y,xr,thn) |
1 |
Pencarian satuan; |
Untuk pengumuman dari modul ini, Anda perlu menentukan namanya di program:
Setelah itu dimungkinkan untuk menggunakan semua objek yang dijelaskan di bagian antarmuka.
Pelaksanaan
Bagian ini dimulai dengan kata Pelaksanaan(pelaksanaan). Di sinilah Anda perlu mendeskripsikan subrutin yang dideklarasikan di bagian antarmuka. Pada saat yang sama, diperbolehkan untuk tidak menunjukkan parameter formal di headernya, jika tidak parameter tersebut harus sepenuhnya sesuai dengan yang ada di bagian antarmuka. Selain itu, bagian antarmuka dapat berisi objek lokal (tidak dapat diakses oleh program pemanggil) untuk modul.
Bagian permulaan
Bagian inisiasi memulai pekerjaannya sebelum pelaksanaan program utama dimulai. Ini (antara Awal dan Akhir), sebagai suatu peraturan, menggambarkan operator yang dimaksudkan untuk berbagai jenis pekerjaan tambahan. Bagian ini mungkin hilang atau tidak ada kode apa pun. Dalam kasus pertama, Anda perlu menentukan Akhir dengan sebuah titik, dalam kasus kedua, sisakan ruang kosong di dalam Mulai dan Akhir.
Mengkompilasi modul
Anda hanya dapat menggunakan modul yang dikompilasi dalam program yang memiliki ekstensi yang disediakan oleh lingkungan pengembangan aplikasi Anda. Mari kita lihat tiga yang paling populer:
Turbo Pascal
Hasil kompilasi modul di Turbo Pascal akan berupa file berekstensi .tpu (Satuan Turbo Pascal), menyimpan kodenya.
Pascal Gratis
Setelah mengkompilasi modul di Free Pascal, dua file dibuat dengan resolusi berbeda: .ppu Dan .Hai. Yang pertama berisi bagian antarmuka modul, dan yang kedua (diperlukan untuk menyusun program) berisi bagian implementasi.
Pascal ABC.NET
Pascal ABC.Net tidak menghasilkan kode bahasa mesin selama kompilasi modul. Jika kompilasi berhasil, kode disimpan dalam file dengan izin .pcu.
Ada tiga mode kompilasi untuk lingkungan pemrograman Turbo Pascal dan Free Pascal: Kompilasi, Buat, dan Bangun. Dalam mode Kompilasi, semua modul yang digunakan dalam program harus dikompilasi terlebih dahulu. Aplikasi dalam mode kompilasi Make memeriksa semua modul yang terhubung untuk mengetahui keberadaan file dengan resolusi yang sesuai untuk lingkungan pemrograman (.tpu atau .o). Jika salah satu tidak ditemukan, maka dicari file dengan nama modul yang tidak ditemukan dan berekstensi .pas. Mode yang paling dapat diandalkan adalah Build. Pencarian dan kompilasi file (dengan ekstensi .pas) dalam mode ini terjadi bahkan ketika file modular sudah ada.
Contoh
Mari kita membuat modul kecil yang berisi prosedur pencarian biner dan linier elemen dalam array. Kode modul:
1 |
Pencarian satuan; |
Semua kode ini harus berada dalam file terpisah. Sekarang mari kita tulis program utama di mana kita akan menghubungkan modul Pencarian kita.
Membaca: |
---|
Baru
- Jika sepatu tidak pas dengan Aliexpress: tindakan yang benar dalam hal ini Produk Aliexpress memiliki ukuran yang tepat
- Sengketa di AliExpress Bergabunglah dengan perselisihan di AliExpress
- 3 basis informasi terdistribusi
- Manajer konten - tanggung jawab, gaji, pelatihan Kerugian dan keuntungan bekerja sebagai spesialis konten
- Bagaimana cara melindungi diri Anda dari penambangan tersembunyi di browser Anda?
- Pemulihan kata sandi di Ask
- Cara menghidupkan kamera di laptop
- Mengapa musik tidak diputar di VKontakte?
- Cara menambah ukuran drive C dengan mengorbankan drive D tanpa kehilangan data
- Penyebab kegagalan fungsi pada motherboard Jika chipset pada motherboard terbakar