1 00:00:00,000 --> 00:00:02,830 >> SPEAKER 1: Mari kita menulis program yang meminta pengguna untuk positif 2 00:00:02,830 --> 00:00:05,950 integer, n, dan kemudian paparkan nombor jumlah semua nombor 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 mempunyai utama, yang saya telah lagi menulis terlebih dahulu. 5 00:00:10,580 --> 00:00:13,520 Dan notis di sini di bahagian atas utama, saya mengisytiharkan int n. 6 00:00:13,520 --> 00:00:16,079 >> Saya kemudian, di dalam manakala tugasan gelung, pertama mencetak 7 00:00:16,079 --> 00:00:17,530 integer positif, sila. 8 00:00:17,530 --> 00:00:21,070 Kemudian saya meneruskan untuk mendapatkan integer dari pengguna dengan mendapatkan perpustakaan CS50 ini 9 00:00:21,070 --> 00:00:22,070 int fungsi. 10 00:00:22,070 --> 00:00:26,410 Dan kemudian dalam keadaan semasa saya di sini, saya memastikan bahawa n adalah lebih besar atau 11 00:00:26,410 --> 00:00:30,480 sama dengan 1 sebelum saya benar-benar meneruskan untuk melakukan sesuatu dengan nilai itu. 12 00:00:30,480 --> 00:00:31,520 >> Apa yang saya lakukan seterusnya? 13 00:00:31,520 --> 00:00:34,690 Well, saya memanggil fungsi yang saya akan untuk memanggil sigma, wakil 14 00:00:34,690 --> 00:00:37,700 sigma modal yang anda mungkin mempunyai balik dari kelas matematik yang 15 00:00:37,700 --> 00:00:40,860 menunjukkan bahawa anda mahu sesuatu kesimpulan dari satu nilai yang lain. 16 00:00:40,860 --> 00:00:44,540 Dan apa sahaja yang fungsi pulangan yang nilai kembali, saya akan menyimpan 17 00:00:44,540 --> 00:00:46,500 dalam pembolehubah yang dipanggil jawapan. 18 00:00:46,500 --> 00:00:50,280 >> Akhir sekali, selaras terakhir saya di utama, saya akan mencetak apa jawapan adalah. 19 00:00:50,280 --> 00:00:52,840 Sudah tentu, kita belum lagi dilaksanakan fungsi ini sigma. 20 00:00:52,840 --> 00:00:54,590 Jadi bagaimana kita tidak melakukan itu? 21 00:00:54,590 --> 00:00:58,040 >> Nah, di bahagian bawah fail saya, saya akan meneruskan untuk mengisytiharkan fungsi 22 00:00:58,040 --> 00:00:59,450 yang mengembalikan int satu. 23 00:00:59,450 --> 00:01:01,630 Dan saya akan memanggil bahawa fungsi sigma. 24 00:01:01,630 --> 00:01:06,340 Dan saya akan menentukan bahawa sebagai input fungsi yang menerima juga int satu. 25 00:01:06,340 --> 00:01:09,800 Dan saya akan memanggilnya hanya, untuk menjadi yang berbeza, m dan bukan n. 26 00:01:09,800 --> 00:01:12,120 Tetapi kita boleh memanggilnya apa-apa yang paling kita suka. 27 00:01:12,120 --> 00:01:14,930 >> Dalam jasad fungsi ini saya akan meneruskan untuk menggunakan yang biasa 28 00:01:14,930 --> 00:01:16,420 membina, iaitu gelung. 29 00:01:16,420 --> 00:01:19,010 Tetapi saya juga akan melakukan sedikit kewarasan memeriksa untuk memastikan bahawa 30 00:01:19,010 --> 00:01:22,340 pengguna tidak memberikan saya dengan nombor bahawa saya tidak menjangkakan. 31 00:01:22,340 --> 00:01:28,010 Khususnya, saya akan lakukan jika m adalah kurang dari 1 dan, agak sewenang-wenangnya, 32 00:01:28,010 --> 00:01:31,280 Saya hanya akan kembali jika 0 jumlah itu tidak positif 33 00:01:31,280 --> 00:01:32,800 integer seperti yang saya harapkan. 34 00:01:32,800 --> 00:01:36,920 >> Kemudian saya akan mengisytiharkan pembolehubah dipanggil jumlah wang dan memulakan kepada 0. 35 00:01:36,920 --> 00:01:40,810 Ini akhirnya akan menyimpan jumlah semua nombor antara 1 dan m. 36 00:01:40,810 --> 00:01:43,550 Dan kemudian saya akan menggunakan biasa membina gelung ke hadapan. 37 00:01:43,550 --> 00:01:50,272 Untuk int i mendapat 1, i adalah kurang daripada atau sama dengan m, i plus plus. 38 00:01:50,272 --> 00:01:54,010 Dan kemudian, di dalam tubuh ini gelung, saya hanya akan melakukan jumlah 39 00:01:54,010 --> 00:01:56,350 sama jumlah ditambah i. 40 00:01:56,350 --> 00:02:01,900 Atau, lebih mudah, jumlah ditambah sama i, yang mencapai hasil yang sama. 41 00:02:01,900 --> 00:02:04,810 >> Dan kemudian akhir sekali, saya perlu kembali jumlah yang saya telah dikira. 42 00:02:04,810 --> 00:02:07,640 Jadi saya tambahkan jumlah pulangan. 43 00:02:07,640 --> 00:02:08,560 >> Kini saya tidak dilakukan lagi. 44 00:02:08,560 --> 00:02:11,360 Saya perlu mengajar C ini fungsi benar-benar wujud. 45 00:02:11,360 --> 00:02:14,400 Dan sebagainya di atas fail saya saya akan mengisytiharkan apa yang kita dipanggil fungsi 46 00:02:14,400 --> 00:02:18,270 prototaip yang serupa dengan tandatangan yang saya gunakan ketika menentukan fungsi 47 00:02:18,270 --> 00:02:19,250 sebentar tadi. 48 00:02:19,250 --> 00:02:22,450 >> Khususnya, di atas utama, Saya akan menaip int 49 00:02:22,450 --> 00:02:26,080 sigma, int m, koma bertitik. 50 00:02:26,080 --> 00:02:29,240 Tidak melaksanakan fungsi sekali lagi, hanya mengisytiharkan ia. 51 00:02:29,240 --> 00:02:32,800 Jika saya kini menyimpan, menyusun, dan menjalankan ini program, mari kita lihat apa yang saya dapat. 52 00:02:32,800 --> 00:02:37,460 Buat sigma 0 dot slash sigma 0. 53 00:02:37,460 --> 00:02:41,050 Dan sekarang mari kita menyediakan integer positif seperti 2, yang sepatutnya memberi saya 54 00:02:41,050 --> 00:02:45,920 tiga, kerana nilai-nilai antara 1 dan 2 adalah 1 campur 2 sama 3. 55 00:02:45,920 --> 00:02:47,300 Dan sesungguhnya, itulah yang saya dapat. 56 00:02:47,300 --> 00:02:49,940 >> Mari kita menjalankannya lagi, ini masa dengan, katakan, 3. 57 00:02:49,940 --> 00:02:53,470 Jadi saya perlu mendapatkan 1 campur 2 ditambah 3 harus memberi saya 6. 58 00:02:53,470 --> 00:02:54,740 Dan sesungguhnya, saya mendapat 6. 59 00:02:54,740 --> 00:02:57,380 >> Dan mari kita cuba satu nilai lepas, katakan 50. 60 00:02:57,380 --> 00:03:01,160 Dan 1,275 adalah jawapan kita. 61 00:03:01,160 --> 00:03:02,253