0 / 0 / 0
Регистрация: 13.02.2013
Сообщений: 54
|
||||||
1 | ||||||
программа выдает мусор08.05.2013, 19:29. Показов 1957. Ответов 16
Метки нет (Все метки)
Не могу понять почему программа выдает мусор. И через раз работает правильно.
Помогите пожалуйста=)
0
|
08.05.2013, 19:29 | |
Ответы с готовыми решениями:
16
Почему программа выдает мусор при сортировке извлечением? При решении программа выдаёт значение функции, равное 0 или выдаёт ошибку. Что не так? При вычислении суммарного объема и веса программа выводит мусор Программа реверса строки: почему на экран выводится мусор, вместо нужного текста? |
187 / 180 / 25
Регистрация: 27.01.2012
Сообщений: 1,335
|
|
08.05.2013, 19:46 | 2 |
Плохо. Перегружай оператор "=" для своего класса и там используй strcpy для строк, иначе генеруремый по умолчанию компилятором оператор "=" просто перезапишет указатели и память не освободится.
sizeof(addr) может быть равно 8 на некоторых компиляторах. Точно у тебя 90 выдает? Что вообще программа делать должна? Добавлено через 9 минут Попробуй вынести из цикла? Если правильно помню, то да, оно должно заного пересоздавать переменную на каждой итерации, но все же Добавлено через 1 минуту Походу тут c[l] должно быть
0
|
0 / 0 / 0
Регистрация: 13.02.2013
Сообщений: 54
|
|
08.05.2013, 19:58 [ТС] | 3 |
Условие: Заданы два массива записей, каждый из которых содержит фамилии и адреса сотрудников. Составленная программа должна перенести (в любом порядке) записи с двух массивов в третий, причем с двух одинаковых записей переносится только одна.
Добавлено через 35 секунд Хорошо сейчас попробую исправить сделаные замечания Добавлено через 10 минут
0
|
187 / 180 / 25
Регистрация: 27.01.2012
Сообщений: 1,335
|
|
08.05.2013, 20:09 | 4 |
Babochka_, вынести из цикла, но в цикле то все равно нужно false переменной давать.
А c[l] там действительно что-то странное, ибо вывод от i до l, что уже как-то неверно.
0
|
0 / 0 / 0
Регистрация: 13.02.2013
Сообщений: 54
|
|
08.05.2013, 20:50 [ТС] | 5 |
l - это количество элементов в структуре с. А как там лучше сделать?
0
|
187 / 180 / 25
Регистрация: 27.01.2012
Сообщений: 1,335
|
|
09.05.2013, 07:10 | 6 |
Babochka_, в таком случае вывод от 0 до <l
0
|
0 / 0 / 0
Регистрация: 13.02.2013
Сообщений: 54
|
|
09.05.2013, 09:27 [ТС] | 7 |
по логике оно и должно так работать но когда вывод от 0 <l, то во всех случаях в ответе есть мусор и всегда в последнем, а если от 1 <=l, то когда все элементы одинаковые, то программа работает абсолютно правильно.
0
|
187 / 180 / 25
Регистрация: 27.01.2012
Сообщений: 1,335
|
|
09.05.2013, 14:53 | 8 |
Babochka_, что такое мусор в вашем понимании? Можете привести пример входных данных и соответствующий вывод? А лучше скриншотом
0
|
0 / 0 / 0
Регистрация: 13.02.2013
Сообщений: 54
|
|
09.05.2013, 16:04 [ТС] | 9 |
Вот пожалуйста, это если в Dev-C++ компилить
0
|
0 / 0 / 0
Регистрация: 13.02.2013
Сообщений: 54
|
|
09.05.2013, 16:09 [ТС] | 10 |
Еще один случай тут не совсем правильно работает
0
|
187 / 180 / 25
Регистрация: 27.01.2012
Сообщений: 1,335
|
|
09.05.2013, 16:46 | 11 |
Babochka_, это при каких изменениях начального кода то? Или вы ничего не меняли?
Судя по тому, что я вижу, все мои поправки должны были это исправить (такие как с выводом от 0 до l, c[l] = a[i])
0
|
0 / 0 / 0
Регистрация: 13.02.2013
Сообщений: 54
|
|
09.05.2013, 16:58 [ТС] | 12 |
Это если сделать поправки которые Вы сказали
Все равно не работает (((
0
|
0 / 0 / 0
Регистрация: 13.02.2013
Сообщений: 54
|
|
09.05.2013, 17:03 [ТС] | 13 |
Еще один случай с поправками, в некоторых случаях программа работает
0
|
187 / 180 / 25
Регистрация: 27.01.2012
Сообщений: 1,335
|
|||||||||||
09.05.2013, 17:45 | 14 | ||||||||||
После строчки
А почему не работает предпоследнее, так потому, что алгоритм нахождения совпадений неверен. Ну проверили вы первый массив на совпадения и записали в массив С, но второй массив не проверили, вот и пишите в выходной массив дважды s/s
1
|
0 / 0 / 0
Регистрация: 13.02.2013
Сообщений: 54
|
|
09.05.2013, 18:47 [ТС] | 15 |
Огромное Вам спасибо)) А почему добавление этого цикла решило мою проблему? А поповоду предпоследнего я попробую изменить)
0
|
187 / 180 / 25
Регистрация: 27.01.2012
Сообщений: 1,335
|
|
09.05.2013, 18:56 | 16 |
Babochka_, потому что он у вас изначально был не заполнен. И, если проверок никаких не было, так и остался не заполнен, в нем хранился мусор, и при проверке if (flags[i]) этот мусор и считался за "1", а не за "0", как задумывалось
0
|
0 / 0 / 0
Регистрация: 13.02.2013
Сообщений: 54
|
|
09.05.2013, 18:59 [ТС] | 17 |
А понятно, еще раз большое спасибо))
0
|
09.05.2013, 18:59 | |
09.05.2013, 18:59 | |
Помогаю со студенческими работами здесь
17
Программа выдает мусор при запросе телефона Выдаёт мусор Программа выводит мусор Программа которая выдает платформу компьютера выдает ошибку Вместо массива программа выводит "мусор" Программа выдаёт ошибку Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |