Отправляет email-рассылки с помощью сервиса Sendsay

[TC] написать функцию на языке C.

привет, рассыльчане.
прошу помочь мне в решении следующей задачи:
написать функцию на языке c, принимающую один параметр n беззнакового
типа и возвращающую результат - сумму n-элементов последовательности
s[1] =1, s[k] =k*k*k (для k > 1)
заранее большое спасиббо.

Ответить   Mon, 19 Sep 2011 23:57:12 +0700 (#1890154)

 

Ответы:

здраствуйте уважаемый Дима,
ниже простое решение вашей задачи.
С почтением,
Анатолий.

#include "stdafx.h"

unsigned long getSum(const unsigned int n) {
unsigned long res = 0;
unsigned long tmp;

unsigned int k, j;
for(k = 1; k <= n; k++) {
tmp = 1;
for(j = 0; j < k; j++)
tmp *= k;

res += tmp;
} // loop

return res;
} // fun

int main(int argc, char* argv[]) {
printf("result is: %d", getSum( 4 ) );
return 0;
} // fun

Original Message > привет, рассыльчане.

Ответить   Tue, 20 Sep 2011 02:06:02 +0300 (#1890730)

 

Приветствую всех.

У этой задачи есть еще одно решение на основе рекурсии (почти в одну строчку).

Зачем вы вычисляете k в степени k?

Успехов. Анатолий.

Ответить   "i_chay" Tue, 20 Sep 2011 19:38:26 +0400 (#1892241)