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

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

Восстановить пароль Регистрация
 
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
09.12.2012, 19:11     Степень всеми циклами и двумя рекурсиями #1
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);
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.12.2012, 19:11     Степень всеми циклами и двумя рекурсиями
Посмотрите здесь:

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

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

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

Добавлено через 11 часов 35 минут
Цитата Сообщение от taras atavin Посмотреть сообщение
#include <iostream.h>
То есть
C++
1
#include <iostream>
. Очепятка.
Yandex
Объявления
10.12.2012, 06:57     Степень всеми циклами и двумя рекурсиями
Ответ Создать тему
Опции темы

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