Алгебраическая сумма 1^k + 2^k + 3^k + … + N^k

Уровень сложности:

Найти алгебраическую сумму для выражения: 1+ 2k + 3+ … + NkN и степень k вводит пользователь.

Результат работы программы показан ниже:

// algebraic_sum.cpp: определяет точку входа для консольного приложения.

#include "stdafx.h"
#include <iostream>
#include <cmath>
using namespace std;

int main(int argc, char* argv[])
{
    setlocale(LC_ALL, "rus");
    cout << "Введите N: ";
    unsigned n, // последний элемент суммы
             k, // степень
             sum = 0; // алгебраическая сумма
    cin >> n;
    cout << "Введите степень к: ";
    cin >> k;

    for (int counter = 1; counter <= n; counter++)
        sum += pow(counter, (float)k); // накапливаем сумму, согласно формуле
    cout << "Сумма: " << sum << endl;
    system("pause");
    return 0;
}

Вывод программы:

CppStudio.com

Введите N: 5
Введите степень к: 2
Сумма: 55

Следующие статьи помогут вам в решении данной задачи:
Автор: admin
Дата: 11.09.2012
Поделиться:

Комментарии

  1. Сеня Васильев

    RSL

     

    import globals;
    var
    n = 0,
    k = 0,
    y = 0,
    x :double = 0;
    getint(n, «Введите Число»);
    getint(k, «Введите степень»);

    for (y, n, 1)
    debugbreak;
    x = x + pow(n, k);
    n = n — 1;
    end;

    println(x);

  2. Сергей Цысь

    #include <iostream>
    #include <cmath>
    using namespace std;
    
    int computation (double sum1, double amount, double power);
    
    int main ()
    {
    	setlocale (LC_ALL,"rus");
    	
    	double sum(0), //сумма
    		amount, // количество
    		power;// степень
    	
    
    	cout << "\t Найти алгебраическую сумму для выражения: 1k + 2k + 3k + … + Nk\n\n";
    
    	cout << "Введите количество членов ряда и степень ";
    
    	cin >> amount >> power;
    
    	
    
    
    	cout << "\n\nСумма ряда равна " <<  computation ( sum, amount, power) << "\n";
    
    
    return 0;
    }
    int computation (double sum1, double amount1, double power1)
    	{
    		
    		cout <<"\nРяд (1k + 2k + 3k + … + Nk)  = ";
    		
    		for (int i = 1; i <= amount1; i++)
    	{
    		
    		
    		
    		cout << pow(i,power1) << " ";
    
    
    		sum1 +=  pow(i,power1);
    			
    		
    	}
    
    		
    		return sum1;
    		
    		cout << endl;
    
    
    
    	}
  3. zer9_is0

    Рекурсия

    #include "iostream"
    #include "windows.h"
    #include "math.h"
    
    using namespace std;
    
    int Fun_12 (int iN, int iK){
       return iN ? pow (iN, iK) + Fun_12(iN-1, iK):0;
    }
    
    int main(){
       cout<<Fun_12(5,2);
    }
  4. Максим Назаренко

    #include <iostream>
    #include <conio.h>
    
    using namespace std; 
    
    int main()
    {
    	setlocale(0, ""); 
    	int N, k, x = 0, counter; 
    	cout << "Введите N: "; 
    	cin >> N; 
    	cout << "Введите степень к: ";
    	cin >> k; 
    	for (int i = 1; i <= N; i++)
    	{
    		x += pow(i, k);
    	}
    	cout << "Сумма: " << x << endl;
    	_getch(); 
    	return 0;
    }

Оставить комментарий

Вы должны войти, чтобы оставить комментарий.