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

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

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

Нужно исправить ошибку - C++

22.01.2014, 18:49. Просмотров 273. Ответов 2
Метки нет (Все метки)

При переводе из 10 в 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
#include <iostream>
#include <cmath>
#include <math.h>
#include <stdlib.h>
#include <stdio.h>
using namespace std;
int main()
{setlocale(0,"");
int i, b;
double c;
long double a,k;
cout<<"Введите число в 10-ой системе счисления: ";
cin >>a;
k=modf(a,&a);
   for(i=0;a>0;i++)
     {b = int(a) % 2;
        a = (a-b)/2;
        c += b * pow(10,i);}
cout<<"Вывод числа в 2-ой системе счисления: "<<c;
if(k!=0)
{cout<<".";
while (c!=0)
 {c=k*2;
if (c!=0)
cout <<int(c);
k=modf(c,&a);}
return 0;}
return 0;}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.01.2014, 18:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Нужно исправить ошибку (C++):

Нужно исправить ошибку - C++
Здравствуйте уважаемые форумчане. Не молчите пожалуйста, ответьте хоть кто-нибудь. Сколько писал никто не отвечает. Может потому что...

Нужно исправить ошибку - C++
Ошибки Error 1 error LNK2001: unresolved external symbol &quot;public: __thiscall Exceptions::OutOfBound::OutOfBound(int)&quot;...

Нужно исправить ошибку - C++
/* source: http://runnable.com/Us53wIV1TEVWAAHd/how-to-search-a-node-in-a-linked-list-for-c%2B%2B * A sample code of search a node with...

Нужно исправить ошибку - C++
При выполнении задачи необходимо создать массив структуры(Person: Фамилия, Имя, Отчество, Адрес, Пол, Образование, Год рождения) , ввести...

Нужно исправить ошибку - C++
Помогите исправить ошибку. Спасибо #include &lt;iostream&gt; #include &lt;stdlib.h&gt; #include &lt;Windows.h&gt; #include &lt;math.h&gt; using namespace...

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

2
Alex5
1102 / 763 / 119
Регистрация: 12.04.2010
Сообщений: 1,936
22.01.2014, 21:30 #2
У Вас не инициализирована переменная c.
C++
1
2
3
4
5
6
7
8
9
10
double c=0.0L;
//double c;  
 
// ...
 
for(i=0;a>0;i++)
{
    // ... 
    c += b * pow(10.0L,i);
}
Для двоичных цифр лучше использовать массив char[]. Иначе для больших чисел точности типа double окажется недостаточно - см. рис.
1
Миниатюры
Нужно исправить ошибку  
Alex5
1102 / 763 / 119
Регистрация: 12.04.2010
Сообщений: 1,936
22.01.2014, 21:31 #3
И что получится для отрицательных чисел ( a < 0 ) ?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.01.2014, 21:31
Привет! Вот еще темы с ответами:

Нужно исправить ошибку в коде! - C++
Вот задание: Создать приложение для вычисления значения арифметического выражения, которое может включать в себя действительные числа, а...

Нужно найти и исправить ошибку - C++
Нужно найти ошибку, мне кажется, что она связана с динамическим распределением памяти, вот только я не знаю как ее исправить( ...

Нужно найти ошибку и исправить ее - C++
Нужно сделать: Создать объект типа стек. Перегрузить оператор,!=, ==, &gt;, &lt;, &gt;=, &lt;=,++,--,+ Ввод, вывод в поток. Уже сделано: ...

Инверсия нужно исправить ошибку - C++
#include &lt;iostream&gt; #include&lt;iomanip&gt; #include&lt;cmath&gt; using namespace std; int main() { setlocale( LC_ALL,&quot;Russian&quot; ); ...


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

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

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