Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.67/18: Рейтинг темы: голосов - 18, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 16.01.2014
Сообщений: 20

Мусор в массиве

16.01.2014, 01:17. Показов 3893. Ответов 21
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задание: Подсчитать количество ненулевых разрядов в двоичной записи заданного натурального числа.
Например в числе 13210 = 100001002 - 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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include "conio.h"
#include "stdio.h"
#include "math.h"
#include "stdlib.h"
 
void GetBit (int n, int mas[]) {
    for (int i=1;n>=1;i++){
      mas[31-i]=n%2;
      n/=2;
    }
}
void ClearArray (int mas[]) {
    for (int i=0;i<31; i++) {
        mas[i]=0;
    }
}
 
int Count (int c,int mas[]) {
    for (int i=0;i<31; i++) {
        if (mas[i]==1) {c++;}
    }
    return c;
}
 
int main()
{
   int x,n,a,b,c,i;
   int mas[32];
 
   ClearArray(mas);
   printf ("Vvedite chislo: \n");
   scanf("%i",&n);
   GetBit(n,mas); 
   printf ("Chislo v dvoichnom vide:\n");
 
   for (i=0;i<n;i++){
     printf ("%i",mas[i]);
     }
 
   printf ("Kolichestvo nenulevih razrjadov\n");
   printf ("%i",&c);
   
        while (!kbhit());
        return 0;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.01.2014, 01:17
Ответы с готовыми решениями:

Мусор в массиве
Cчитываю значения из файла с помощью метода класса All в массив xlim void All :: InputLim() { ifstream f; ...

Мусор в массиве
Откуда берется мусор после строки temp = c; ? #include &lt;iostream&gt; char * append(char* arr, char c) { int len = strlen(arr); ...

Мусор в массиве
Не могу понять в чем проблема, выводит мусор при компиляции в массивах name, avtor, izdat. Так же крашит при попытке ввода. #include...

21
1130 / 789 / 232
Регистрация: 12.04.2010
Сообщений: 2,012
16.01.2014, 12:51
Студворк — интернет-сервис помощи студентам
1) Диапазон переменной в цикле
C++
1
2
3
for (int i=0;i<32; i++) { /* в массиве 32 элемента,  i : 0, 1, 2, ... 30, 31  */
  // ... 
}
2) Перед началом цикла зададим начальное значение переменной c:
C++
1
2
3
4
5
6
7
8
9
int Count (int mas[]) {
 
    int c = 0;  /* начальное значение  */
 
    for (int i=0;i<32; i++) {
        if (mas[i]==1) {c++;}
    }
    return c;
}
3) В функцию main() добавим вызов функции Count().
C++
1
2
3
4
5
6
   // ...
   c = Count ( mas ); 
   printf ("\n\nKolichestvo nenulevih razrjadov\n");
   //printf ("Kolichestvo nenulevih razrjadov\n");
   printf ("%i",c);  /* вывод значения c */
   //printf ("%i",&c);  // &c - адрес переменной c
0
1130 / 789 / 232
Регистрация: 12.04.2010
Сообщений: 2,012
16.01.2014, 13:40
Цитата Сообщение от cooller_94 Посмотреть сообщение
C++
1
2
printf("Число в двоичном виде = %s\n",ltoa(N,a,2));
 printf("Количество = %d\n",Discharge(atoi(ltoa(N,a,2))));
cooller_94, 7 переводим в 111;
500 превращается 111110100.
А что если N > 1024 ? См.рис.
Миниатюры
Мусор в массиве  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.01.2014, 13:40

выводиться мусор в массиве
написал программу с динамическим массивом, которая удаляет первый отрицательный элемент и смещается к началу, но при вывод мы получаем...

Мусор в массиве символов
Есть класс, который при создании принимает текстовый массив, который будет являться числом, число записывается в int массив, определяется...

Мусор в строковом статическом массиве C++
Если строковый статический массив заполнить \0, а потом вводить символы, количество которых &lt; количество элементов массива, то...

Появляется мусор в динамическом массиве
Проблема начинается с 60 строчки кода. Мне нужно полученный результат записать в массив и вернуть его функции. Результат записывается...

Мусор в массиве после использования malloc и memcpy
Здравствуйте! Столкнулся со следующей проблемой. Подробнее в коде: #define BLOCK_SIZE = 16 ... unsigned int BlocksCount; ...


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

Или воспользуйтесь поиском по форуму:
22
Ответ Создать тему
Новые блоги и статьи
Просветление в 5 секунд
kumehtar 10.07.2026
Андрей Веретенников выдал фразу недавно: "Вам не обязательно кем-то себя считать"
Эксперимент с картинкой-обложкой на CodinGame
Adler 10.07.2026
Решил на днях провести эксперимент. У меня есть аккаунт на CodinGame, ТОП-3 по РФ среди 2200 участников (в разделе соревнования по программированию ИИ-ботов). Там есть обложка, куда можно влепить. . .
GitDOS: Когда я решил скрестить MS-DOS, GitHub и Claude
MaGz GoLd 08.07.2026
Привет, Киберфорум! Хочу поделиться своим проектом, который, надеюсь, вас заинтересует. GitDOS — это веб-приложение, которое позволяет запускать DOS в браузере с тремя крутыми фичами: диски живут в. . .
Учебный мини "цифровой двойник" = (Сервер = Java + Flask_питон )+(3D = Гугловскаая 4T nvideo + google colab) +( WMS = Odoo на Docker)
anaschu 07.07.2026
Увидел в требованиях к вакансии создателя имитационных моделей связку (REst + Api + WMS + Anylogic + питон + 3D Nvideo), и решил посмотреть, что это такое. Из этого всего я работал более менее. . .
Море в объективе
kumehtar 06.07.2026
Хотел написать много проникновенных слов, но передумал. Оно само - говорит. Кто слышит тот слышит.
Doom для терминала без стрельбы и монстров. 3D Raycasting на ascii.
dcc0 05.07.2026
Попросил нейронную сеть deepai. org написать рейкастинг 3D с библиотекой ncurses для Linux. Чтобы можно было ходить на стрелочки. Чтобы стены были отрисованы символами. Справилась. Первый вариант. . .
Установка статуса документа по условию
Maks 05.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "НарядПутевка" разработанного в КА2. Задача: в табличной части "Материалы" документа при записи автоматически устанавливать статус. . .
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет. Но обычно это 50 лет и более. Наверное, закисление почвы происходит сезонно в средней. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru