Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
9 / 9 / 1
Регистрация: 05.09.2010
Сообщений: 195

Сжать массив отбрасыванием нулевых элементов

04.04.2011, 20:00. Показов 2370. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
помогите пожалуйста создать динамический массив и Сжать заданный массив b1, b2,...,bm отбрасыванием нулевых элементов!
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.04.2011, 20:00
Ответы с готовыми решениями:

Сожмите заданный массив A(N) отбрасыванием нулевых элементов
2.30*. Сожмите заданный массив A(N) отбрасыванием нулевых элементов. Добавлено через 1 минуту пожалуйста помогите с задачкой, очень...

Сжать массив путем вычеркивания нулевых элементов
Имеется целочисленный массив из n элементов,сжать массив путем вычеркивания нулывех элементов, если таких нет то вывести сжатие невозможно....

Массивы. Задан массив,содержащий несколько нулевых элементов. Сжать его выбросив эти элементы.
Задан массив,содержащий несколько нулевых элементов. Сжать его выбросив эти элементы.

6
 Аватар для vitaska
101 / 101 / 15
Регистрация: 04.02.2010
Сообщений: 162
04.04.2011, 21:21
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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
int main()
{
    srand( ( unsigned ) time ( NULL ) );
    int arrSize, tempSize, i, j, zeroCount = 0;
    int * mass, * temp;
    printf( "Input size of array: ");
    scanf( "%d", &tempSize );
    temp = ( int * ) malloc ( tempSize * sizeof( int ) );
    printf( "Array befour: ");
    for ( i = 0; i < tempSize; ++i ){
        temp[ i ] = rand() % 10;
        if( temp[ i ] == 0 )
            zeroCount++;
        printf( "%d ", temp[ i ] );
    }
 
    arrSize = tempSize - zeroCount;
 
    if ( arrSize != tempSize ){
        printf( "\n\nArray after:  ");
        mass = ( int * ) malloc ( arrSize * sizeof( int ) );
        for ( i = 0, j = 0; i < tempSize; ++i ){
            if ( temp[ i ] ){
                mass[ j ] = temp[ i ];
                ++j;
            }
        }
 
        for ( i = 0; i < arrSize; ++i ){
            printf( "%d ", mass[ i ] );
        }
        free( mass );
    }
    else
        printf( "\nArray does not have zero element\n\n" );
 
    free( temp );
    return 0;
}
0
9 / 9 / 1
Регистрация: 05.09.2010
Сообщений: 195
04.04.2011, 21:32  [ТС]
спасибо большое!а не скажите как сделать то же самое только в обычном одномерном массиве?
0
 Аватар для vitaska
101 / 101 / 15
Регистрация: 04.02.2010
Сообщений: 162
04.04.2011, 22:06
в смысле в обычном? не динамическом?
0
9 / 9 / 1
Регистрация: 05.09.2010
Сообщений: 195
04.04.2011, 22:14  [ТС]
да в обычном!если можно
0
 Аватар для vitaska
101 / 101 / 15
Регистрация: 04.02.2010
Сообщений: 162
04.04.2011, 22:32
это уже будет не сжатие массива, ну вообщем создай 2 одинковых по размеру массива и во второй не записвывай 0 значения циклом
C
1
2
3
4
5
6
    for ( i = 0, j = 0; i < tempSize; ++i ){
            if ( temp[ i ] ){
                mass[ j ] = temp[ i ];
                ++j;
         }
        }
затем в конец можно записать -1, вот как-то так
C
1
2
3
   for ( j; j < tempSize; ++j){
            mass[ j ] = -1;
        }
и выводить второй массив с условием, что элемент >= 0.
0
9 / 9 / 1
Регистрация: 05.09.2010
Сообщений: 195
04.04.2011, 23:19  [ТС]
а без tempSize можно?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.04.2011, 23:19
Помогаю со студенческими работами здесь

Найти сумму элементов и сжать массив
Условие в одномерном массиве, состоящем из n-действительных элементов, вычислить: 1) номер минимального по модулю элемента массива; ...

Вычислить сумму элементов массива, сжать массив
В одномерном массиве, состоящем из n вещественных элементов, вычислить: — сумму элементов массива с нечетными номерами; — сумму...

Сожмите заданный массив отбрасыванием нулевых элементов
15. Сожмите заданный массив A(N) отбрасыванием нулевых элементов. Выполнить вывод на печать полученного массива. помогите пожалуйста!!!

Сожмите заданный массив A(N) отбрасыванием нулевых элементов.
Сожмите заданный массив A(N) отбрасыванием нулевых элементов.

Сожмите заданный массив отбрасыванием нулевых элементов
1)Дана строка, содержащая полное имя файла. Выделить из строки название последнего каталога (без символов &quot;\&quot;). Если файл...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru