Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
1 / 1 / 0
Регистрация: 30.09.2018
Сообщений: 14
1

Все положительные элементы, имеющие нечетный порядковый номер, переписать в конец массива

09.11.2018, 14:46. Показов 1540. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задан массив из k чисел. Все положительные элементы, имеющие
нечетный порядковый номер, переписать в конец массива.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.11.2018, 14:46
Ответы с готовыми решениями:

Перенести в начало массива все положительные элементы, а в конец массива - все отрицательные
Помогите, пожалуйста, написать программу на языке Си: Дан одномерный массив А, состоящий из N ...

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

Если номер максимального элемента массива кратен 3 то все положительные элементы возвести в квадрат
Если номер максимального элемента массива кратен 3 то все положительные элементы возвести в квадрат...

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

5
Невнимательный
2780 / 1111 / 347
Регистрация: 08.02.2013
Сообщений: 6,348
Записей в блоге: 2
09.11.2018, 22:17 2
Лучший ответ Сообщение было отмечено Мпе как решение

Решение

Нечётный порядковый номер это соответственно чётный индекс ???
Чёй-то не пойму почему у меня первое 1 тоже переезжает на другое место
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
#include <stdio.h>
 
int arr[] ={1,2,2,3,4,5,6,7,8,-8,-7,-6,4,5,6};
 
#define SIZE (sizeof(arr)/sizeof(int))
 
void move(int* from, int* to){
    int tmp = *from;
    if (from == to) return;
    while (to > from)
        *(from++) = *(from+1);
    *to = tmp;
}
 
int main () {
    int tmp, x, pos=SIZE-1;
    for (x=0;x<SIZE;x++)
        printf(" %d", arr[x]);
    printf("\n----------------\n");
 
    for (x=SIZE-1;x>=0;x--)
        if (x%2==0 && arr[x]>0)
            move(&arr[x], &arr[pos--]); // сдвиг значений
 
//------------------------------
    for (x=0;x<SIZE;x++)
        printf(" %d", arr[x]);
    printf("\n----------------\n");
 
    return 0;
}
примерно как-то так думаю, с чтением с конца массива
и со сдвигом значений при каждом нахождении

Добавлено через 2 минуты
Вообще-то 1 должно тоже переезжать
0
1 / 1 / 0
Регистрация: 30.09.2018
Сообщений: 14
13.11.2018, 13:17  [ТС] 3
А куда деваются чётные элементы?
0
Невнимательный
2780 / 1111 / 347
Регистрация: 08.02.2013
Сообщений: 6,348
Записей в блоге: 2
13.11.2018, 14:30 4
Сдвигаются вперёд .) на место перемещаемых нечётных
// точнее каждый раз при нахождении положительного с чётным индексом сдвигается ряд значений
// от его положения до положения куда оно вставляется
Тут вообще сам запутался с разницей между "чётные элементы" и "элементы имеющие чётный порядковый номер "
и "чётное значение индекса"
// возможно запутался из-за выбранного (1,2,2,3,4,5,6,7,8,-8,-7,-6,4,5,6}
Цитата Сообщение от Мпе Посмотреть сообщение
Все положительные элементы, имеющие нечетный порядковый номер, переписать в конец массива
Понял так что это {1,2,4,6,8,4,6}, так как порядковый номер начинается с 1
0
1 / 1 / 0
Регистрация: 30.09.2018
Сообщений: 14
13.11.2018, 14:44  [ТС] 5
ft4l, Да, но при компилировании элементы четного порядка пропадают совсем.
1
Невнимательный
2780 / 1111 / 347
Регистрация: 08.02.2013
Сообщений: 6,348
Записей в блоге: 2
13.11.2018, 16:03 6
Странно ...
Код
_____________WDK amd64 WinNET______________
J:\x>cl test3.c
Microsoft (R) C/C++ Optimizing Compiler Version 15.00.30729.207 for x64
......или это............
_____________ DDK i386 WinNET ______________
J:\x>cl test3.c -link /subsystem:console bufferoverflowu.lib
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 13.10.4035 for 80x86

_____________Visual Studio 2010 x86 tools.________

J:\x>cl test3.c
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.30319.01 for 80x86
......

... нормально 
J:\x>test3
 1 2 2 3 4 5 6 7 8 -8 -7 -6 4 5 6
----------------
 2 3 5 7 -8 -7 -6 5 1 2 4 6 8 4 6
----------------


j:\x>gcc test3.c -o test3.exe

j:\x>test3.exe
 1 2 2 3 4 5 6 7 8 -8 -7 -6 4 5 6
----------------
 -7 -6 6 4 8 6 4 2 1 2 4 6 8 4 6
----------------
Пришлось переделать так
C
1
2
3
4
     while (to > from){
        *from = *(from+1);
        from++;
    }
0
13.11.2018, 16:03
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.11.2018, 16:03
Помогаю со студенческими работами здесь

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

Создать массив В, в который переписать по порядку сначала все положительные, а потом все отрицательные элементы
Добрый вечер! есть 2 несложные задачи, помогите, пожалуйста решить: Вот одна из них Задан...

Положительные элементы массива переместить в начало, а отрицательные — в конец
Дана последовательность чисел неизвестной длинны. Нужно заполнить массив этими числами, а потом в...

Переписать подряд в массив Y положительные и в Z отрицательные элементы массива X[n]
Просто помогите мне это сделать. Пожалуйста. Условие N&lt;=40


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Использование связки C# и PHP в корпоративной разработке и микросервисной архитектуре
InfoMaster 16.01.2025
Введение в интеграцию C# и PHP В современной корпоративной разработке все чаще возникает потребность в создании гибких и масштабируемых решений, способных эффективно решать широкий спектр. . .
Как использовать Kerio дома для управления сетью и пользователями
InfoMaster 16.01.2025
Использование технологий для улучшения повседневной жизни стало неотъемлемой частью современного быта. Одной из таких технологий является Kerio — мощный инструмент для управления сетью и. . .
Есть ли будущее у DVD и Blu-ray?
InfoMaster 16.01.2025
В эпоху стремительного развития цифровых технологий и повсеместного распространения потоковых сервисов вопрос о будущем физических носителей информации становится все более актуальным. Особенно остро. . .
Как проводить научные вычисления на Python
InfoMaster 15.01.2025
Python стал одним из наиболее востребованных языков программирования в области научных вычислений благодаря своей простоте, гибкости и обширной экосистеме специализированных библиотек. Научные. . .
Создание игры типа Minecraft на PyGame/Python: пошаговое руководство
InfoMaster 15.01.2025
В данном руководстве мы рассмотрим процесс создания игры в стиле Minecraft с использованием библиотеки PyGame на языке программирования Python. Этот проект идеально подходит как для начинающих. . .
Как создать свою первую игру в стиле Doom на Unreal Engine
InfoMaster 15.01.2025
Разработка шутера от первого лица в стиле классического Doom представляет собой увлекательное путешествие в мир игрового программирования, где сочетаются творческий подход и технические навыки. . . .
Параллельное программировани­е: основные технологии и принципы
InfoMaster 15.01.2025
Введение в параллельное программирование Параллельное программирование представляет собой фундаментальный подход к разработке программного обеспечения, который позволяет одновременно выполнять. . .
Как написать микросервис на C# с Kafka, MediatR, Redis и GitLab CI/CD
InfoMaster 15.01.2025
В современной разработке программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот подход позволяет разделить сложную систему. . .
Что такое CQRS и как это реализовать на C# с MediatR
InfoMaster 15.01.2025
Концепция CQRS и её роль в современной разработке В современном мире разработки программного обеспечения архитектурные паттерны играют ключевую роль в создании масштабируемых и поддерживаемых. . .
Как настроить CI/CD с Azure DevOps
InfoMaster 15.01.2025
CI/ CD, или непрерывная интеграция и непрерывное развертывание, представляет собой современный подход к разработке программного обеспечения, который позволяет автоматизировать и оптимизировать процесс. . .
Как настроить CI/CD с помощью Jenkins
InfoMaster 15.01.2025
Введение в CI/ CD и Jenkins В современной разработке программного обеспечения непрерывная интеграция (CI) и непрерывная доставка (CD) стали неотъемлемыми элементами процесса создания качественных. . .
Как написать микросервис на Go/Golang с Kafka, REST и GitHub CI/CD
InfoMaster 14.01.2025
Определение микросервиса, преимущества использования Go/ Golang Микросервис – это архитектурный подход к разработке программного обеспечения, при котором приложение состоит из небольших, независимо. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru