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

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

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

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

27.02.2014, 14:00. Просмотров 591. Ответов 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++):

Возведение числа в целую степень - C++
Задачка из методички моего вуза. Даны действительные числа a1,…,a10. Вычислить a1+(a2)^2+…+(a10)^2, используя подпрограмму возведения числа...

Рекурсивные функции: возведение вещественного числа в целую степень - C++
Цель: Надо разработать программу для возведения вещественного числа в целую степень. Как разработать?

Написать программу с функцией, вычисляющей целую степень дробного числа. Учесть,что степень может быть положительной, отрицательной, нулевой - C++
Написать программу с функцией, вычисляющей целую степень дробного числа. Учесть,что степень может быть положительной, отрицательной,...

Возведения числа в целую положительную и отрицательную степень - C++
Запрограммируйте алгоритм возведения числа в целую положительную и отрицательную степень. Пользователь вводит данные с клавиатуры....

Составить программу возведения числа n в целую степень - C++
Составить программу возведения числа n в целую степень. Правильно выбирайте раздел для размещения задачи

Реализовать класс с методом возведения числа в целую степень - C++
реализовать метод возвидения чесла в степень должно быть два поля, одно поле дробно, второе целое

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
SatanaXIII
Супер-модератор
Эксперт С++
5609 / 2643 / 244
Регистрация: 01.11.2011
Сообщений: 6,503
Завершенные тесты: 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, Спс )
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.03.2014, 21:05
Привет! Вот еще темы с ответами:

Возведение числа в степень n-1 - C++
Есть формула {(-1)}^{n-1}*{3}^{n-1} , n увеличивается циклом на 1. Как записать числа в степень n-1 без пользов. и стандартных функций??...

Возведение числа в степень - C++
Помогите написать программу, возводящщую число M в степень N (-10&lt;M&lt;10, 0&lt;N&lt;10 - проверить выполнение данных условий)

Возведение числа а в степень n - C++
Возведение числа а в степень n ,задача не проста чем , 1&lt;=а&lt;=10 | 1&lt;=n&lt;=7000 Степень может быть 7000 , и тут у меня возникли трудности ,...

Возведение числа n в степень m. - C++
Написать программу - возведение числа n в m-ю степень. Входные данные поступают с клавиатуры. Результат выводится на экран.


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
01.03.2014, 21:05
Ответ Создать тему
Опции темы

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