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

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

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

Составить программу вычисления точного значения n^n (Нужна помощь) - C++

09.10.2011, 19:03. Просмотров 740. Ответов 14
Метки нет (Все метки)

вотзадание
Составить программу вычисления точного значения n^n, где n > 10
Программа на C должна быть ,помогите если не сложно.
Заранее спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.10.2011, 19:03
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Составить программу вычисления точного значения n^n (Нужна помощь) (C++):

Составить программу для вычисления точного значения n!, где n > 12 - C++
Ребята помогите кто может,нужно написать прогу на языке с++..вот задание: Составить программу для вычисления точного значения n!, где n >...

Составить блок-схему, алгоритм вычисления и программу для вычисления значения кусочно заданной функции - C++
помогите пожалуйста =) заранее благодарен =) П.5.19.Правил Запрещено создавать темы в виде ссылок на задания или коды программ,...

Составить программу вычисления значения функции для значения аргумента x, вводимого с клавиатуры - C++
Формула f(x) = ln 3 ( x 2 +1 ) + arctg 2 ( x 2 + 1 ) Помогите, пожалуйста

Составить программу вычисления значения функции - C++
Привет. Помоги пожалуйста составить программу вычисления значения функции f(x,y) для заданных значений a, b, c и произвольного x с...

Составить программу для вычисления значения - C++
1) Найти сумму целых положительных чисел 30<n>100, кратных 3 и оканчивающихся на 2.4 и 8. 2)Составить программу для вычисления...

Составить программу вычисления значения функции - C++
Составить программу вычисления значения функции: (Помогите!Молю!) \begin{cases}<br /> a+bx+cx^2 & \text{ , } 1 \le x \lt 2 \\ <br />...

14
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
09.10.2011, 19:19 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include<iostream>
#include <math.h>
#include <iomanip>
using namespace std;
void main(void)
{
    setlocale(LC_ALL,"Russian");
    float n,z;
    cout<<"Введите n"<<endl;
    cin>>n;
   if (n>10)
   {
       z=pow(n,n);
       cout<z;
   }
   system("PAUSE");
}
0
Mayonez
380 / 272 / 21
Регистрация: 26.12.2009
Сообщений: 875
09.10.2011, 19:26 #3
sergeu90, во-первых, это не С и не С++, а во-вторых, это даже компилироватся не будет
0
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
09.10.2011, 19:27 #4
странно оно компилировалось

Добавлено через 29 секунд
а на с переделать я думаю ума хватит
0
Mayonez
380 / 272 / 21
Регистрация: 26.12.2009
Сообщений: 875
09.10.2011, 19:44 #5
sergeu90, 14 строчка, где <
0
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
09.10.2011, 19:46 #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include<iostream>
#include <math.h>
#include <iomanip>
using namespace std;
void main(void)
{
        setlocale(LC_ALL,"Russian");
        float n,z;
        cout<<"Введите n"<<endl;
        cin>>n;
   if (n>10)
   {
           z=pow(n,n);
           cout<<z;
   }
   system("PAUSE");
}
0
aeshes
440 / 203 / 13
Регистрация: 07.10.2011
Сообщений: 462
09.10.2011, 19:48 #7
тут есть другая проблема - при больших n не наступит ли переполнение? Мы, конечно, верим в то. что в float можно хранить большие числа, но он тем не менее ограничен где-то 10^38, т.е. например, при n=38 может уже и не работать
1
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
09.10.2011, 19:49 #8
c таким успехом можно и 10000000000000000 вессти и будет переполнение
0
Mayonez
380 / 272 / 21
Регистрация: 26.12.2009
Сообщений: 875
09.10.2011, 20:15 #9
aeshes, насколько я понял ТС нужна длинная арифметика, а не приведенный выше пример использования стандартной библиотечной функции
0
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
09.10.2011, 20:16 #10
по идеи свой класс надо писать
0
aeshes
440 / 203 / 13
Регистрация: 07.10.2011
Сообщений: 462
09.10.2011, 20:25 #11
ну как бы об этом речь и шла) потому что n=38 - это не экстраординарное значение) а работать не будет
так что работа с длинной арифметикой либо какие-то хитрые алгоритмы возведения в степень или представления данных
0
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
09.10.2011, 20:26 #12
да да я полностью согласен либо переводить это в строку и потом уже ее выводить
0
x1Mike7x
217 / 130 / 6
Регистрация: 06.11.2010
Сообщений: 234
09.10.2011, 20:39 #13
Через строку
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include <stdio.h>
#include <string.h>
 
char R[10000] = {};
 
void reverse()
{
    char temp;
    int left = 0, right = strlen( R ) - 1;
    while ( right > left )
    {
        temp = R[left];
        R[left] = R[right];
        R[right] = temp;
        ++left; --right;
    }
}
 
void my_pow( int N )
{
    int carry = 0, i, x, L, Z;
    R[0] = '1'; R[1] = '\0';
    for ( x = 1; x <= N; ++x )
    {
        L = strlen( R );
        for ( i = 0; R[i]; ++i )
        {
            Z = ( R[i] - '0' ) * N + carry;
            carry = Z / 10;
            Z %= 10;
            R[i] = Z + '0';
        }
        while ( carry )
        {
            R[i] = carry % 10 + '0';
            carry /= 10;
            ++i;
        }
        R[i] = '\0';
    }
    reverse();
}
 
int main( void )
{
    int N;
    scanf( "%d", &N );
    my_pow( N );
    printf( "%s\n", R );
    return 0;
}
0
castaway
Эксперт С++
4885 / 3020 / 370
Регистрация: 10.11.2010
Сообщений: 11,078
Записей в блоге: 10
Завершенные тесты: 1
09.10.2011, 21:41 #14
R1ch42, n^n - знак по середине - это показатель степени или операция XOR !?
0
Rыba
0 / 0 / 0
Регистрация: 12.10.2012
Сообщений: 38
07.11.2013, 19:12 #15
Добрый вечер,помогите пожалуйста переделать код этой задачи на паскаль,очень нужно
0
07.11.2013, 19:12
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.11.2013, 19:12
Привет! Вот еще темы с ответами:

Составить программу вычисления значения функции - C++
Составить программу вычисления значения функции y=\begin{cases} 1-sin\,x &amp; \text{ , } 5 \le x \lt 10 \\ \frac{1}{2}\cdot...

Составить программу вычисления значения функции - C++
Составить программу вычисления значения функции y. y=1*2+3*4+5*6+...+11*12+((1*3+2*4+3*5+...+8*10)/(2*5+5*8+8*11+...+14*17)) создал код...

Составить программу вычисления значения функции - C++
Помогите пожалуйста составить программу вычисления значения функции f(x,y) для заданных значений a, b, c и произвольного x с автоматическим...

Составить программу для вычисления значения функции F - C++
Составить программу для вычисления значения функции F при указанных значениях аргументов и вывода значений аргументов и функций на экран...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

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