Loading...
Klamercho avatar Klamercho 0 Точки

Нужда от помощ по задача от домашното на C++ Fundamentals 04. Most Frequent number

Здравейте, 

 

това е кодът който използвам https://pastebin.com/69u4MU05  . При мен работи и не мога да разбера какъв точно импут дава Judge, за да даде кода ми грешен изход. Опитах много МНОГО различни неща и не мога да си обясня, къде точно е грешката. Тук е последната ми надежда laugh

 

 

Тагове:
0
Fundamentals Module
kolioi avatar kolioi 641 Точки
Best Answer

На 45 ред въртиш цикъла до arraysize+1 и на 47 ред излизаш извън границите на масива.

0
26/11/2018 23:05:57
Klamercho avatar Klamercho 0 Точки

Много благодаря! 

 

оказа се, че на моя комилатор, като излизам от границите на масива ми дава случайна стойност в хилядите и не афектира крайния резултат. Но в системата Judge явно дава 0-ла, която може би се засича с входящите данни  ( 0 1 2 3 4) и обърква нещата. 

 

Отново благодаря ! 

0
kolioi avatar kolioi 641 Точки

Не вярвам това да е бил проблема, защото щяха да гърмят всички тестове, а не само първия. По принцип може да се прочете адрес в паметта, който е извън границите на масива (например arr[size+1]). Обаче ако се опиташ да промениш тази стойност, тогава най-вероятно ще гръмне (това зависи от компилатора - майкрософтския компилатор е по-стриктен и програмата винаги гърми, за разлика от gcc, който се използва в джадж). Иначе много сложно си направил решението. Числата могат да бъдат само в границите от 0 до 9, така че може просто да си направиш един масив arr с големина 10 и при четенето на вх. данни да преброиш колко пъти се среща всяко число, т.е. ако прочетеш 3, увеличаваш arr[3] с 1. След това обхождаш този масив и намираш най-голямото число в него, т.е. най-често срещаното число (може да са няколко на брой). И накрая минаваш още веднъж през масива и ако arr[i] е равно на това максимално число, отпечатваш индекса i. Това е всичко което ти трябва.

0
Klamercho avatar Klamercho 0 Точки

Единствено промених едно от условията да не работи когато стойността на едната ми променлива беше извън масива и това ми даде 100-те точки. Иначе и аз не съм доволен как ми се получават задачите с масиви... практика и ще се ичистят (надявам се) 

0
Klamercho avatar Klamercho 0 Точки

https://softuni.bg/forum/24218/cplusplus-fundamentals-reshenie-na-02-ra-zadacha-po-smeshen-nachin-s-vektori 

Този път променливите ми не се казват Banana ;) 

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.