C Програма за изчисляване на сумата на естествените числа

В този пример ще се научите да изчислявате сумата от естествени числа, въведени от потребителя.

За да разберете този пример, трябва да имате познанията по следните теми за програмиране на C:

  • C за Loop
  • C докато и правя … докато Loop

Положителните числа 1, 2, 3 … са известни като естествени числа. Сборът от естествени числа до 10 е:

 сума = 1 + 2 + 3 + … + 10 

Сума от естествени числа, използвани за цикъл

 #include int main() ( int n, i, sum = 0; printf("Enter a positive integer: "); scanf("%d", &n); for (i = 1; i <= n; ++i) ( sum += i; ) printf("Sum = %d", sum); return 0; ) 

Горната програма взема данни от потребителя и ги съхранява в променливата n. След това forцикълът се използва за изчисляване на сумата до n.

Сума от естествени числа, използвани, докато цикъл

 #include int main() ( int n, i, sum = 0; printf("Enter a positive integer: "); scanf("%d", &n); i = 1; while (i <= n) ( sum += i; ++i; ) printf("Sum = %d", sum); return 0; ) 

Изход

 Въведете положително цяло число: 100 Сума = 5050 

И в двете програми цикълът се повтаря n брой пъти. И във всяка итерация стойността на i се добавя към сумата и i се увеличава с 1.

Въпреки че и двете програми са технически правилни, по-добре е да използвате forцикъл в този случай. Това е така, защото броят на итерациите е известен.

Горните програми не работят правилно, ако потребителят въведе отрицателно цяло число. Ето една малка модификация на горната програма, където продължаваме да вземаме данни от потребителя, докато не бъде въведено положително цяло число.

Четене на вход, докато не се въведе положително цяло число

 #include int main() ( int n, i, sum = 0; do ( printf("Enter a positive integer: "); scanf("%d", &n); ) while (n <= 0); for (i = 1; i <= n; ++i) ( sum += i; ) printf("Sum = %d", sum); return 0; ) 

Посетете тази страница, за да научите как да намерите сумата от естествени числа, използвайки рекурсия.

Интересни статии...