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

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

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

Не правильно считает((( - C++

17.04.2011, 16:10. Просмотров 626. Ответов 10
Метки нет (Все метки)

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




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
#include "stdafx.h"
#include <stdlib.h>
#include <cstdlib>
#include <iostream>
#include <conio.h>
 
using namespace std;
int main()
{double A;
int k;
double r;
double B;
cout<<"Input A; "; cin>>A; //вводим A
cout<<"Input k: "; cin>>k; //вводим k
if(k>=0)
    for( int i = 0; i < k ; i++ )r*=A; //возводим число в степень.
if(k<0)
B=A-A/2;
for( int i = 0; i < k ; i++ )r*=B;
1/B;
cout<<"Otvet: "<<r<<endl; //выводим ответ.
system("pause");
return 0;
}

За ранние большое спасибо
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.04.2011, 16:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не правильно считает((( (C++):

Не правильно считает - C++
Нужно сосчитать количество столбцов, содержащих только положительные элементы. А программа неправильно считает. #include...

не правильно считает - C++
h=Edit1-&gt;Text.ToInt(); r=Edit2-&gt;Text.ToInt(); v=(r*r)*(3.14)*h; Label4-&gt;Caption=&quot; v= &quot;+FloatToStr(v); ...

Не правильно считает - C++
Найдите ошибку, почемуто не правильно выводит итог программа. #include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; ...

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

Почему не правильно считает ? - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; int main() { float vtetr; float s; float h;

Не правильно считает программа - C++
Чем больше ввожу столетие, тем меньше пятниц 13 получается. #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;math.h&gt; int...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Chelioss
180 / 180 / 4
Регистрация: 08.01.2011
Сообщений: 1,133
17.04.2011, 16:13 #2
Что такое
C++
1
B=A-A/2;
?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "stdafx.h"
#include <stdlib.h>
#include <cstdlib>
#include <iostream>
#include <conio.h>
 
using namespace std;
int main()
{double A;
int k;
cout<<"Input A; "; cin>>A; //вводим A
cout<<"Input k: "; cin>>k; //вводим k
double r  = A;
for( int i = 0; i < k ; i++ )r*=A; //возводим число в степень.
 
if(k<0)
  r=1/r;
 
cout<<"Otvet: "<<r<<endl; //выводим ответ.
system("pause");
return 0;
}
0
kazak
3035 / 2356 / 155
Регистрация: 11.03.2009
Сообщений: 5,402
Завершенные тесты: 1
17.04.2011, 16:15 #3
А r кто инициализировать будет?
0
OneLove
0 / 0 / 0
Регистрация: 21.11.2010
Сообщений: 28
17.04.2011, 16:20  [ТС] #4
Цитата Сообщение от Chelioss Посмотреть сообщение
Что такое
C++
1
B=A-A/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
#include "stdafx.h"
#include <stdlib.h>
#include <cstdlib>
#include <iostream>
#include <conio.h>
 
using namespace std;
int main()
{double A;
int k;
cout<<"Input A; "; cin>>A; //вводим A
cout<<"Input k: "; cin>>k; //вводим k
double r  = A;
if(k>=0)
        for( int i = 0; i < k ; i++ )r*=A; //возводим число в степень.
if(k<0)
{
     for( int i = 0; i < k ; i++ )r*=A;
     1/=B;
}
cout<<"Otvet: "<<r<<endl; //выводим ответ.
system("pause");
return 0;
}
C++
1
B=A-A/2;
это я перевожу со степени - в +
и потом делю на 1 и оно выходит минусовой
допустим -2 степень
тогда -2-2/2=2

Добавлено через 1 минуту
Цитата Сообщение от kazak Посмотреть сообщение
А r кто инициализировать будет?
как это сделать?
0
Chelioss
180 / 180 / 4
Регистрация: 08.01.2011
Сообщений: 1,133
17.04.2011, 16:22 #5
Это делается просто:
k=abs(k); // для этого надо подключить файл #include "math.h"
или
k*=-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
#include "stdafx.h"
#include <stdlib.h>
#include <cstdlib>
#include <iostream>
#include <conio.h>
 
using namespace std;
int main()
{double A;
int k;
cout<<"Input A; "; cin>>A; //вводим A
cout<<"Input k: "; cin>>k; //вводим k
double r  = A;
if(k<0)
    k*=-1;
for( int i = 0; i < k ; i++ )r*=A; //возводим число в степень.
 
if(k<0)
  r=1/r;
 
cout<<"Otvet: "<<r<<endl; //выводим ответ.
system("pause");
return 0;
}
0
OneLove
0 / 0 / 0
Регистрация: 21.11.2010
Сообщений: 28
17.04.2011, 16:30  [ТС] #6
Цитата Сообщение от Chelioss Посмотреть сообщение
Это делается просто:
k=abs(k); // для этого надо подключить файл #include "math.h"
или
k*=-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
#include "stdafx.h"
#include <stdlib.h>
#include <cstdlib>
#include <iostream>
#include <conio.h>
 
using namespace std;
int main()
{double A;
int k;
cout<<"Input A; "; cin>>A; //вводим A
cout<<"Input k: "; cin>>k; //вводим k
double r  = A;
if(k<0)
    k*=-1;
for( int i = 0; i < k ; i++ )r*=A; //возводим число в степень.
 
if(k<0)
  r=1/r;
 
cout<<"Otvet: "<<r<<endl; //выводим ответ.
system("pause");
return 0;
}

ВСеравно не правильно считает((
2 в квадрате=8
а 2 в -квадрате =2
помогите кто то плизик)))
0
Chelioss
180 / 180 / 4
Регистрация: 08.01.2011
Сообщений: 1,133
17.04.2011, 16:33 #7
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
#include "stdafx.h"
#include <stdlib.h>
#include <cstdlib>
#include <iostream>
#include <conio.h>
 
using namespace std;
int main()
{double A;
int k;
cout<<"Input A; "; cin>>A; //вводим A
cout<<"Input k: "; cin>>k; //вводим k
double r  = A;
int t=k;
if(k<0)
    k*=-1;
for( int i = 1; i < k ; i++ )r*=A; //возводим число в степень.
 
if(t<0)
  r=1/r;
 
cout<<"Otvet: "<<r<<endl; //выводим ответ.
system("pause");
return 0;
}
1
OneLove
0 / 0 / 0
Регистрация: 21.11.2010
Сообщений: 28
17.04.2011, 16:39  [ТС] #8
Цитата Сообщение от Chelioss Посмотреть сообщение
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
#include "stdafx.h"
#include <stdlib.h>
#include <cstdlib>
#include <iostream>
#include <conio.h>
 
using namespace std;
int main()
{double A;
int k;
cout<<"Input A; "; cin>>A; //вводим A
cout<<"Input k: "; cin>>k; //вводим k
double r  = A;
int t=k;
if(k<0)
    k*=-1;
for( int i = 1; i < k ; i++ )r*=A; //возводим число в степень.
 
if(t<0)
  r=1/r;
 
cout<<"Otvet: "<<r<<endl; //выводим ответ.
system("pause");
return 0;
}
Спасибо большое ты очень помог)))
0
kazak
3035 / 2356 / 155
Регистрация: 11.03.2009
Сообщений: 5,402
Завершенные тесты: 1
17.04.2011, 16:51 #9
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
#include <iostream>
 
using namespace std;
int main(int argc, char* argv[])
{
   int power;
   double num, res;
 
   cout << "Input number: ";
   cin >> num;
   cout << "Input power: ";
   cin >> power;
 
   if (power == 0)
      res = 1;
   else
   {
      if (power > 0)
         res = num;
      else
      {
         res = 1./num;
         power = abs(power);
      }
      for (int i = 1; i < power; i++)
         res *= res;
   }
   cout << "Result num^power = " << res << endl;
   system("pause");
   return 0;
}
1
OneLove
0 / 0 / 0
Регистрация: 21.11.2010
Сообщений: 28
17.04.2011, 17:09  [ТС] #10
Цитата Сообщение от kazak Посмотреть сообщение
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
#include <iostream>
 
using namespace std;
int main(int argc, char* argv[])
{
   int power;
   double num, res;
 
   cout << "Input number: ";
   cin >> num;
   cout << "Input power: ";
   cin >> power;
 
   if (power == 0)
      res = 1;
   else
   {
      if (power > 0)
         res = num;
      else
      {
         res = 1./num;
         power = abs(power);
      }
      for (int i = 1; i < power; i++)
         res *= res;
   }
   cout << "Result num^power = " << res << endl;
   system("pause");
   return 0;
}
спасибо и вам))

Добавлено через 1 минуту
А как сюда добавить еще
Программа выполняет вычисление и предлагает ввести следующую пару чисел. Отказом от продолжения служит возведение 0 в 0-ю степень.
0
kazak
3035 / 2356 / 155
Регистрация: 11.03.2009
Сообщений: 5,402
Завершенные тесты: 1
17.04.2011, 17:17 #11
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 <iostream>
 
using namespace std;
int main(int argc, char* argv[])
{
   int power;
   double num, res;
 
   while (1)
   {
      cout << "Input number: ";
      cin >> num;
      cout << "Input power: ";
      cin >> power;
 
      if (power == 0)
         break;
      if (power > 0)
         res = num;
      else
      {
            res = 1./num;
            power = abs(power);
      }
      for (int i = 1; i < power; i++)
         res *= res;
 
      cout << "Result num^power = " << res << endl;
   }
   system("pause");
   return 0;
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.04.2011, 17:17
Привет! Вот еще темы с ответами:

Не правильно считает формулу - C++
Написал программу для расчета Y по Х , но ответ не сходится.... Можете подсказать что не так в формуле ? Пример , который надо посчитать...

Почему не правильно считает? - C++
//--------------------------------------------------------------------------- #include &lt;vcl.h&gt; #pragma hdrstop ...

Cuda не правильно считает - C++
Здравствуйте, у меня тема курсовой работы &quot;Исследование технологии Cuda, и я решил что буду исследовать на примере перемножения двух...

Быки и коровы, не правильно считает их - C++
Не правильно считает быков и коров, помогите пожалуйста #include &lt;iostream&gt; #include &lt;locale.h&gt; #include &lt;cstdlib&gt; // rand() ...


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

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

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