Komputer, Pengaturcaraan
Pengeksponenan dalam Pascal pengaturcaraan: tips dan trik
Terdapat sejumlah besar bahasa pengaturcaraan, dan Pascal bukan tempat terakhir di kalangan mereka. Dan jika anda akan melibatkan diri secara serius dalam pengaturcaraan masa depan harus bermula membiasakan dengan dunia adalah dengan mempelajari bahasa itu, kerana ia adalah lebih mudah untuk persepsi dan yang lebih penting, program ini adalah benar-benar bebas.
Dalam artikel ini kita akan berurusan dengan masalah ini yang sukar, kerana pengeksponenan itu. Pascal, malangnya, tidak menawarkan kita untuk menyelesaikan masalah ini, tidak seperti bahasa pengaturcaraan lain, pengendali tunggal. Jadi di sini kita ada, sebagaimana yang mereka katakan, keluar dengan cara improvisasi, mengambil jalan keluar dengan gelung dan pengendali matematik - ia adalah di sini bahawa kita boleh memberikan mengekang bebas untuk imaginasi kita. Mempertimbangkan beberapa kaedah untuk menyelesaikan masalah ini.
Katakan kita diberikan satu tugas yang mudah, di mana sebilangan mesti dinaikkan ke tahap keseluruhan positif. Menganggap beberapa tegang pada 4 darjah. Terdapat dilakukan operasi matematik yang mudah: b: = a * a * a * a.
Contoh sebelumnya membolehkan kita untuk membina sejumlah hanya dalam kuasa kamiran positif. Tetapi ada cabaran di mana anda perlu membina nombor kepada kuasa pecahan. Semasa menulis program itu, kita perlu tahu sifat-sifat logaritma. Khususnya: a b = e ln b a . Atas dasar ini, bahagian yang dikehendaki program kami akan menjadi dalam bentuk: r: = exp (b * ln (a)). Tetapi di sini kita berhadapan dengan hakikat bahawa pengendali ini tidak berfungsi dengan sifar dan negatif nombor. Bagi memenuhi program pengeksponenan kami 0, anda perlu menetapkan syarat: Jika b = 0 Kemudian r: = 1 yang lain r: = exp (b * ln (a)). Tetapi bagi nombor negatif muncul pengeksponenan?
Pascal membuatkan kita berfikir lagi. Di sini ia adalah perlu untuk membuat operasi ini dengan jumlah modul kami dan mengambil data dengan keputusan yang negatif. Kemudian semak pariti Muda: sekiranya peringkat kita pun, sementara kami mengenai hasil modul. Dalam kes ini, program kami akan mempunyai bentuk yang: r: = (- 1) * exp (b * ln ( abs (a))); Jika Round (b / 2) = b / 2 Kemudian r: = abs (r) . keadaan di sini memeriksa, walaupun atau tiada ijazah.
Hasilnya, kita datang kepada model universal yang lebih program kami yang akan bekerjasama dengan mana-mana nombor. Jadi sekarang kita perlu bersatu dalam keseluruhan tunggal semua perkara di atas. Imej ke kanan anda boleh membaca teks penuh program selesai kami. Memberi perhatian kepada jenis data yang dinyatakan. Berbeza dengan program yang pertama, ia menggunakan Real, kerana Di sini kita sudah bekerja dengan mana-mana nombor, bukan hanya integer. Oleh itu, kuasa nombor nyata kami telah mempertimbangkan sepenuhnya. Hanya satu soalan masih belum dapat dipertimbangkan.
Similar articles
Trending Now