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

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

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

Дано натуральное число n - C++

20.01.2012, 14:08. Просмотров 594. Ответов 8
Метки нет (Все метки)

S=1-1/2+1/4-1/8+...+(-1)степень n*1/2 степень n
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.01.2012, 14:08
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Дано натуральное число n (C++):

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

Дано натуральное число N (N <= 100). Построить натуральное число, состоящее из N цифр и содержащее только цифры 1 и 2, которое делится на 2N - C++
Дано натуральное число N (N &lt;= 100). Построить натуральное число, состоящее из N цифр и содержащее только цифры 1 и 2, которое делится на...

Дано натуральное число m. Найти такое натуральное n, что двоичная запись n получается из двоичной записи m изменением порядка цифр на обратный ( - C++
Дано натуральное число m. Найти такое натуральное n, что двоичная запись n получается из двоичной записи m изменением порядка цифр на...

Заменить данное натуральное число на число, которое получается из исходного записью его цифр в обратном порядке. Например, дано число 156, нужно получ - C++
Вобщем,если не сложно,именно саму функцию помочь написать,ибо я просто не могу понять:) Добавлено через 22 минуты вот так...

Дано натуральное число N. Получить новое число М, которое образуется из числа N - C++
Дано натуральное число N. Получить новое число М, которое образуется из числа N путем замены последней цифры на значение наименьшей цифры в...

Дано натуральное число N и вещественное число x. Вычислить частичную сумму ряда. - C++
Дано натуральное число N и вещественное число x. Вычислить S=\sum \limits_{i = 1}^N \frac x {(N+i)!}

8
go
Эксперт С++
3586 / 1366 / 129
Регистрация: 16.04.2009
Сообщений: 4,527
20.01.2012, 14:33 #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
27
28
29
30
#include <stdio.h>
 
double pow( double base, int exp )
{
   size_t i;
   double res = 1;
 
   if ( exp < 0 )
      res = pow ( 1 / base , -1 * exp );
 
   for ( i = 0 ; i < (size_t) exp ; ++i )
      res *= base;
   return res;
}
 
double function(size_t n)
{
   double result = 1.0;
   size_t i;
   for ( i = 1 ; i < n ; ++i )
      result += (pow(-1., i) * pow(1. / 2, i));
   return result;   
}
 
int main(void)
{
   size_t n = 4;
   printf ("%.2lf", function(n) );
   return 0;
}
http://liveworkspace.org/code/b7a20c3fcbae6c1bc78e892586a96c56

Добавлено через 41 секунду
В следующий раз пишите нормально формулу, минут 5 лишних "копался", покуда по вашей написал.
1
easybudda
Модератор
Эксперт CЭксперт С++
9915 / 5838 / 975
Регистрация: 25.07.2009
Сообщений: 11,011
20.01.2012, 14:58 #3
go,
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
 
double go_pow( double base, int exp )
{
   size_t i;
   double res = 1;
 
   if ( exp < 0 )
      res = go_pow ( 1 / base , -1 * exp );
 
   for ( i = 0 ; i < (size_t) exp ; ++i )
      res *= base;
   return res;
}
 
int main(void){
    printf("%f\n", go_pow(2.0, -2));
    return 0;
}
уходит в бесконечный цикл
http://codepad.org/Y9FlIfGR
1
go
Эксперт С++
3586 / 1366 / 129
Регистрация: 16.04.2009
Сообщений: 4,527
20.01.2012, 15:18 #4
easybudda, -2 уже натуральное число?

Добавлено через 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
27
28
29
30
31
32
#include <stdio.h>
 
double pow( double base, int exp )
{
   size_t i;
   double res = 1;
 
   if ( exp < 0 )
      res = pow ( 1 / base , -1 * exp );
   else
   {   
      for ( i = 0 ; i < (size_t) exp ; ++i )
         res *= base;
   }      
   return res;
}
 
double function(size_t n)
{
   double result = 1.0;
   size_t i;
   for ( i = 1 ; i < n ; ++i )
      result += (pow(-1., i) * pow(1. / 2, i));
   return result;   
}
 
int main(void)
{
   size_t n = 4;
   printf ("%.2lf", function(n) );
   return 0;
}
http://liveworkspace.org/code/390ba992ddc881fff3bb2ca27dd1eaa9


easybudda, специально для Вас
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
 
double go_pow( double base, int exp )
{
   size_t i;
   double res = 1;
 
   if ( exp < 0 )
      res = go_pow ( 1 / base , -1 * exp );
   else
   {
      for ( i = 0 ; i < (size_t) exp ; ++i )
         res *= base;
   }
   return res;
}
 
int main(void){
        printf("%f\n", go_pow(2.0, -2));
        return 0;
}
http://codepad.org/4LEP30ae

Добавлено через 1 минуту
Цитата Сообщение от easybudda Посмотреть сообщение
уходит в бесконечный цикл
скорее в рекурсию
1
easybudda
Модератор
Эксперт CЭксперт С++
9915 / 5838 / 975
Регистрация: 25.07.2009
Сообщений: 11,011
20.01.2012, 15:22 #5
Цитата Сообщение от go Посмотреть сообщение
-2 уже натуральное число?
Ну функция возведения в степень тем не менее должна правильно работать, иначе к чему вообще было
Цитата Сообщение от go Посмотреть сообщение
if ( exp < 0 )
? Кстати, я в задании и запрета на использование стандартной pow не заметил...
1
go
Эксперт С++
3586 / 1366 / 129
Регистрация: 16.04.2009
Сообщений: 4,527
20.01.2012, 15:28 #6
Цитата Сообщение от easybudda Посмотреть сообщение
Ну функция возведения в степень тем не менее должна правильно работать, иначе к чему вообще было
Согласен. Мой промах.

Цитата Сообщение от easybudda Посмотреть сообщение
? Кстати, я в задании и запрета на использование стандартной pow не заметил...
не нужен он здесь.
0
Том Ардер
Модератор
Эксперт по математике/физике
3789 / 2401 / 308
Регистрация: 15.06.2009
Сообщений: 4,362
20.01.2012, 15:36 #7
http://www.cyberforum.ru/cgi-bin/latex.cgi?S=\sum_{n=0}^{}{\left(-\frac{1}{2} \right)}^{n}

Сумма бесконечной геометрической прогрессии

http://www.cyberforum.ru/cgi-bin/latex.cgi?S=\frac{1}{1-\frac{-1}{2}}=\frac{2}{3}


C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
#include <math.h>
 
int main(void)
{
    double eps = 1.e-5;
    double sum = 0;
    double an =1;
 
    while( fabs(an) > eps )
    {
        sum += an;
        an = -an/2;
    }
    printf("series\t%f\tcorrect\t%f\n", sum, 2./3.);
    return 0;
}
http://codepad.org/jcH26oji
1
go
Эксперт С++
3586 / 1366 / 129
Регистрация: 16.04.2009
Сообщений: 4,527
20.01.2012, 15:38 #8
Том Ардер, тут n-ую сумму найти необходимо...
0
Том Ардер
Модератор
Эксперт по математике/физике
3789 / 2401 / 308
Регистрация: 15.06.2009
Сообщений: 4,362
20.01.2012, 15:48 #9
Если сумма конечного числа слагаемых, то:

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
 
int main(void)
{
    double sum = 0;
    double an = 1;
    int n = 20;
    int k;
 
    for( k = 0; k < n; k++ )
    {
        sum += an;
        an = -an/2;
    }
    printf("n =%5d\tsum = %f\n", n, sum);
    return 0;
}
http://codepad.org/VeaqVYCY
1
20.01.2012, 15:48
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.01.2012, 15:48
Привет! Вот еще темы с ответами:

Дано натуральное четырехзначное число n. Определить, является ли это число перевертышем - C++
Дано натуральное четырехзначное число n. Определить, является ли это число перевертышем. Например, числа 2222, 6116, 0440 и т.д.

Дано натуральное число n, действительное число х. Вычислить sinx+sinx2+...+sinxn - C++
Прошу помочь с 3-мя задачками очень нужно сдать а сделать никак не могу. 1) Дано натуральное число n, действительное число х. Вычислить...

Дано шестизначное натуральное число. Определить число сотен и десятков в нем - C++
help Дано шестизначное натуральное число. Определить число сотен и десятков в нем. (Visual studio C++)

Дано натуральное число N. Получите новое число, перевернув его - C++
Дано натуральное число N. Получите новое число, перевернув его. В с++.


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

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

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