Форум программистов, компьютерный форум CyberForum.ru

Вложенные циклы.Нужно просто Исправить! - C++

Восстановить пароль Регистрация
 
Ri
 Аватар для Ri
48 / 11 / 1
Регистрация: 15.09.2011
Сообщений: 86
26.12.2011, 20:07     Вложенные циклы.Нужно просто Исправить! #1
Вот задание:Даны целые положительные числа N и K. Найти сумму
1^K + 2^K + … + N^K.
Чтобы избежать целочисленного переполнения, вычислять слагаемые этой суммы с помощью вещественной переменной и выводить результат как вещественное число.
Ниже код,все верно по идее,но работает лишь с некоторыми значениями(Помогите пожалуйста,если не сложно
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream.h>
#include <conio.h>
#include <math.h>
int main(void)
{
double N,k;
int sum,i,j,p;
clrscr();
cout << "\n Vvedite N=";
 cin >>N;
 cout<<"\n Vvedite k=";
 cin>>k;
 sum=1;
 p=1;
for (i=1;i<=N;i++)
for(j=1;j<=k;j++)
p*=i;
sum+=p;
cout<<"\n summa="<<sum;
getch();
return 0;
}
Добавлено через 53 минуты
насколько я понимаю нужно поставить фигурные скобки?одну перед вторым for а последнюю после 18 строки?

Добавлено через 10 минут
это не помогло((подскажите пожалуйста!!!(
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.12.2011, 20:07     Вложенные циклы.Нужно просто Исправить!
Посмотрите здесь:

C++ вложенные циклы
Вложенные циклы C++
C++ Вложенные циклы
C++ Вложенные циклы
C++ Вложенные циклы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
greeezz
272 / 165 / 4
Регистрация: 10.07.2011
Сообщений: 441
26.12.2011, 20:08     Вложенные циклы.Нужно просто Исправить! #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <conio.h>
using std::cout;
using std::cin;
 
int main(void) {
    double N, k;
    int sum, i, p;
 
    cout << "\n Vvedite N=";
    cin >> N;
    cout << "\n Vvedite k=";
    cin >> k;
    sum = 0;
 
    for (i = 1; i <= N; i++){
        p = i*k;
        sum += p;
    }
    cout << "\n summa=" << sum;
    getch();
    return 0;
}
Ri
 Аватар для Ri
48 / 11 / 1
Регистрация: 15.09.2011
Сообщений: 86
26.12.2011, 20:09  [ТС]     Вложенные циклы.Нужно просто Исправить! #3
И кому не сложно посмотрите еще вот что((:Найти значение выражения
Просто сдала все для зачета уже,только это осталось(все отлично понимаю кроме этой темы(она совсем хромает у меня(
Эндрю23
2 / 2 / 2
Регистрация: 20.10.2011
Сообщений: 91
26.12.2011, 20:27     Вложенные циклы.Нужно просто Исправить! #4
Цитата Сообщение от greeezz Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <conio.h>
using std::cout;
using std::cin;
 
int main(void) {
    double N, k;
    int sum, i, p;
 
    cout << "\n Vvedite N=";
    cin >> N;
    cout << "\n Vvedite k=";
    cin >> k;
    sum = 0;
 
    for (i = 1; i <= N; i++){
        p = i*k;
        sum += p;
    }
    cout << "\n summa=" << sum;
    getch();
    return 0;
}
Эта версия не работает, вернее работает, но далеко не для всех случаев..
Ri
 Аватар для Ri
48 / 11 / 1
Регистрация: 15.09.2011
Сообщений: 86
26.12.2011, 20:30  [ТС]     Вложенные циклы.Нужно просто Исправить! #5
да,работала для к=2,N=2 а для к=1 и N=5 у меня не сработала)и пролетела я с зачетом этой работы)

Добавлено через 1 минуту
да и цикла должно быть 2
greeezz
272 / 165 / 4
Регистрация: 10.07.2011
Сообщений: 441
26.12.2011, 21:20     Вложенные циклы.Нужно просто Исправить! #6
Цитата Сообщение от Ri Посмотреть сообщение
к=1 и N=5 у меня не сработала
программа работает корректно но не для формулы 1^K + 2^K + … + N^K. ..
я извиняюсь.. я перепутал умножение с возведением в степень. )
сейчас поправлю
Цитата Сообщение от Ri Посмотреть сообщение
да и цикла должно быть 2
зачем вам два цикла ? у вас K не меняется

Добавлено через 1 минуту
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <iostream>
#include <conio.h>
#include <cmath>
using std::cout;
using std::cin;
 
int main(void) {
    double N, k;
    int sum, i, p;
 
    cout << "\n Vvedite N=";
    cin >> N;
    cout << "\n Vvedite k=";
    cin >> k;
    sum = 0;
 
    for (i = 1; i <= N; i++){
        p = pow(i,k);
        sum += p;
    }
    cout << "\n summa=" << sum;
    getch();
    return 0;
}
Эндрю23
2 / 2 / 2
Регистрация: 20.10.2011
Сообщений: 91
26.12.2011, 21:21     Вложенные циклы.Нужно просто Исправить! #7
ПРосто преподаватель требует 2 цикла..

Добавлено через 43 секунды
и pow использовать запретили..
greeezz
272 / 165 / 4
Регистрация: 10.07.2011
Сообщений: 441
26.12.2011, 21:44     Вложенные циклы.Нужно просто Исправить! #8
Цитата Сообщение от Эндрю23 Посмотреть сообщение
ПРосто преподаватель требует 2 цикла
в предвдущем посте версия которая на мой взгляд вам нужна. Объясните для чего второй цикл. Переделаю.

Добавлено через 55 секунд
Цитата Сообщение от Эндрю23 Посмотреть сообщение
и pow использовать запретили
тогда все понятно
вы бы сразу сказали об этом. сейчас сделаю

Добавлено через 20 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <iostream>
#include <conio.h>
using std::cout;
using std::cin;
 
int main(void) {
    double N, k;
    int sum, i, p;
 
    cout << "\n Vvedite N=";
    cin >> N;
    cout << "\n Vvedite k=";
    cin >> k;
    sum = 0;
 
    for (i = 1; i <= N; i++) {
        p = i;
        for (int j = k; j > 1; --j) {
            p = i * p;
        }
        sum += p;
    }
 
    cout << "\n summa=" << sum;
    getch();
    return 0;
}
Эндрю23
2 / 2 / 2
Регистрация: 20.10.2011
Сообщений: 91
26.12.2011, 21:52     Вложенные циклы.Нужно просто Исправить! #9
Спасибо, все работает
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.12.2011, 21:55     Вложенные циклы.Нужно просто Исправить!
Еще ссылки по теме:

Вложенные циклы C++
Вложенные циклы C++
Вложенные циклы C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ri
 Аватар для Ri
48 / 11 / 1
Регистрация: 15.09.2011
Сообщений: 86
26.12.2011, 21:55  [ТС]     Вложенные циклы.Нужно просто Исправить! #10
Спасибо,что откликнулись на нашу проблему и нашли время для её решения!
Yandex
Объявления
26.12.2011, 21:55     Вложенные циклы.Нужно просто Исправить!
Ответ Создать тему
Опции темы

Текущее время: 10:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru