Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 03.10.2017
Сообщений: 73
1

Вывести битовое представление целого числа со знаком

31.10.2017, 20:08. Показов 1508. Ответов 8
Метки нет (Все метки)

как можно упростить данный код и исправить ошибки?
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
    signed int b;
    signed int c;
    signed int d;
    int massiv[32]
    for (signed int b=0; b<=31;b++) {
        massiv[b]=1;
}
scanf("%d"&a);
a=c;
b=0;
d=-1;
   if (a==0)
{
    d=0;
    massiv[0]=0;
}
else {
    while(a!=0) {
        if (a%2==0) 
        {
            massiv[b]=0;
            if (c<0)
            massiv[b]=1;
            a=a/2;
        }
        b++;
        d++;
    }
    if(c <0){
        massiv[0]=massiv[0]++;
        for(b=0;b<=d;b++)
        {
            if(massiv[b]==2){
                massiv[b]=0;
                if(b!=d)
                massiv[b+1]=massiv[b+1]++;
            }
            
        }
        d=31;
    }
}
for(d;d>=0;d--)
printf("%d",massiv[d]);
printf("\n");
getchar();
return 0;
}

ошибки :
1>c:\users\777\searches\desktop\для учебы\информатика\stroki\stroki\stroki.cpp(9): error C2143: синтаксическая ошибка: отсутствие ";" перед "for"
1>c:\users\777\searches\desktop\для учебы\информатика\stroki\stroki\stroki.cpp(12): error C2296: &: недопустимо, левый операнд имеет тип "const char [3]"
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.10.2017, 20:08
Ответы с готовыми решениями:

Вывести битовое представление целого числа со знаком
Проверьте пожалуйста код, просто выдает ошибки задание было следующее: Ввести из стандартного...

Вывести строки, которые представляют собой запись целого числа со знаком
Дан файл, состоящий из строк. Вывести строки, которые представляют собой запись целого числа со...

Битовое представление числа, старший байт
Здравствуйте, программисты. Имеется такой вот код. Все в это коде абсолютно понятно, не могли бы...

Функция, зеркально отображающая битовое представление числа
Необходимо написать программу которая зеркально переворачивает битовое представление целого числа,...

8
Диссидент
Эксперт C
26350 / 16356 / 3558
Регистрация: 24.12.2010
Сообщений: 36,216
31.10.2017, 20:10 2
nilsonafter, это какой-то случайный кусок кода?
0
298 / 207 / 174
Регистрация: 11.05.2016
Сообщений: 655
31.10.2017, 20:11 3
Вы бы написали, для начала, что оно теоретически делать должно
0
0 / 0 / 0
Регистрация: 03.10.2017
Сообщений: 73
31.10.2017, 20:13  [ТС] 4
Herji, Вывести битовое представление целого числа со знаком

Добавлено через 19 секунд
Байт,
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
#include <stdio.h>
#include <conio.h>
int main () 
{
    const int SIZE=32;
    int a, i, copy, m;
    int A[32];
    for (int i=0; i<SIZE;i++)
        A[i]=1;
    puts("a=?");
    scanf_s("%d",&a);
    copy=a;
    i=0;
    m=-1;
    if (a==0)
    {
        m=0;
        A[0]=0;
    }else
    {
        while(a!=0) 
        {
            if (a%2==0) 
            {
                A[i]=0;
                if (copy<0)
                    A[i]=1;
            }
            a/=2;
            i++;
            m++;
        }
        if( copy<0)
        {
            A[0]=A[0]+1;
            for(i=0;i<=m;i++)
            {
                if(A[i]==2)
                {
                    A[i]=0;
                    if(i!=m)
                        A[i+1]=A[i+1]+1;
                }
 
            }
            m=SIZE-1;
        }
    }
    for(m;m>=0;m--)
        printf("%d",A[m]);
    printf("\n");
    getch();
    return 0;
}
0
298 / 207 / 174
Регистрация: 11.05.2016
Сообщений: 655
31.10.2017, 20:16 5
Вывести битовое представление целого числа со знаком
0
0 / 0 / 0
Регистрация: 03.10.2017
Сообщений: 73
31.10.2017, 20:17  [ТС] 6
Herji, я знаю, но там слишком умные способы. я хочу именно этот код переделать.
0
151 / 134 / 45
Регистрация: 15.02.2010
Сообщений: 745
01.11.2017, 05:00 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
//проверено в Visual Studio 2017
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
    int a;   //исходное число
    cin >> a;
 
    char z = '+';//знак числа
    if (a < 0)
    {
        z = '-';
        a = -a;
    }
 
    int r = 2;  //система счисления
    char b[32]; //буфер результата
    char *p;  //указатель на результат
    p = itoa(a, b, r); //преобразование в r-ичную систему счисления
    cout << z<< p << endl;//вывод символьной строки co знаком
 
    system("pause");
return 0;
}
0
0 / 0 / 0
Регистрация: 03.10.2017
Сообщений: 73
01.11.2017, 17:50  [ТС] 8
LVV, это на с плюс плюс, а я на си работаю)
0
151 / 134 / 45
Регистрация: 15.02.2010
Сообщений: 745
02.11.2017, 06:59 9
Цитата Сообщение от nilsonafter Посмотреть сообщение
LVV, это на с плюс плюс, а я на си работаю)
Для С - сюда: https://www.cyberforum.ru/c-beginners/
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.11.2017, 06:59

Битовое представление вещественного числа, ошибка в коде
#include &lt;iostream&gt; using namespace std; void binary (double x); //функция вывода...

Вводим n. Нам нужно битовое представление этого числа
Вводим n. Нам нужно битовое представление этого числа Как-то не получается у меня с этой темой

Ввод целого числа со знаком
Помогите найти ошибку в функции считывания целого числа со знаком. Программа неверно считывает...

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


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru