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

Перевод с десятичной в двоичную систему - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 136, средняя оценка - 4.65
Fobos1994
4 / 4 / 0
Регистрация: 15.04.2011
Сообщений: 271
28.03.2012, 18:36     Перевод с десятичной в двоичную систему #1
Здравствуйте,нужно написать програму (только чистый Borland C), которая переводит числа из десятичных в двоичные..!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Infinity3000
 Аватар для Infinity3000
1057 / 576 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
28.03.2012, 18:40     Перевод с десятичной в двоичную систему #2
Fobos1994, все дело в поиске!

Программа для перевода чисел из 10 системы в 2
Fobos1994
4 / 4 / 0
Регистрация: 15.04.2011
Сообщений: 271
28.03.2012, 19:12  [ТС]     Перевод с десятичной в двоичную систему #3
да,только там написано не под чистый с,а мне нужно под чистый..
Infinity3000
 Аватар для Infinity3000
1057 / 576 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
28.03.2012, 19:25     Перевод с десятичной в двоичную систему #4
Fobos1994, а что в Вашем понимании чистый С

уважаемый easybudda в посте номер 18 ввыше указанной теме привел решение на С, которое удачно работает в Borland C как вы упоминули выше

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 <stdio.h>
#include <limits.h>
 
#define INT_BIT CHAR_BIT * sizeof(int)
#define GREAT_INT_BIT 1 << ( INT_BIT - 1 )
        
void bits_to_str(int val, unsigned int mask, char * buf){
        if ( ! mask ){
                *buf = '\0';
                return;
        }
        *buf = val & mask ? '1' : '0';
        bits_to_str(val, mask >> 1, ++buf);
}
        
int main(void){
        char buf[BUFSIZ];
        
        printf("Enter some values (empty string - exit)\n");
        while ( printf("> ") && fgets(buf, BUFSIZ, stdin) ){
                if ( *buf == '\n' )
                        break;
                bits_to_str(atoi(buf), GREAT_INT_BIT, buf);
                printf("  %s\n", buf);
        }
        
        return 0;
}
Миниатюры
Перевод с десятичной в двоичную систему  
Fobos1994
4 / 4 / 0
Регистрация: 15.04.2011
Сообщений: 271
28.03.2012, 19:36  [ТС]     Перевод с десятичной в двоичную систему #5
Та я вижу..=)
Только если я им воспользуюсь,то несмогу преподу обьяснить как я дошел до такого,половины функций в коде я незнаю..ыы.
мне бы еслиб както по простому..
Диман56
22 / 22 / 0
Регистрация: 07.11.2011
Сообщений: 154
28.03.2012, 19:42     Перевод с десятичной в двоичную систему #6
Если время терпит, то ща пороюсь. Где-то было....И ещё вопрос-предел переводимых чисел? Хватит ли вам integer или хотя бы long integer?
Fobos1994
4 / 4 / 0
Регистрация: 15.04.2011
Сообщений: 271
28.03.2012, 19:44  [ТС]     Перевод с десятичной в двоичную систему #7
Нуу,это на твое усмотрение..
RocBoy-D
32 / 31 / 6
Регистрация: 10.03.2012
Сообщений: 361
28.03.2012, 19:57     Перевод с десятичной в двоичную систему #8
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include<stdio.h>
 
void printi(int n)
{
            int i;
 
            if( n < 0 ){  putchar( '-' ); n = -n;   }
        if( i = n / 2 )
                    printi( i );
            i = n % 2 ;
            putchar( i >= 10 ? 'A' + i - 10 : '0' + i );
}
 
void main()
{
         int n;
 
         scanf("%d",&n);
         printi(n);
}
Fobos1994
4 / 4 / 0
Регистрация: 15.04.2011
Сообщений: 271
28.03.2012, 20:00  [ТС]     Перевод с десятичной в двоичную систему #9
Спсибо огромное,а можеш хоть какието коментарии написать???
RocBoy-D
32 / 31 / 6
Регистрация: 10.03.2012
Сообщений: 361
28.03.2012, 20:03     Перевод с десятичной в двоичную систему #10
что именно не ясно?
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
28.03.2012, 20:06     Перевод с десятичной в двоичную систему #11
C
1
2
3
4
5
6
7
8
#include <stdio.h>
int main(){
 int n;
 printf("Enter decimal number:");
 scanf("%d", &n);
 printf("Your binary number is %b\n", n);
 return 0;
}>


Ой, не работает, а я так надеялся.
Fobos1994
4 / 4 / 0
Регистрация: 15.04.2011
Сообщений: 271
28.03.2012, 20:07  [ТС]     Перевод с десятичной в двоичную систему #12
Ну вот эта часть кода..
C
1
2
3
4
5
6
7
8
9
void printi(int n)
{
            int i;
 
            if( n < 0 ){  putchar( '-' ); n = -n;   }
            if( i = n / 2 )
                    printi( i );
            i = n % 2 ;
            putchar( i >= 10 ? 'A' + i - 10 : '0' + i );
это функция??
Можете написать что именно програма делает пошагово??
и если есть возможность к ней блоксхему хоть какуюто от руки..
RocBoy-D
32 / 31 / 6
Регистрация: 10.03.2012
Сообщений: 361
28.03.2012, 20:08     Перевод с десятичной в двоичную систему #13
наверно можно и так сделать
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include<stdio.h>
 
void printi(int n)
{
            int i;
 
            if( n < 0 ){  putchar( '-' ); n = -n;   }
            if( i = n / 2 )
                    printi( i );
            i = n % 2 ;
            putchar( '0' + i );
}
 
void main()
{
         int n;
 
         scanf("%d",&n);
         printi(n);
}
Fobos1994
4 / 4 / 0
Регистрация: 15.04.2011
Сообщений: 271
28.03.2012, 20:10  [ТС]     Перевод с десятичной в двоичную систему #14
что значит "printi",
и "void printi(int n)"??
это вы обьявляете функцию,или что??
Диман56
22 / 22 / 0
Регистрация: 07.11.2011
Сообщений: 154
28.03.2012, 20:13     Перевод с десятичной в двоичную систему #15

Не по теме:

Ну, как думаю, можно не искать



Добавлено через 38 секунд
Типичная функция, да ещё и рекурсивная
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
28.03.2012, 20:17     Перевод с десятичной в двоичную систему #16
Но мы пойдём другим путём
C
1
2
3
4
5
6
7
8
9
10
11
12
13
#define BYTETOBINARYPATTERN "%d%d%d%d%d%d%d%d"
#define BYTETOBINARY(byte)  \
  (byte & 0x80 ? 1 : 0), \
  (byte & 0x40 ? 1 : 0), \
  (byte & 0x20 ? 1 : 0), \
  (byte & 0x10 ? 1 : 0), \
  (byte & 0x08 ? 1 : 0), \
  (byte & 0x04 ? 1 : 0), \
  (byte & 0x02 ? 1 : 0), \
  (byte & 0x01 ? 1 : 0) 
...
 
  printf ("Leading text "BYTETOBINARYPATTERN, BYTETOBINARY(byte));
RocBoy-D
32 / 31 / 6
Регистрация: 10.03.2012
Сообщений: 361
28.03.2012, 20:19     Перевод с десятичной в двоичную систему #17
программа рекурсивная... Держи псевдокод
Функция printi
проверка знака введенного числа: если отрицательное меняем на противоположное;

если целая часть от деления n на 2 не равна 0 вызываем printi( i )
иначе вычисляем остаток от деления i на 2 и выводим на экран

Функция main
ввод n с клавиатуры
вызов функции printi
Fobos1994
4 / 4 / 0
Регистрация: 15.04.2011
Сообщений: 271
28.03.2012, 20:19  [ТС]     Перевод с десятичной в двоичную систему #18
А можете пожалуйста нарисовать блок-схему для этой задачи,хотябы в paint???=))
RocBoy-D
32 / 31 / 6
Регистрация: 10.03.2012
Сообщений: 361
28.03.2012, 20:20     Перевод с десятичной в двоичную систему #19
Fobos1994, printi - название функции, можешь назвать по-другому
void - тип функции
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.03.2012, 20:24     Перевод с десятичной в двоичную систему
Еще ссылки по теме:

C++ Перевести с десятичной в двоичную систему счисления
Функция перевода из десятичной в двоичную систему C++
Перевод из десятичной в двоичную систему счисления C++

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

Или воспользуйтесь поиском по форуму:
Fobos1994
4 / 4 / 0
Регистрация: 15.04.2011
Сообщений: 271
28.03.2012, 20:24  [ТС]     Перевод с десятичной в двоичную систему #20
RocBoy-D, Нарисуйте пожалуйста блоксхему=))
я очень прошу..=)
Yandex
Объявления
28.03.2012, 20:24     Перевод с десятичной в двоичную систему
Ответ Создать тему
Опции темы

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