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

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

Войти
Регистрация
Восстановить пароль
 
taras atavin
Ушёл с форума.
3569 / 1753 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
#1

Степень всеми циклами и двумя рекурсиями - C++

09.12.2012, 19:11. Просмотров 210. Ответов 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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
#include <iostream.h>
double degree1(double A, signed int n);
double degree1(double A, unsigned int n);
double degree2(double A, signed int n);
double degree2(double A, unsigned int n);
double degree3(double A, signed int n);
double degree3(double A, unsigned int n);
double degree4(double A, signed int n);
double degree4(double A, unsigned int n);
double degree5(double A, signed int n);
double degree5(double A, unsigned int n);
 
int main ()
{
 double A;
 double r1;
 double r2;
 double r3;
 double r4;
 double r5; 
 signed int n1;
 unsigned int n2;
 std::cin>>A;
 std::cin>>n1;
 r1=degree1(A, n1);
 r2=degree2(A, n1);
 r3=degree3(A, n1);
 r4=degree4(A, n1);
 r5=degree5(A, n1);
 std::cout<<r1<<std::endl;
 std::cout<<r2<<std::endl;
 std::cout<<r3<<std::endl;
 std::cout<<r4<<std::endl; 
 std::cout<<r5<<std::endl; 
 std::cin>>n2;
 r1=degree1(A, n2);
 r2=degree2(A, n2);
 r3=degree3(A, n2);
 r4=degree4(A, n2);
 r5=degree5(A, n2);
 std::cout<<r1<<std::endl;
 std::cout<<r2<<std::endl;
 std::cout<<r3<<std::endl;
 std::cout<<r4<<std::endl; 
 std::cout<<r5<<std::endl;
}
 
double degree1(double A, signed int n)
{
 signed int i;
 double r;
 r=1.0;
 for (i=1; i<=n; ++i)
 {
  r*=A;
 }
 for (i=-1; i>=n; --i)
 {
  r/=A;
 }
 return result;
}
double degree1(double A, unsigned int n)
{
 unsigned int i;
 double r; 
 for (r=1.0, i=1; i<=n; ++i)
 {
  r*=A;
 }
 return result;
}
double degree2(double A, signed int n)
{
 signed int i;
 double r;
 r=1.0;
 i=1;
 while (i<=n)
 {
  r*=A;
  ++i;
 }
 i=-1;
 while (i>=n)
 {
  r/=A;
  --i;
 }
 return result;
}
double degree2(double A, unsigned int n)
{
 unsigned int i;
 double r;
 r=1.0;
 i=1;
 while (i<=n)
 {
  r*=A;
  ++i;
 }
 return result;
}
double degree3(double A, signed int n)
{
 signed int i;
 double r;
 r=1.0;
 if (n>0)
 {
  i=0; 
  do 
  {
   r*=A;
   ++i;
  } while (i<=n)
 }
 if (n<0)
 {
  i=0;
  do
  {
   r/=A;
   --i;
  } while (i>=n)
 }
 return result;
}
double degree3(double A, unsigned int n)
{
 signed int i;
 double r;
 r=1.0;
 i=0; 
 do 
 {
  r*=A;
  ++i;
 } while (i<=n)
 return result;
}
double degree4(double A, signed int n)
{
 if (n==0)
 {
  return 1.0;
 }
 if (n<0)
 {
  return 1.0/degree4(A, -n);
 }
 return A*degree4(A, n-1);
}
double degree4(double A, unsigned int n)
{
 if (n==0)
 {
  return 1.0;
 }
 return A*degree4(A, n-1);
}
double degree5(double A, signed int n)
{
 signed int n1;
 if (n==0)
 {
  return 1.0;
 }
 n1=n/2;
 return degree4(A, n1)*degree4(A, n-n1);
}
double degree5(double A, unsigned int n)
{
 unsigned int n1;
 if (n==0)
 {
  return 1.0;
 }
 n1=n/2;
 return degree4(A, n1)*degree4(A, n-n1);
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.12.2012, 19:11
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Степень всеми циклами и двумя рекурсиями (C++):

Различия между двумя циклами - C++
объясните различия между двумя следующими циклами while #include &lt;iostream&gt; using namespace std; int main () { const...

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

Вычислить 10-ю степень двойки сложением, умножением и просто возведением в степень. - C++
Написать код на С++ или С# или на Java Вычислить 10-ю степень двойки 1 - сложением, умножением и просто возведением в степень.

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

Как возвести дробное число в целую степень? К примеру 2,7 возвести в степень 2 на C++. - C++
Как возвести дробное число в целую степень? К примеру 2,7 возвести в степень 2 на C++.

Заполнение html - таблицы двумя циклами - Ruby on Rails
Допустим есть два массива: 1. a = 2. b = Нужно генерить html - таблицу такого вида: |a|b| |1|4| |2|5| |3|6|

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
09.12.2012, 19:20 #2
Вопрос то в чем?
0
taras atavin
Ушёл с форума.
3569 / 1753 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
10.12.2012, 06:57  [ТС] #3
Вопроса нет, это подарок новичкам.

Добавлено через 11 часов 35 минут
Цитата Сообщение от taras atavin Посмотреть сообщение
#include <iostream.h>
То есть
C++
1
#include <iostream>
. Очепятка.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.12.2012, 06:57
Привет! Вот еще темы с ответами:

Оптимизировать код с двумя схожими циклами - C#
Подскажите, пожалуйста, в кусочке программы, приведенном ниже, как сделать, чтобы не писать 2 раза одно и то же (имеется в виду строчки из...

P16F876. Написать программу с двумя циклами - Микроконтроллеры
Народ проблема такая , нужно написать программу чтоб в ней было 2 цикла в 1 ( decfsz ) есть прога где только 1 цикл .......может кто то...

2 запроса в базу данных с двумя циклами - PHP БД
Всем привет, может заголовок не так сформулировал но в общем не могу понять. как мне вытащить переменную $members из цикла while($members...

Требуется разработать две программы (или одну с двумя циклами) с использованием операторов повтора (циклических операторов) WHILE и REPEAT - Pascal ABC
расчитать \sum_{\propto }^{n=1}{-1}^{n}\frac{1}{n(2n+1)} c точностью \alpha 0,001 Нужно разработать две программы (или одну с двумя...


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

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

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