Форум программистов, компьютерный форум, киберфорум
Наши страницы

Удалить из массива последний отрицательный элемент. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Массивы(задачи) http://www.cyberforum.ru/cpp-beginners/thread406233.html
Начал изучать язык Си.Не могу решить задачи.Прошу помощи в решении: 1.Дано 2(два) массива из цифр: а)найти сумму б)разность в)произведение 2.Перевести число из десятичной системы в двоичную....
C++ Строки с Файлом(в стр без файла) как сделать так чтобы прога читала строки не из файла,а чтобы вводить их самому!?)(БЕЗ ФАЙЛОВ) #include <stdio.h> #include <fstream.h> #include <conio.h> int main() { ifstream... http://www.cyberforum.ru/cpp-beginners/thread406220.html
C++ Как достать исходник из скомпилированной .dll?
Как достать исходник из скомпилированной .dll? Возможно ли это вообще? Добавлено через 3 часа 49 минут ап-ап
C++ Как написать прогу которая удалит все программы с компьютера
Подскажите мне как написать программу которая удалит все программы с компьютера. В цикле без всяких опрос типа далее далее и т.п?? помогите пожалуйста на компе около 700 программ :D разных 2 года...
C++ Выделение памяти http://www.cyberforum.ru/cpp-beginners/thread406163.html
Платформа и компилятор x64. Установлено 64Gb ОЗУ, 60Gb из них откусил SQL Server. Пытаюсь сделать следующее: struct Dictionary { ... }; unsigned int Size = 2 << 29; Dictionary **DataMap =...
C++ Вывод подматрицы с максимальной суммой чисел Прошу помощи в решении следующей задачи: Программа создает двухмерную матрицу NxM которые задаются #define в начале программы, заполняется пользователем положительными целыми числами и печатается.... подробнее

Показать сообщение отдельно
gregon
4 / 4 / 0
Регистрация: 20.12.2011
Сообщений: 17
20.12.2011, 23:27
Я в С++ не очень шарю, поэтому просто опишу алгоритм.
Берешь массив. Начинаешь его читать с конца. Если встретил негативное значение: запоминаешь позицию, вызываешь функцию А, передаешь ей позицию.
Если не встретил: вызываешь функцию Б.
Функция Б: копирует старый массив в новый, который на 1 больше и со сдвигом.
Функция А: получает позицию искомого числа. Половинки старого массива справа и слева от числа копируем в два новых (временных) массива. И сразу из этих двух временных в третий размером как два временных.

Топорно, но зато точно будет работать. Вот только сходу не соображу, как определить негативное ли число. Разве что переводить его в двоичное и смотреть 0 или 1 самое левое значение.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru