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

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

Войти
Регистрация
Восстановить пароль
 
Leonman
15 / 15 / 0
Регистрация: 17.06.2012
Сообщений: 267
#1

Непонятная ошибка - C++

29.09.2013, 16:26. Просмотров 300. Ответов 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
26
27
28
29
30
int length(int bin_number, int count)
{
    for (int i = 0; bin_number /= 10; ++i )
        count++;
    return count;
}
 
int bin_to_decimal(vector<int> bin_to_dec, int bin_number, int count, int sum_of_bin_to_dec)
{
    for(int i = 0; i < count+1; i++)
    {
       bin_to_dec.push_back((bin_number/((pow(10, count))%10)) * (pow(2, count)));
       count--;
    }
    for(int i = 0; i < bin_to_dec.size(); i++)
       sum_of_bin_to_dec += bin_to_dec[i];
 
       cout << "Binary code: " << bin_number;
       cout << " - in decimal number system is: " << sum_of_bin_to_dec;
       cout << endl << endl;
    return 0;
}
 
int main()
{
    int sum_of_bin_to_dec = 0, bin_number = 1111, count = 0;
    vector <int> bin_to_dec;
    length(bin_number, count);
    return 0;
}
А вот и ошибка, (в 13 строке) которую я не могу разобрать:
error: invalid operands of types '__gnu_cxx::__promote_2<int, int, double, double>::__type {aka double}' and 'int' to binary 'operator%'|
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.09.2013, 16:26
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Непонятная ошибка (C++):

Непонятная ошибка!? - C++
Есть задача: дан массив и число, переставить числа в массиве таким образом, чтобы слева от некоторой границы шли числа, меньшие или равные...

непонятная ошибка - C++
Люди срочно на помощь, в чем касяк // Экзам.cpp: определяет точку входа для консольного приложения. // #include &quot;stdafx.h&quot; ...

Непонятная ошибка - C++
Задание:С помощью табуляции сделать прогу,которая выводит таблицу.Надо ,чтоб там был цикл While /* * proga.cpp * * Created on:...

непонятная ошибка - C++
#include &lt;iostream&gt; using namespace std; void main() { int **a, **b, n; cin &gt;&gt;n; a = new int *; for (int i=0; i&lt; n;...

Непонятная ошибка - C++
Доброго времени суток! Не могу понять в чём ошибка. #include &quot;stdafx.h&quot; #include &lt;iostream&gt; using namespace std; void...

непонятная ошибка - C++
Почему здесь выбивает ошибку? Помогите последнюю лабу сделать) if (x&lt;(*Node)-&gt;l) Add(x,&amp;(*Node)-&gt;l); #include &lt;iostream.h&gt; ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Fyret
184 / 170 / 13
Регистрация: 30.07.2013
Сообщений: 359
29.09.2013, 16:38 #2
Оператор % определен только для целочисленных типов, а у Вас double. Или приводите к целому типу, или используйте fmod.
1
castaway
29.09.2013, 16:41
  #3

Не по теме:

По-моему в этой задаче вообще не должны фигурировать числа с плавающей точкой..

0
Leonman
15 / 15 / 0
Регистрация: 17.06.2012
Сообщений: 267
29.09.2013, 16:55  [ТС] #4
Fyret, Не могли бы вы обьяснить, где у меня double?
0
Fyret
184 / 170 / 13
Регистрация: 30.07.2013
Сообщений: 359
29.09.2013, 17:00 #5
Цитата Сообщение от Leonman Посмотреть сообщение
Не могли бы вы обьяснить, где у меня double?
pow возвращает double.
0
Leonman
15 / 15 / 0
Регистрация: 17.06.2012
Сообщений: 267
29.09.2013, 17:11  [ТС] #6
Fyret, А почему тогда с этим куском строчки нет проблем, (pow(2, count))
0
Fyret
184 / 170 / 13
Регистрация: 30.07.2013
Сообщений: 359
29.09.2013, 17:17 #7
А какие там могут быть проблемы? Проблема в том, что оператор % неприменим к double. Этот оператор у Вас только одном месте используется.
0
Leonman
15 / 15 / 0
Регистрация: 17.06.2012
Сообщений: 267
29.09.2013, 17:17  [ТС] #8
А всё, понял.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.09.2013, 17:17
Привет! Вот еще темы с ответами:

Непонятная ошибка - C++
Вообщем имеется такой код: // главная программа aka programm.cpp #include &quot;Sales_item.h&quot; using namespace std; ...

Непонятная ошибка - C++
Добрый день. Переделывал код http://www.cyberforum.ru/cpp-beginners/thread53080.html под свои нужды. Немогу понять в чём ошибка. Заранее...

непонятная ошибка( - C++
// 1.cpp : main project file. #include &quot;stdafx.h&quot; #include &lt;cstdio&gt; // бібліотека введення-виводу #include &lt;cstring&gt; //...

Непонятная ошибка - C++
Здравствуйте, есть задача с графами - соединенные точки и тп, вот попытался сделать структуры и классы для этой задачи и получил ошибку...


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

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

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