Halo dan selamat datang kembali.
Saya ingin memberi Anda yang lain tantangan, tugas lain.
Jelas, yang ini pergi menjadi semua tentang array.
Saya ingin Anda terbiasa dengan caranya menggunakan array, cara mengakses array,
dan cara membuat array.
Jadi, Anda harus menulis program c itu akan menemukan semua bilangan prima
dari 3 hingga 100.
Dan kita akan melakukannya itu sangat efisien.
Jadi kita akan menggunakan sedikit algoritma yang membuat Anda
menggunakan array, tetapi program yang sangat sederhana.
Itu hanya akan ditampilkan sebagai output, semua bilangan prima dari 3 sampai 100.
Dan alasan Anda tidak melakukan 0 to 3 adalah karena Anda akan membuat kode keras
itu, itu cukup sederhana.
2 pertama 2 bilangan prima pertama kita adalah 1 dan 2 yang bukan-0.
Jadi tidak akan ada masukan untuk program ini, hanya output.
Dan hasilnya akan menjadi setiap bilangan prima dipisahkan oleh
spasi pada satu baris.
Ini cukup mendasar, sepanjang jalan hingga 100.
Anda harus membuat array yang akan menyimpan
setiap bilangan prima saat dihasilkan.
Anda dapat membuat kode keras yang pertama 2 bilangan prima, yaitu
2 dan 3 dalam larik bilangan prima.
Jadi yang saya bayangkan di sini adalah Anda akan membuat sebuah
array, Anda akan menamakannya bilangan prima dan Anda hanya akan kode keras 2 pertama di sana.
Dan itu penting untuk kode keras mereka
juga karena algoritme yang akan kita gunakan untuk menemukan bilangan prima akan dibandingkan
dengan bilangan prima lainnya, dan Saya akan menjelaskannya sebentar lagi.
Anda ingin memanfaatkan loop untuk tugas ini hanya menemukan bilangan
prima hingga 100.
Jadi langsung saja, Anda harus bayangkan sebuah lingkaran setidaknya untuk menampilkan
bilangan prima yang Anda temukan.
Jadi itu mungkin akan menjadi akhir loop, loop
di akhir program Anda yang baru saja dilalui array bilangan prima dan menampilkan semua
yang ada di dalamnya.
sekarang jika Anda menemukan semua yang prima angka hingga 100, Anda tidak perlu
membuat ukuran array mungkin lebih dari 50 karena saya tidak berpikir ada
lebih dari 50 prime angka, hingga 100, tetapi Anda tidak akan dapat mengaturnya
persis benar karena Anda tidak tahu berapa banyak bilangan
prima yang ada.
Jadi saya akan mengatakan ketika Anda membuat array bilangan prima, buat saja ukuran 100.
Jadi, Anda pasti membutuhkan loop untuk mencetaknya di akhir.
Anda akan membutuhkan loop lain untuk mencoba menemukan bilangan prima.
Dan Anda dapat menemukan bilangan prima apa saja algoritma yang Anda inginkan, tetapi yang
akan saya gunakan adalah saya akan menggunakan sesuatu seperti ini karena ada lebih banyak alasan untuk menggunakan array jika
Anda melakukan algoritma ini.
Jadi kriteria yang bisa digunakan untuk
mengidentifikasi bilangan prima adalah bahwa suatu bilangan dianggap prima jika tidak habis dibagi dengan bilangan
prima lain sebelumnya.
Dan masih ada lagi untuk algoritma itu, tapi
itulah titik awalnya.
Anda juga ingin hanya melihat sampai jumlah tertentu.
Jadi Anda dapat menggunakan yang berikut ini sebagai x kondisi di loop terdalam.
Jadi sekali lagi, apa yang Anda butuhkan untuk memiliki di sini adalah
Anda mungkin perlu memiliki 2 loop.
Kami sudah menyebutkan yang ketiga loop di
bagian bawah mencetak data, tetapi Anda harus memiliki 2 loop untuk tugas ini.
Dan algoritme yang saya diskusikan di sini adalah algoritma yang lebih baik.
Jadi inilah mengapa Anda ingin melakukannya.
Sekarang jika Anda ingin mencari bilangan prima dengan cara yang berbeda,
tidak apa-apa selama Anda menggunakan array karena
seluruh tujuan penugasan bukanlah untuk memahami bilangan prima, itu untuk memahami cara menggunakan array.
Dengan melihat sebelumnya menghasilkan bilangan prima yang memaksa Anda untuk menggunakan
array dan Anda akan simpan bahwa setiap bilangan prima dihasilkan seperti
yang saya sebutkan.
Dan cara lain yang bisa Anda buat bahkan lebih optimal adalah Anda tidak ingin melihat
angka genap.
Jadi jika Anda melalui masing-masing angka dari 3 hingga 100 dan Anda memeriksa
apakah itu bilangan prima, Anda bisa abaikan bilangan genap karena bilangan genap tidak
akan pernah menjadi prima.
Jadi di lingkaran terluar atau loop terdalam, Anda dapat
memeriksa untuk melihat apakah bilangan prima habis dibagi oleh bilangan prima lainnya atau pastikan bukan itu, Anda dapat
memeriksanya dan melewatkannya.
Dan kemudian kondisi sumbu lainnya ini di loop terdalam adalah
untuk memastikan bahwa nilai p tidak melebihi akar kuadrat dari bilangan prima, itu bagian
lain dari algoritma.
Jadi ini mungkin tidak sepenuhnya masuk akal, tetapi pada dasarnya ini adalah beberapa kriteria yang saya
ingin Anda ikuti.
Lewati semua pemeriksaan untuk bilangan genap, dan kemudian algoritmanya adalah mencari
bilangan prima sebelumnya yang dihasilkan dan juga untuk memeriksa
apakah p tidak melebihi akar kuadrat dari bilangan prima karena itu yang
lain cara memeriksa bilangan prima.
Jadi, Anda harus memiliki a for loop yang pada dasarnya berubah
dari 5 hingga 100 dan kemudian Anda dapat tingkatkan itu dengan 2 sehingga Anda
hanya mencari angka ganjil.
Dan kemudian di dalam for loop Anda ada di dalam
sana, Anda akan ingin pergi dari 1 sampai yang lain ini nilai p dibagi prima sub-I lebih besar dari sama
dengan prima sub-I.
Dan Anda mungkin juga ingin membuat yakin bahwa nomor tersebut bukan prima.
Jadi Anda tidak ingin melebihi cek tertentu dan kemudian Anda juga ingin melompat keluar dari lingkaran
dalam jika Anda benar-benar menemukan bilangan prima.
Dan begitulah cara Anda dapat memeriksa bilangan prima jika bilangan Anda saat ini habis dibagi
dengan bilangan prima sebelumnya, sehingga Anda dapat melihat array bilangan prima.
Dan jika modulus untuk itu sama dengan 0, maka Anda tidak
memiliki bilangan prima.
Jika tidak, jika Anda sudah melakukan ini seluruh pemeriksaan di
seluruh loop ini dan Anda sudah keluar dari sana dengan melebihi prima
sub-I lebih besar dari prima sub-I akar kuadrat masalah dan Anda tidak benar-benar menemukan
bilangan prima, maka itu berarti bahwa Anda kemudian dapat menambahkan bilangan prima itu ke array bilangan prima Anda dan
kemudian cukup cetak array bilangan prima.
Jadi algoritma yang sebenarnya tidak tampak sama membingungkannya dengan yang saya buat.
Sekali lagi, coba beri Anda sebagai banyak petunjuk pseudocode di sana
mungkin dengan for luar loop di bagian dalam untuk loop.
Tetapi Anda harus mengakses array,
Anda akan membaca array, Anda akan melihat array untuk melihat nilai sebelumnya.
Ini akan membuat Anda sangat familiar dengan array.
Semoga berhasil, dan saya akan memberikan solusi di kuliah berikutnya yang akan
lebih masuk akal, tapi ini adalah persyaratan dan beberapa hits.
Terima kasih.