1 00:00:00,000 --> 00:00:02,830 >> SPEAKER 1: Mari kita menulis sebuah program yang mendorong pengguna untuk positif 2 00:00:02,830 --> 00:00:05,950 integer, n, dan kemudian mencetak keluar jumlah dari semua angka 3 00:00:05,950 --> 00:00:07,980 antara 1 dan n. 4 00:00:07,980 --> 00:00:10,580 Nah, di sini kita memiliki utama, yang saya sudah sudah tertulis di muka. 5 00:00:10,580 --> 00:00:13,520 Dan perhatikan di sini di bagian atas utama, saya mendeklarasikan int n. 6 00:00:13,520 --> 00:00:16,079 >> Saya kemudian, dalam beberapa saat do lingkaran, pertama mencetak 7 00:00:16,079 --> 00:00:17,530 bilangan bulat positif, silakan. 8 00:00:17,530 --> 00:00:21,070 Kemudian saya melanjutkan untuk mendapatkan bilangan bulat dari pengguna dengan get CS50 perpustakaan 9 00:00:21,070 --> 00:00:22,070 int fungsi. 10 00:00:22,070 --> 00:00:26,410 Dan kemudian dalam kondisi sementara saya di sini, saya pastikan bahwa n lebih besar dari atau 11 00:00:26,410 --> 00:00:30,480 sama dengan 1 sebelum aku benar-benar melanjutkan untuk melakukan sesuatu dengan nilai tersebut. 12 00:00:30,480 --> 00:00:31,520 >> Apa yang harus saya lakukan selanjutnya? 13 00:00:31,520 --> 00:00:34,690 Yah, aku memanggil fungsi bahwa aku akan untuk memanggil sigma, wakil dari 14 00:00:34,690 --> 00:00:37,700 sigma modal yang mungkin Anda miliki ingat dari kelas matematika yang 15 00:00:37,700 --> 00:00:40,860 menunjukkan bahwa Anda ingin untuk jumlah sesuatu dari satu nilai yang lain. 16 00:00:40,860 --> 00:00:44,540 Dan apa pun yang kembali berfungsi sebagai nilai kembali, aku akan menyimpan 17 00:00:44,540 --> 00:00:46,500 dalam variabel yang disebut jawaban. 18 00:00:46,500 --> 00:00:50,280 >> Akhirnya, sejalan terakhir saya di utama, aku akan mencetak apa jawabannya. 19 00:00:50,280 --> 00:00:52,840 Tentu saja, kita belum diimplementasikan fungsi ini sigma. 20 00:00:52,840 --> 00:00:54,590 Jadi bagaimana kita pergi untuk melakukan itu? 21 00:00:54,590 --> 00:00:58,040 >> Nah, di bagian bawah file saya, saya akan melanjutkan untuk menyatakan fungsi 22 00:00:58,040 --> 00:00:59,450 yang mengembalikan sebuah int. 23 00:00:59,450 --> 00:01:01,630 Dan aku akan menelepon bahwa fungsi sigma. 24 00:01:01,630 --> 00:01:06,340 Dan aku akan menentukan bahwa sebagai masukan fungsi yang menerima juga int. 25 00:01:06,340 --> 00:01:09,800 Dan aku akan menyebutnya hanya, untuk menjadi berbeda, m bukan n. 26 00:01:09,800 --> 00:01:12,120 Tapi kita bisa menyebutnya apa yang paling kami ingin. 27 00:01:12,120 --> 00:01:14,930 >> Di dalam tubuh fungsi ini aku akan melanjutkan untuk menggunakan familiar 28 00:01:14,930 --> 00:01:16,420 membangun, yaitu lingkaran. 29 00:01:16,420 --> 00:01:19,010 Tapi aku juga akan melakukan sedikit kewarasan memeriksa untuk memastikan bahwa 30 00:01:19,010 --> 00:01:22,340 pengguna tidak memberikan saya dengan nomor bahwa aku tidak mengharapkan. 31 00:01:22,340 --> 00:01:28,010 Secara khusus, saya akan lakukan jika m adalah kurang dari 1 dan, agak sewenang-wenang, 32 00:01:28,010 --> 00:01:31,280 Aku hanya akan kembali 0 jika nomor tersebut tidak positif 33 00:01:31,280 --> 00:01:32,800 bilangan bulat seperti yang saya harapkan. 34 00:01:32,800 --> 00:01:36,920 >> Lalu aku akan mendeklarasikan variabel disebut sum dan menginisialisasi ke 0. 35 00:01:36,920 --> 00:01:40,810 Hal ini pada akhirnya akan menyimpan jumlah semua nomor antara 1 dan m. 36 00:01:40,810 --> 00:01:43,550 Dan kemudian aku akan menggunakan familiar maju loop membangun. 37 00:01:43,550 --> 00:01:50,272 Untuk int i mendapat 1, i kurang dari atau sama dengan m, i plus plus. 38 00:01:50,272 --> 00:01:54,010 Dan kemudian, dalam tubuh ini lingkaran, aku hanya akan melakukan sum 39 00:01:54,010 --> 00:01:56,350 sama dengan jumlah ditambah i. 40 00:01:56,350 --> 00:02:01,900 Atau, lebih sederhana, jumlah ditambah sama dengan i, yang mencapai hasil yang sama. 41 00:02:01,900 --> 00:02:04,810 >> Dan kemudian terakhir, saya harus mengembalikan jumlah yang saya dihitung. 42 00:02:04,810 --> 00:02:07,640 Jadi saya tambahkan kembali sum. 43 00:02:07,640 --> 00:02:08,560 >> Sekarang aku belum selesai. 44 00:02:08,560 --> 00:02:11,360 Saya perlu mengajarkan C yang ini fungsi benar-benar ada. 45 00:02:11,360 --> 00:02:14,400 Dan atas file saya saya akan mendeklarasikan apa yang telah kita disebut fungsi 46 00:02:14,400 --> 00:02:18,270 prototipe, identik dengan tanda tangan yang saya gunakan ketika mendefinisikan fungsi 47 00:02:18,270 --> 00:02:19,250 beberapa saat yang lalu. 48 00:02:19,250 --> 00:02:22,450 >> Secara khusus, tepat di atas utama, Aku akan mengetik int 49 00:02:22,450 --> 00:02:26,080 sigma, int m, titik koma. 50 00:02:26,080 --> 00:02:29,240 Tidak melaksanakan fungsi lagi, hanya menyatakan hal itu. 51 00:02:29,240 --> 00:02:32,800 Jika sekarang saya simpan, kompilasi, dan menjalankan ini Program, mari kita lihat apa yang saya dapatkan. 52 00:02:32,800 --> 00:02:37,460 Membuat sigma 0 dot slash sigma 0. 53 00:02:37,460 --> 00:02:41,050 Dan sekarang mari kita memberikan bilangan bulat positif seperti 2, yang harus memberikan saya 54 00:02:41,050 --> 00:02:45,920 tiga, karena nilai antara 1 dan 2 adalah 1 ditambah 2 sama dengan 3. 55 00:02:45,920 --> 00:02:47,300 Dan memang, itulah apa yang saya dapatkan. 56 00:02:47,300 --> 00:02:49,940 >> Mari kita jalankan lagi, ini waktu dengan, katakanlah, 3. 57 00:02:49,940 --> 00:02:53,470 Jadi saya harus mendapatkan 1 ditambah 2 ditambah 3 harus memberi saya 6. 58 00:02:53,470 --> 00:02:54,740 Dan memang, saya mendapatkan 6. 59 00:02:54,740 --> 00:02:57,380 >> Dan mari kita coba satu nilai terakhir, mengatakan 50. 60 00:02:57,380 --> 00:03:01,160 Dan 1.275 adalah jawaban kami. 61 00:03:01,160 --> 00:03:02,253