Новинарски форум

Домашно 6 - Войници в редица

Домашно 6 - Войници в редица

от Милослав Средков -
Number of replies: 48
Излезе домашно 6. Идеята му е да имате възможност да получите още някоя друга точка от домашните. Ако имате коментари пишете тук.

Както казахме от домашните ще могат да се направят около 15 точки. Тъй като е почти невъзможно някой да има максимален резултат на всички, то точките ще се умножат така, че да имате възможност да ги направите ако сте се старали.
In reply to Милослав Средков

Re: Домашно 6 - Войници в редица

от Петър Стаев -
А така, браво. Още някое домашно няма ли да има. Kато се има в предвид, че четвъртото и петото са с сложността на проект. А за проектите ни вест ни кост :-D
In reply to Милослав Средков

Re: Домашно 6 - Войници в редица

от Петър Стаев -
Между другото не сте написали името(кода) на 5 и 6 домашно ;-)
In reply to Петър Стаев

Re: Домашно 6 - Войници в редица

от Илиян Славов -
Ammm znae li se koga shte e vtoriq test , dali shte se vkliuchva oshtanaliq material do kraq na uchebnika, i koga shte izlqzat prektite .
In reply to Милослав Средков

Re: Домашно 6 - Войници в редица

от Йордан Павлов -
Знае ли се граница в която варира височината на войниците?
In reply to Йордан Павлов

Re: Домашно 6 - Войници в редица

от Милослав Средков -
Ще се събира в 32 битов тип.
In reply to Милослав Средков

Re: Домашно 6 - Войници в редица

от Здравко Кръстев -

А може ли случайно да е отрцателна (както интелигентността в един от примерите)?

In reply to Здравко Кръстев

Re: Домашно 6 - Войници в редица

от Милослав Средков -
Ако не е указано в условието може. Не мисля че това ще я усложни особено обаче.
In reply to Милослав Средков

Re: Домашно 6 - Войници в редица

от Ина Иванова -
Някакви изисквания как точно да си кръстим file-а с Домашно 6 ? замислен(а)
In reply to Ина Иванова

Re: Домашно 6 - Войници в редица

от Милослав Средков -
ами..
например:
fnXXXXX_soldiers.zip
ф.н. е важното
In reply to Милослав Средков

Re: Домашно 6 - Войници в редица

от Иван Бобев -
Ако интелигентността на всички войници е отрицателна може ли да бъдат освободени всичките или трябва задължително да остане поне един?
In reply to Иван Бобев

Re: Домашно 6 - Войници в редица

от Милослав Средков -
Могат всички да се освободят.
In reply to Милослав Средков

Re: Домашно 6 - Войници в редица

от Петър Стаев -
И тогава какво трябва да изкараме на изхода като интелигентност? 0?
In reply to Петър Стаев

Re: Домашно 6 - Войници в редица

от Йордан Павлов -
Как 0 ? Тогава трябва да изкараш 5.
In reply to Йордан Павлов

Re: Домашно 6 - Войници в редица

от Петър Стаев -
И защо 5 като всички войници са с отрицателна интелигентност и освобождаваме всички :-)
In reply to Иван Бобев

Re: Домашно 6 - Войници в редица

от Динко Иванов -
RE - Problem v cheteneto na vhoda.
Може ли да ми дадете примери при които ми се дъни входа?Това което съм написъл за вход наистина е много сковано ,но ако се спазва стриктно формата на входа няма проблеми...или поне каже каква е грешката ,може и да се сетя защо става така.
In reply to Милослав Средков

Re: Домашно 6 - Войници в редица

от Петър Стаев -
"CE - ne polzvai arhaichni kompilatori!
OK"

И какво се разбира под "Архаичен"?????? Задачата съм я писал под VS 2005. И ако според вас това е  архаичен компилатор незнам какво да кажа. Ако имате компилатор от 2100 година метнете го насам, за да не оставаме назад с технологиите и ние ;-)

А и между другото в условието на задачата нищо не пише за изисквания към компилатори. Така че догодина като имате някакви изисквания просто ги напишете, а не после да има коментари архаичен компилатор или нещо от сорта и -1 точка без това да е оповестено в условието! Защото според мен това което правите в момента е напълно несправедливо.


In reply to Петър Стаев

Re: Домашно 6 - Войници в редица

от Теодор Стоев -

"CE - main vryshta int!"

Аз също не разбрах смисъла на горното твърдение. Не видях в условието да има изискване главната функция да връща int. Компилирал съм с Visual Studio .NET 2003 и не съм получил Compilation Error. Предполагам, че заради това имам -1 точка, което не е много справедливо...

Имам и още една грешка, но тя си е по мое невнимание усмивка

In reply to Теодор Стоев

Re: Домашно 6 - Войници в редица

от Милослав Средков -
:)
Ама много се палите. Според C++ стандарта main връща int. В случая сте ползвали нестандартен feature на компилатора, и поради тази причина кодът не се е компилирал при мен.
In reply to Милослав Средков

Re: Домашно 6 - Войници в редица

от Петър Стаев -
Ами палиме се като правите несправеливи неща. Въпросът тук не е за едната точка, а приниципен. Единият от екипа компилирал само под VS 2005 и не използва gcc, друг компилира под някакъв друг компилатор. Ами то на вас хора не може да ви се угоди само на компилатори :-D До колкото си спомням това е курсът "Проектиране и анализа на компютърни алгоритми", а не "Проектиране и анализ на софтурени решения, съвместими с всички компилатори". Сега ние по-голямо време да отделяме за измиляне алгоритъма на задачата или за инсталиране на виртулани машини за Linux, Mac и BSD и на всевъзможни компилатори към тях и да те тестваме, дали на всички тях ще се компилира решението ???

Според мен в този курс просто това не е толкова важно. По-важното е самият алгоритъм и оценката на неговата сложност (както си подсказва името на курса ;-) ). Но явно това си е само мое мнение, а не и на преподавателския екип за съжаление :-(
In reply to Петър Стаев

Re: Домашно 6 - Войници в редица

от Димитър Димитров -
Не е нужно да тестваш на други операционни системи. Просто пиши по стандарт, останалото е проблем на преподавателя. Не може всеки да е с VS. Аз като искам нещо повече си казвам, например POSIX или C99, макар че според мен тия два стандарта би трябвало да се подразбират.

А това че ползваш скапан компилатор е друга работа :)
In reply to Димитър Димитров

Re: Домашно 6 - Войници в редица

от Петър Стаев -
Ами ако според теб компилаторът на VS 2005 е смотан и не се води по стандартите добре. Това си е твое менение. Аз обаче имам същото мнение за компилаторите на Linux(gcc напр) злорадо И навлизаме пак в теологичните спорове :-D

Аз не казвам че всички трябва да имат VS. Просто казвам че не е редно да се режат точки за това че някой си използва някакви опции на някакъв си компилатор и му дава СЕ.  Защото поне за мен това не е същността на този курс. 
In reply to Петър Стаев

Re: Домашно 6 - Войници в редица

от Веселин Райчев -
Че VC2005 е скапан - скапан е. По-скапани от него естествено са VC 7.1, още по-скапани 7.0 и хептен скапан е 6.0.... gcc е скапан около версии 3.2. Но скапанията не я достигаме.

Проблемът идва от това, че Visual Studio-то е направено с цел да дърпа килимчето към Microsoft - хайде учете се да пишете на 2005, а после да не знаете кое е по стандарта и като напишете 10000 реда - да има причини да не се портнете към нищо друго освен следващата версия на Windows. Та VC 8.0 (т.нар 2005) е сравнително добър компилатор, който позволява доста отклонения от стандарта и колкото повече ги "използвате", толкова повече пълните гушите на онея.

gcc пък има доста extension-и, които е особено препоръчително да не ги използвате.
In reply to Веселин Райчев

Re: Домашно 6 - Войници в редица

от Петър Стаев -
Е ти направо се изказа шефе. В един пост похвали и оплю VS 2005. " Че VC2005 е скапан - скапан е", "VC 8.0 (т.нар 2005) е сравнително добър компилатор". И като е скапан ми е много интересно защо го използваш за проверката например на задачата с файловете ;-) Пишете си на Борланд C++  3.1 и това. За вас всичко е скапано. 
In reply to Петър Стаев

Re: Домашно 6 - Войници в редица

от Димитър Димитров -
Виж за същността на курса си прав, но все пак кода трябва да спазва някакви стандарти. Ако не се придържаш към стандарт проверяващите трябва да имат не знам си колко различни среди, за да тестват. Например ако използвам един много готин есктенжън на ГЦЦ - гото по адрес ай да те видя как ще ми го проверяваш с VS?

Ако се кефиш толкоз много на M$ твоя работа. Аз не давам кинти когато има нещо по-добро и безплатно.

А и замисли се за качесвтото на C++ компилаторите като цяло, знаеш ли такъв който потдържа C++98 напълно? Аз знам само един и това не е нито VS нито GCC. Така че може би не всичко, но почти всичко си има кусури. Стандартита е за да се избягват такива проблеми. Дразнещото в отношението на M$ е точно това което каза Веселин - VS е направен за Windows и популяризира M$ стила, който не е стандартен. Там не се интересуват много от преносимост. Уж сега я слагат но не знам какво ще излезе, пък и не ме интересува.
In reply to Димитър Димитров

Re: Домашно 6 - Войници в редица

от Петър Стаев -
Ами добре нека го спазва, но аз поне в нито една лекция не съм чул да се говори за стандтартите, по които трябва да пишем кода си, за да е съвместим. Нито пък в книгата има нещо споменато. Съгласен съм нека се отнемат точки за неписане по стандартите, но и нека се отдели поне една лекция за това. Дори и в книгата (въпреки че сорс-кодовете са на C) навсякъде пише int main(). А накрая: СЕ - main ne moje da e int.

П.П.: Естествено VS 2005 си има своите кусури, но определено не може да се нарече "архаичен". Ако ставаше дума за 6.0 разбирам.
In reply to Петър Стаев

Re: Домашно 6 - Войници в редица

от Галина Титова -
брееее .. не съм вярвала че мъжете можели да мрънкат като малки момиченца :)
евала за цялото това мърморене ... все едно някои току що ви е взел близалката и вие ... край .. свърши се света .... и давай да мърморим ...

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

... иначе .. продължавайте да мрънкате .. забавни сте :)
In reply to Галина Титова

Re: Домашно 6 - Войници в редица

от Петър Стаев -
За качествен програмен код си има отделен курс със това име (КПК) ;-) Курса е най-вече за съставянето на добри (по време и памет) алгоритми за решаването на някаква задача. А коденето и компилирането всеки (дори и някой лаик) ще може да ти го направи като има готовия алгоритъм.
In reply to Петър Стаев

Re: Домашно 6 - Войници в редица

от Галина Титова -
ооффф да бе да...
ти чуваш ли се какви ги говориш?!?
бързодействието на една програма не идва само от добруя алгоритъм, ами и от доброто кодене ... извинявай, но една глупаво написана програма с пъти ще ти забави иначе хубавия, бърз алгоритъм ...
то ако тоя кърс трябва да е само за проектиране и анализ, е дай цяла година да си проектираме, да си анализираме, да си говорим сладки приказки и един ред код на не напишеш...

не разбирам защо си с нагласата, че всички с радост биха ти наляли акъл с фуния в ухото и ти само трябва да си го подложиш и да чакаш ... каквито и преподаватели да има ... не могат с магическа пръчица да те тупнат по главата и да направят чудеса...
равносметката от този курс, за мен поне, е следната ... който идея си е нямал от основни алгоритми - вече си има, който си е имал - може да е поскучал малко, но все е чул и нещо ново. Аз специално чух малко неща, който не знаех, но ми беше забавно .... ако не ми беше, щях да го отпиша...
.. ти какво само заради едната оценка и единия взет избираем ли изтърпя всичко от което цяла година се оплакваше?!

In reply to Галина Титова

Re: Домашно 6 - Войници в редица

от Петър Стаев -
Ами не се чувам, защото не говоря, а пиша ;-) И не искам никой да ми налива акъл, защото си имам достатъчно.

А за коденето си има други курсове като СДП, ООП и КПК. Там те учат как да си напишеш класовете, и тем подобни.
И напълно подкрепям преподавателя Муков, който на едно упражнение каза следното: Всички задачи се решават първо на лист хартия и с химикалка и чак след това е коденето. Защото коденето е най-лесната работа ;-)

А моята равносметка от курса е следната: Научих много нови неща, за които съм благодарен на преподавателския екип. И същевременно съм разочарован, защото историята с домашните се превърна в една пародия, а първоначално идеята "звучеше" много одобре. Двама хора изгоряха, защото уж "просташки преписвали" на домашните, пъровначално идеята беше всяка седмица да излиза по едно домашно, а в крайна сметка стана друго, последното (най-интересно) домашно остана непроверено и т.н. и т.н.

Винаги съм чувал все хубави неща за ПРАНКАТА. И точно за това го записах.( А не заради единия изборен и кредити както казваш ти. Въобще не ме интересуват оценките и кредитите.) Но тази година (не нзам заради новостта с домашните ли или заради упражненията) просто курса, поне според мен, не беше на нивото на курса от миналите години.
In reply to Петър Стаев

Re: Домашно 6 - Войници в редица

от Димитър Димитров -
С Муков съм напълно съгласен, само че има една подробност - C++. Това не е функционален език, изисква да се отделя голямо внимание на детайлите, много по-лесно е да си скапеш програмата, синтаксиса е гаден, оптимизатора по-трудно се справя и още мноого други подробности. Така че ако пишеш на C++ или на някой подобен език, въобще ако пишеш императивно (вкл. обектно-ориентрирано базирано на императивен стил) коденето е от съществено значение, тук не се предава псевдо-код все пак.

То всъщност може да пишеш и функционално и логически на C++, езика е доста мощен, но все пак става грозно.

А тук се изисква и бързина. Иначе много щях да се кефя ако бяха разрешили да се пише на Prolog, Lisp или Python. Кратки и ясни програмки, чиста работа. Но пък и няма да е честно спрямо тези които не знаят тези езици.
In reply to Димитър Димитров

Re: Домашно 6 - Войници в редица

от Петър Стаев -
"...тук не се предава псевдо-код все пак...."
Ами като не се предава защо на лекции всички функции (с малки изключения) бяха написани точно на псевдо-код?
In reply to Петър Стаев

Re: Домашно 6 - Войници в редица

от Галина Титова -
"И не искам никой да ми налива акъл, защото си имам достатъчно."
ее добре че си скромен поне.
еми ти като си толкова акълия, и си толкова сериозен, вземи говори с преподавателския екип да те вземат следващата година сред тях, и поне на децата след нас всичко да им е наред с домашните, и със сроковете, и със отношението към тях :)
пък тогава вече ще можеш съвсем основателно да им кажеш "е ... те така трябваше да направите и миналата година, вижте ги колко са доволни децата сега :)"

In reply to Галина Титова

Re: Домашно 6 - Войници в редица

от Петър Стаев -
Добре, но само ако ти изнесеш две, три лекции на тема: Как да си накодиме програмите и да не си прецакаме хубавият алгоритъм ;-)
In reply to Петър Стаев

Re: Домашно 6 - Войници в редица

от Калин Николов -

"...Но тази година ... просто курса, поне според мен, не беше на нивото на курса от миналите години..."

И през тази година екипът на курса ПрАнКА събра каймака на програмисткото майсторство сред студентите на ФМИ. Хора, на които не им липсва нито признание, нито достатъчно работа да си уплътняват времето. И следователно мотивите им са нищо друго освен благородни.

Благодаря на всички демонстратори за всеотдайната и качествена работа. Съжалвам единствено, че повода за това са разни непремерени и твърде претенциозни изказвания.

In reply to Петър Стаев

Re: Домашно 6 - Войници в редица

от Милослав Средков -
Добре,
Напомни ми да ти повиша оценката с 0.2 точки след това :).
In reply to Милослав Средков

Re: Домашно 6 - Войници в редица

от Владимир Цанев -

WA - ima niakakyv byg

Верно имам бъг на ред 40 ако се смени > със >= всичко ще е наред предполагам. Просто съм решил задачата за растяща, а не за ненамаляваща редица и половината тестове гръмнаха. Няма ли шанс за лека редакторска намеса?

In reply to Владимир Цанев

Re: Домашно 6 - Войници в редица

от Милослав Средков -
Това за < и <= беше често срещан бъг. За тези които го видях го оправих и пробвах пак. За други обаче не можах да се ориентирам в кода (все пак времето ми беше ограничено) и не можах да заключа къде в бъга точно.

Все пак не може да очаквате освен многото време което прекарвам в правене на сорсовете да се компилират,да прекарвам още много повече в дебъгване.