>> Виступаючий 1: Давайте напишемо програму, яка запитує у користувача позитивне
ціле число, п, а потім роздруковує сума всіх чисел
між 1 та п.
Ну, от у нас є головний, який я вже написав заздалегідь.
І зверніть увагу, тут у верхній частині Основний, я оголосити Int N.
>> Я тоді, всередині зробити в той час петля, спочатку роздрукувати
позитивне ціле число, будь ласка.
Тоді я продовжу, щоб отримати ціле число від користувач з Отримати бібліотеки CS50 в
Int функцію.
А потім у моєму а умова тут, я переконатися, що п більше або
дорівнює 1, перш ніж я насправді перейти зробити щось з цим значенням.
>> Що мені робити далі?
Ну, я викликаю функцію, яку я буду подзвонити сигма, представник
капітал сигма, що ви, можливо, відкликаний з математичних класів, що
вказує, що ви хочете, щоб підвести щось від одного значення до іншого.
І що б це функція повертає як повертається значення, я збираюся зберігати
у змінній, названої відповідь.
>> Нарешті, в моєму останньому лінії в основній, я в друк, що відповідь.
Звичайно, ми ще не реалізовані ця функція сигма.
Так як же нам цього зробити?
>> Ну, в нижній частині мого файлу, я збирається приступити до оголосити функцію
що повертає Int.
І я буду називати що функція сигма.
І я збираюся вказати, що в якості вхідних даних що функція приймає також до внутр.
І я буду називати його просто, щоб бути різні, м замість п.
Але ми могли б назвати це Найбільш все, що ми хотіли б.
>> Усередині тіла цієї функції я знаходжусь збирається продовжити використовувати знайомий
побудувати, а саме петлю.
Але я також збираюся зробити трохи розсудливості перевірки, щоб переконатися, що
користувач не надати мені номер що я не очікую.
Зокрема, я збираюся зробити, якщо т менше ніж 1, і кілька довільно,
Я просто збираюся повернутися 0, якщо кількість не є позитивним
ціле, як я очікую.
>> Тоді я збираюся оголосити змінну називається сума й ініціювати його в 0.
Це в кінцевому рахунку зберігати суму всі номери від 1 до м.
А потім я збираюся використовувати знайомий вперед конструкція циклу.
Для внутр я отримує 1, я менше або дорівнює т, я плюс плюс.
А потім, в тілі цього цикл, я просто збираюся зробити суму
дорівнює сумі плюс я.
Або, простіше кажучи, сума плюс дорівнює I, який досягає того ж результату.
>> А потім, нарешті, я повинен повернутися сума, яку я обчислений.
Так що я додати у зворотній суми.
>> Тепер я ще не закінчив.
Мені потрібно, щоб навчити C, що це Функція дійсно існує.
І так на вершині мого файлу я збираюся оголосити те, що ми назвемо функцією
прототип, ідентична підпису що я використовував при визначенні функції
хвилину тому.
>> Зокрема, саме над головним, Я збираюся ввести Int
сигма, внутр м, крапка з комою.
Чи не реалізації функції знову, просто оголосивши її.
Якби я зараз зберегти, скомпілювати і запустити цей Програма, давайте подивимося, що я отримую.
Зробити сигма 0 точка слеш сигма 0.
А тепер давайте забезпечити позитивне ціле число як 2, який повинен дати мені
три, так як значення між 1 і 1 лютого плюс 2 дорівнює 3.
І справді, це те, що я отримую.
>> Давайте запустимо його знову, це Час, скажімо, 3.
Так що я повинен отримати 1 плюс 2 плюс 3 повинен дати мені 6.
І справді, я дійсно отримуєте 6.
>> І давайте спробуємо останній значення, скажімо, 50.
І 1275 це наша відповідь.