argon bulletin board

Експертно търсене  

Новини:

Регистрирането на нови потребители е временно деактивирано.

Автор Тема: Прием 2005 информатика  (Прочетена 4807 пъти)

sasho666

  • Неактивен Неактивен
  • Публикации: 2
Прием 2005 информатика
« -: 22.06.2005, 15:12:17 »

На теста тази година, на предварителния изпит по информатика, на въпроси от 16 до 20 - логическите, според мен има недообмислени неща. Вие как мислете? Изпратете ми вашите отговори и обяснения - МОЛЯ!
Активен

Райчо Мукелов

  • Неактивен Неактивен
  • Публикации: 486
  • I snuggle with subwoofers
    • HULTIG - Human Language Technlogy and Bioinformatics Interest Group
Re: Прием 2005 информатика
« Отговор #1 -: 22.06.2005, 15:55:58 »

Дай да ги видим тея въпроси.
Активен

Васил Тошков

  • Неактивен Неактивен
  • Публикации: 46
  • Информатик
    • SEO
Re: Прием 2005 информатика
« Отговор #2 -: 22.06.2005, 20:19:00 »

Според мен въпросите са си добри, даже много интересни. Единственият проблем е във времето с което разполагахме на изпита. Аз си ги реших логическите с изключение на онея двата от сорта "Кое е следващото число в редицата:....?". Според мен тази година, проблемен беше не тест-а а задачата, която изискваше много дълбока логика. Ето и изпита: http://www.fmi-plovdiv.org/bg_ver/priem/i_2005_1.htm
Активен

Райчо Мукелов

  • Неактивен Неактивен
  • Публикации: 486
  • I snuggle with subwoofers
    • HULTIG - Human Language Technlogy and Bioinformatics Interest Group
Re: Прием 2005 информатика
« Отговор #3 -: 24.06.2005, 14:40:29 »

Ако още се интересуваш от тея редици от теста виж тая тема - http://forum.argon.acad.bg/index.php?topic=460.0, там Николай Д. ги разнищва детайлно, на мен също ми направиха впечатление тея задачи с редиците. Колкото до задачата за програмиране малко е кофти сортирането по два критерия без да ползваш БД и SQL и тва с инициалите - малко трябва да си поиграеш със стринговете , трябва да си наясно със структурите от данни за да можеш да я решиш - малко по-сложна от необходимото ми се струва, ама от друга страна който е програмирал повече ще я реши и ще му стигне времето - все пак теста не е кой знае колко сложен, задачата отнема повече време.
« Последна редакция: 24.06.2005, 14:52:20 от sasquatch »
Активен

Hristo Tsolev

  • Гост
Re: Прием 2005 информатика
« Отговор #4 -: 07.07.2005, 19:24:21 »

dosta elementarna zadacha beshe , v interes na istinata edinstveniq problem beshe che mnogo obshirno se reshava , poradi nqkolkoto vida sortiraniq i dosta na broi promenlivi otnosno chasovete. a idiotskite vaprosi ot testa si bqha otkroveno izmishliotini , nekvi izmisleni redici , koito i dosega nikoi ne e dal pravilnata logika kak se reshavat , ai kato vlqza v universiteta shte pitam tamka daskala po informatika li de da znam po kvo e da mi kaje kva e logikata na redicite , da vidim dali pone toi shte kaje
Активен

Емил Дойчев

  • Неактивен Неактивен
  • Публикации: 278
Re: Прием 2005 информатика
« Отговор #5 -: 08.07.2005, 09:47:28 »

... daskala po informatika li de da znam po kvo e ...

 :-D това определение е трепач.
Ще ми е интересно да чуя мнението на Христо относно "даскала по информатика" след няколко месеца.
Активен

Hristo Tsolev

  • Гост
Re: Прием 2005 информатика
« Отговор #6 -: 08.07.2005, 14:15:23 »

emi de da znam daskali li se kazvat prepodavatelite v universitetite , ne sum mnogo orientiram v taq obstanovka vse oshte :))))

P.S. ne cham choveka otgore za kvi bazi danni i sql-i govori , ama zadachata se reshava dosta elementarno s metoda na prqkata selekciq , nai obiknovenoto sortirane deto go ima izmisleno :)))
Активен

AeronHeart

  • Неактивен Неактивен
  • Публикации: 58
Re: Прием 2005 информатика
« Отговор #7 -: 08.07.2005, 16:29:30 »

ae mejdu drugoto hristo - ima nekade vav foruma tema to4no za tiq zada4i mi popadna predi nqkolko sedmici - pogledni q i vij 4e naistina s nedoobmisleni (zada4i 16-20)
Активен

prestor

  • Неактивен Неактивен
  • Публикации: 62
Изпит 2005 информатика
« Отговор #8 -: 02.10.2005, 23:24:01 »

Лично аз нямах особена трудност с задачата. Единственият ми проблем се оказа времето. Според мен в задачата бяха прекалили с някои подробности. Например ако не се лъжа и на двата изпита трябваше да се прави единична и двойна сортировка, което донякъде е излишно писане на код (който може да напише двойната би се справил и с единичната...). Също на последният изпит трябваше да се напише функция за пресмятане на ден от седмицата. Лично съм писал подобна функция, за която за да обхвана всички изключения (дни с 30/31 дена, високосна/невискосна година и тн.) ми отне около страница. Не твърдя  че съм писал кода достатъчно оптимезирано понеже съм начинаещ но и това не е малко. Като се има в предвид че алгоритъма не е особено труден мисля че и тази част от задачата е излишна. Но естествено това си е лично мое мнение. Може би изпитващите са искали да видят и точно това как бихме се справили с обемна задача в рамките на силно ограничено време.
Активен

MapTuH

  • Неактивен Неактивен
  • Публикации: 11
Re: Прием 2005 информатика
« Отговор #9 -: 03.10.2005, 16:25:36 »

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

ExpertOne

  • Неактивен Неактивен
  • Публикации: 17
Re: Изпит 2005 информатика
« Отговор #10 -: 04.10.2005, 11:44:26 »

Цитат на: prestor
... Също на последният изпит трябваше да се напише функция за пресмятане на ден от седмицата. Лично съм писал подобна функция, за която за да обхвана всички изключения (дни с 30/31 дена, високосна/невискосна година и тн.) ми отне около страница. ...
Аз не си спомням досега да е имало задача, в която да трябва да се търси деня от седмицата.  :? Пък съм ги решавал всичките.

За времето май наистина е така, както казваш, но задачата се решава за 1:00-1:30 (максимум 2:00), а тест за 0:30 (максимум 1:00 ако мислиш много по последните 5 въпроса), така че времето е напълно достатъчно.

Относно последните 5 въпроса: очевидно е, че те не са математически задачи, а са по-скоро задачи за определяне на наличието на "информатическо" мислене (иначе за всички тестове за интелигентност включващи подобни въпроси, било с числа или с картинки може да се каже че са некоректни). Като пример бих посочил последната задача (или по точко въпрос от тест, защото задача звучи прекалено математически). Освен че тази задача вече се е падала в предишни години, тя има елегантно (близко до ума на всеки информатик, който трябва на сън да го бутнат веднага да може да преобразува числа в двоична и други бройни системи :-) ) решение: това просто е едно и също число в двоична, троична и т.н. бройни системи (това го казвам разбира се само за тези, които не са се сетили сами  :wink:)
Искам още да кажа, че тестовете (а и задачите) на кандидат-студенските изпити се дават не за да можем ние да влезем, а за да може учебното заведение (в случая ФМИ на ПУ) да отсее най-подходящите (според него) кандидати. В случая на изпита по информатика се отсяват информатици (или поне такива, които имат заложби да станат такива т.е. бачкали са яко и са се подготвили за изпита). И ако някой е "щракач" и може много бързо да пише на клавиатурата и може да реши всяка задача, защо се жалва, ако и теста му се вижда неудобен (не казвам труден). Ами и за него трябва човек да се готви и последните 5 въпроса са част от теста и съответно и за тях трябва подготовка.
Освен това на изпита по математика, никой не казва: "А, бе тази задача не може да стане на компютър!", нали?

Цитат на: MapTuH
И все пак тва да пишеш без компютър си е голяма утрепация
А като помислиш, че хората едно време само така са писали ...  :wink:


PS: С този пост не искам да обидя "щракачите" (аз самия съм такъв). Това е една много добра предпоставка да станеш информатик. Поне така съм чувал. :-)
PS2: Също да не ми се обиждат математиците (аз самия съм такъв).
Активен
ExpertOne

neliM

  • Неактивен Неактивен
  • Публикации: 21
  • Шматка
Re: Прием 2005 информатика
« Отговор #11 -: 04.10.2005, 19:35:04 »

Въпросната задача с дните е тук ->
http://www.fmi-plovdiv.org/bg_ver/priem/i_2005_2.htm

Става въпрос за редовния изпит, а не си обеснявам защо хората ги бъркат 2-та.

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

Общо взето не е проблем, но ако се опитате да напишете цялата задача + теста, вкъщи, ще видите че 3 часа са малко.

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

Така че смятам, работите се компенсират.

Поздрави.
Активен
Шматкам се.

ExpertOne

  • Неактивен Неактивен
  • Публикации: 17
Re: Прием 2005 информатика
« Отговор #12 -: 04.10.2005, 21:21:43 »

Цитат
Става въпрос за редовния изпит, а не си обеснявам защо хората ги бъркат 2-та.
Като казах всички имах предвид наистина всички включително двете от тази година, както и тази която не се е падала изобщо, а е само примерна и е публикувана в сборника за първата година, в която имаше изпит по информатика.

Обаче prestor говореше за ден от седмицата и аз затова.
Иначе, ако говорим за разстояние между две дати (както е в задачата), neliM е прав(а). Като се вземе в предвид, че двете дати немогат да са на повече от 15 дни (по условие), то най-трудното е да се определи дали годината е високосна и то само в най-гадния случай т.е. започваме престоя към края на февруари и го завършваме в март. Елементарния случай престоя да започва и завършва в един и същ месец няма какво да го обсъждаме. Та, както казах (а между другото прехода между годините не ни бърка изобщо) прехода м/у месеците е проблема. Тогава си правим една помощна функция която смята разстоянието и забравяме за нея докрая и накрая си я решаваме (ако ни остане време да драснем още 1-2 реда).

function DaysPerLodging(Lodging: TLodging): Integer;
const
  MonthDays: array[Boolean, 1..12] of Integer =
    ((31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31), (31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31));
begin
  with Lodging do
    if StartMonth = EndMonth then
      DaysPerLodging := EndDay - StartDay + 1
    else
      DaysPerLodging := MonthDays[(StartYear mod 4 = 0) and ((StartYear mod 100 <> 0) or (StartYear mod 400 = 0)), StartMonth] + EndDay - StartDay + 1;
end;
Може малко да я съкратим, ако ползваме ала Delphi Result променлива, а и не бързаме много или искаме да я заплетем малко.
function DaysPerLodging(Lodging: TLodging): Integer;
const
  MonthDays: array[Boolean, 1..12] of Integer =
    ((31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31), (31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31));
begin
  with Lodging do
    begin
      Result := EndDay - StartDay + 1
      if StartMonth <> EndMonth then
        Result := Result + MonthDays[(StartYear mod 4 = 0) and ((StartYear mod 100 <> 0) or (StartYear mod 400 = 0)), StartMonth];
    end;
end;
Или още повече заплитане:
function DaysPerLodging(Lodging: TLodging): Integer;
const
  MonthDays: array[Boolean, Boolean, 1..12] of Integer =
    (((0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)),
     ((31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31), (31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31)));
begin
  with Lodging do
    DaysPerLodging := EndDay - StartDay + 1 + MonthDays[StartMonth <> EndMonth, (StartYear mod 4 = 0) and ((StartYear mod 100 <> 0) or (StartYear mod 400 = 0)), StartMonth]
end;

Това последното ще го преведа и на C (това трябва да тръгне и на TurboC 2.0):
int DaysPerLodging(Lodging L)
{
  static int MonthDays[2][2][12] =
    {{{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
    {{31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},{31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}}};
  return L.EndDay - L.StartDay + 1 + MonthDays[L.StartMonth != L.EndMonth][L.StartYear % 4 == 0 && (L.StartYear % 100 != 0) || (L.StartYear % 400 == 0)][L.StartMonth-1];
};
...или...
int DaysPerLodging(Lodging L)
{
  static int MonthDays[2][2][12] =
    {{{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}},
    {{31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},{31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}}};
  return L.EndDay - L.StartDay + 1 + MonthDays[L.StartMonth != L.EndMonth][!(L.StartYear % 4) && (L.StartYear % 100 || !(L.StartYear % 400))][L.StartMonth-1];
};

Наистина едва ли някой въвежда програмите и се опитва да ги компилира (предполагам, че никой не гледа ";"-ките :-) ) И едва ли проверяващите дават бонуси за сложни, заплетени и неразбираеми програми :wink:
« Последна редакция: 04.10.2005, 21:24:11 от ExpertOne »
Активен
ExpertOne

ymnata

  • Неактивен Неактивен
  • Публикации: 1
Re: Прием 2005 информатика
« Отговор #13 -: 28.11.2006, 15:26:01 »

 :heart: :heart: :heart: :heart: :heart: :heart: :inlove: :inlove: :inlove: :inlove: :inlove: :inlove: :inlove: :inlove: :-D :-D :-D :-D
Активен

Stilgar

  • Неактивен Неактивен
  • Публикации: 843
Re: Прием 2005 информатика
« Отговор #14 -: 28.11.2006, 17:03:32 »

i togava doshul .NET programista i kazal be teia shto se zanimavat s gluposti
i napisal:

DateTime d1;
DateTime d2;
//niakuv kod da poluchim dati v teia d1 i d2
TimeSpan t = d1.Substract(d2);
Активен
"Човек винаги трябва да си прави background" - Lia

prestor

  • Неактивен Неактивен
  • Публикации: 62
Re: Прием 2005 информатика
« Отговор #15 -: 28.11.2006, 19:05:11 »

Хах де да даваха на приемният изпит да пишем на .NET
Да ти кажа и така се ядваше.
Активен

Stilgar

  • Неактивен Неактивен
  • Публикации: 843
Re: Прием 2005 информатика
« Отговор #16 -: 28.11.2006, 19:53:08 »

ne davat li?
zvuchi mi dosta... jalko, nazadnichavo, ogranicheno...
ne che na Ц niama standartni biblioteki deto praviat sushtite uprajnenia

#include <time.h>
...
time_t start, finish;
...
//koT za inicializirane na teia carvulshtini start i finish
difftime(finish,start);
...
« Последна редакция: 28.11.2006, 20:07:31 от Stilgar »
Активен
"Човек винаги трябва да си прави background" - Lia

JOKe

  • Неактивен Неактивен
  • Публикации: 2656
  • Code or Die
Re: Прием 2005 информатика
« Отговор #17 -: 29.11.2006, 09:49:36 »

ne davat li?
zvuchi mi dosta... jalko, nazadnichavo, ogranicheno...
ne che na Ц niama standartni biblioteki deto praviat sushtite uprajnenia

#include <time.h>
...
time_t start, finish;
...
//koT za inicializirane na teia carvulshtini start i finish
difftime(finish,start);
...
da ama povecheto hora neznaqt kakvo  e time.h :+)
a i inache sam chuval ceh na izpita moej i na C# ili na Java da pishesh ne e problem v smisal ne e izreden v predmetite s koito moje da se kandidatstva no ako pishesh na nego pak ti se proverqva rabotata ush :)
taka che ne e nujno da pishesh na PASCAL primerno BLQKS
Активен

Stilgar

  • Неактивен Неактивен
  • Публикации: 843
Re: Прием 2005 информатика
« Отговор #18 -: 29.11.2006, 16:58:30 »

i az kato biah mlad i glupav (sega sum star i glupav)
v purvi kurs
si vikam be kvo da gi ucha teia biblioteki az moga da go napisha tva
posle razbrah che edin istinski programist shte otdeli 1 chas da nameri gotovo reshenie otkolkoto 30 min da si napishe negovo

ako shtiah da kandidatstvam s informatika shtiah da znam time.h
taka si mislia de
Активен
"Човек винаги трябва да си прави background" - Lia

Георги Соколов

  • Модератор
  • *****
  • Неактивен Неактивен
  • Публикации: 51
    • website
Re: Прием 2005 информатика
« Отговор #19 -: 13.12.2006, 19:28:20 »

изказване тип "Аз обичам Delphi"
Активен
Компютрите не правят това което искаш да правят. Правят това което им кажеш да правят!