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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Stebalso
0 / 0 / 0
Регистрация: 27.02.2014
Сообщений: 2
#1

Возведение числа в целую степень - C++

27.02.2014, 14:00. Просмотров 573. Ответов 3
Метки нет (Все метки)

Даны числа а1 , а2 , а3 т.д.... вычислить а1^1+a2^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
24
25
26
#include<stdio.h>
#include<math.h>
const int N=5;
int A[N];
int i,s,m;
int main ()
{ 
for(i=1;i<N;i++);
{
    printf("Vvedite A[i]-\n");
    scanf("%d", &A[i]);
    
}
int FUNC(A[N]);
    
    {
       A[i]=A[i]^i;
    }
s=0;
for(i=1;i<N;i++)
{
m=FUNC(A[i]);
s=s+m;
}
printf("%d", s);
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.02.2014, 14:00     Возведение числа в целую степень
Посмотрите здесь:

C++ Возведение числа n в степень m.
Возведения числа в целую положительную и отрицательную степень C++
C++ Возведение числа в степень
Возведение в степень, отрицательные числа C++
Возведение дробного числа в степень C++
C++ Реализовать класс с методом возведения числа в целую степень
C++ Составить программу возведения числа n в целую степень
Возведение числа в степень через for C++
C++ Возведение из числа степень
C++ Возведение числа а в степень n
C++ Возведение числа в степень n-1
Возведение числа в целую степень C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SatanaXIII
Супер-модератор
Эксперт С++
5589 / 2623 / 239
Регистрация: 01.11.2011
Сообщений: 6,448
Завершенные тесты: 1
27.02.2014, 14:20     Возведение числа в целую степень #2
Цитата Сообщение от Stebalso Посмотреть сообщение
Где ошибка ?
Если основная, то функцию нельзя объявлять внутри другой функции. Использовать можно, но вот объявлять нельзя.
Anton_Kretov
89 / 51 / 7
Регистрация: 26.06.2013
Сообщений: 179
27.02.2014, 15:26     Возведение числа в целую степень #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
28
29
#include <iostream>
#include <cmath>
 
using namespace std;
 
const int NUMBER_OF_ELEMENTS = 10;
 
int setMultiple(int *numbersArray);
 
int main()
{
    int numbersArray[NUMBER_OF_ELEMENTS];
    int *intP = numbersArray;
    for(int i = 0; i < NUMBER_OF_ELEMENTS; i++) {
        cin >> numbersArray[i];
    }
 
    cout << "\n" << "Sum is: " << setMultiple(intP);
 
    return 0;
}
 
int setMultiple(int *numbersArray) {
    int sum = 0;
    for(int i = 0; i < NUMBER_OF_ELEMENTS; i++) {
        sum += pow(numbersArray[i], i + 1);
    }
    return sum;
}
Добавлено через 7 минут
Ваш код ужасен. Простите, если оскорбил. Прежде всего, вы не поняли, что такое функция. main() - это тоже функция, и вы не можете объявлять функцию внутри другой. Вы должны отдельно вынести прототип функции и ее объявление.
Далее, лучше перепишите строку 22 и 23 у вас. Ведь их можно в одну скомпоновать без промежуточной переменной, например, вот так:
C++
1
s += FUNC(A[i]);
И по поводу строки 17...
У вас программа неправильно будет работать. Используйте функцию pow, как у меня.
Напоследок, я вам советую функцию вычисления этой суммы сделать полной, т.е. вот этот код:
C++
1
2
3
4
5
6
7
8
9
10
11
int FUNC(A[N]);
    
    {
       A[i]=A[i]^i;
    }
s=0;
for(i=1;i<N;i++)
{
m=FUNC(A[i]);
s=s+m;
}
Привести к такому:
C++
1
2
3
4
5
6
7
int setMultiple(int *numbersArray) {
    int sum = 0;
    for(int i = 0; i < NUMBER_OF_ELEMENTS; i++) {
        sum += pow(numbersArray[i], i + 1);
    }
    return sum;
}
Stebalso
0 / 0 / 0
Регистрация: 27.02.2014
Сообщений: 2
01.03.2014, 21:05  [ТС]     Возведение числа в целую степень #4
Anton_Kretov, Спс )
Yandex
Объявления
01.03.2014, 21:05     Возведение числа в целую степень
Ответ Создать тему
Опции темы

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