|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
16.11.2009, 22:36 | #1 |
Куды бечь?
Форумчанин
Регистрация: 05.10.2009
Сообщений: 104
|
Динам. массивы (странная проблема)
Задача: Удалить из массива все отрицательные элементы, все элементы, большие данного числа n. И изменить размерность массива.
Код:
if (a[i]<0 || a[i]>n) мы перепишем if (a[i]>0 || a[i]>n) то все работает! я ничего не понимаю! Подскажите где я ляпнул?
Не хватало всего одного байта. Да-да, того самого, что из восьми бит состоит.
|
16.11.2009, 22:45 | #2 |
Меркантильный кю
Участник клуба
Регистрация: 02.02.2008
Сообщений: 1,001
|
Возможно, компилятор оптимизирует выражение каким-то хитрым образом, и поэтому возникает такой эффект
Кстати, вот i-- в for лучше не делать
Росли вроде умными, выросли дурнями... (c)А.Васильев
|
16.11.2009, 22:54 | #3 |
Куды бечь?
Форумчанин
Регистрация: 05.10.2009
Сообщений: 104
|
переписал цикл вот так
Код:
ну, по идее должно же работать!
Не хватало всего одного байта. Да-да, того самого, что из восьми бит состоит.
Последний раз редактировалось forsaken66; 16.11.2009 в 22:57. |
16.11.2009, 23:01 | #4 |
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
Незнаю в чем дело, честно говоря лень читать, но я бы написал цикл так, может сработает:
Код:
|
16.11.2009, 23:09 | #5 |
Куды бечь?
Форумчанин
Регистрация: 05.10.2009
Сообщений: 104
|
BOBAH13, если меняем знак с "больше нуля" на "меньше нуля"(как положено по условию задачи) то тогда программа просто виснет. не выводит итоговый массив. а твой цикл не сработает если в исходном массиве есть два или больше идущих следом отрицательных числа.
Не хватало всего одного байта. Да-да, того самого, что из восьми бит состоит.
|
16.11.2009, 23:16 | #6 |
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
Тю ну я ваш цикл просто переписал, там места для меня чуждые были написаны а так вроде должно работать, пишу прямо здесь, так что:
Код:
|
16.11.2009, 23:29 | #7 |
Куды бечь?
Форумчанин
Регистрация: 05.10.2009
Сообщений: 104
|
Нет, напротив, спасибо за помощь) но все равно не работает
Не хватало всего одного байта. Да-да, того самого, что из восьми бит состоит.
|
16.11.2009, 23:32 | #8 |
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
да вроде логика в алгоритме верная, что не работает то ? Отрицательные и больше N остаются ? после моего цикла, проверьте массив на их наличие, + я там x уменьшал, это как бы размерность массива, так что дальше именно этот x и использовать надо. Конкретней пожалуйста, что не получается то.
p.s. не заставляйте открывать студию Edit: Не могу понять, а зачем массив "a" вы после обработки (цикла) пересоздаете ? Зачем ? После моего цикла, там просто от 0 до x пройтись и все. Edit: pu4koff - правы, еще посмотрел, но "дъявол" переманил на свою сторону, и сказал что последний элемент массива это его размер надо идти отдыхать, оффтоп все, я не в теме на сегодня какие то советы дурные даю, извените еще раз Последний раз редактировалось BOBAH13; 16.11.2009 в 23:42. |
16.11.2009, 23:37 | #9 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,088
|
Код:
Код:
Код:
Хотя а то новый создавать не нужно. Просто: Код:
Код:
Последний раз редактировалось pu4koff; 16.11.2009 в 23:43. |
16.11.2009, 23:46 | #10 |
Куды бечь?
Форумчанин
Регистрация: 05.10.2009
Сообщений: 104
|
pu4koff, я вас понял. но этот цикл неправильный. зачем уменьшать х ? диапазон прохода тогда сокращается с двух сторон. с конца и с i-го элемента.
Код:
Код:
Не хватало всего одного байта. Да-да, того самого, что из восьми бит состоит.
Последний раз редактировалось forsaken66; 16.11.2009 в 23:49. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Странная проблема с Timer'ом | .Phoenix | Общие вопросы Delphi | 4 | 19.09.2009 19:58 |
связка MySQL+PHP5 - странная проблема | SwiP | SQL, базы данных | 2 | 06.04.2009 23:25 |
snmp+php странная проблема | baarseek | PHP | 6 | 19.02.2009 14:02 |
Странная проблема с floating-point | Niello | Общие вопросы C/C++ | 0 | 08.10.2008 14:30 |
Странная проблема при сложении double. Помогите разобраться. | ivank | Общие вопросы C/C++ | 2 | 23.09.2008 13:04 |