mboost-dp1

Flickr - Jacob Bøtter

Dansk Datalogi Dyst 2009

- Via Dansk Datalogi Dyst - , redigeret af Net_Srak

I år afvikles det 21. internationale datalogi-OL til august i Bulgarien. Dansk Datalogi-Dyst er udtagelseskonkurrencen hertil og afholdes i flere runder i løbet af foråret 2009. Den indledende konkurrence er en hjemmeopgave, der foregår i ugerne 6, 7 og 8 (30/1-21/2), hvor man selv skal vælge, hvilken uge man vil deltage i.

Konkurrencen er åben for alle elever i de gymnasiale uddannelser, som er født efter 30.6.1989. Der kræves ingen forudsætninger for deltagelse, men løsningsprogrammerne skal skrives i et af sprogene Pascal, C eller C++. Dette skyldes reglerne ved den internationale konkurrence.

Alle, der har erfaring med programmering, opfordres til at deltage. Vinderne af den indledende runde vil blive tilbudt en træningslejr. Er man interesseret, så kan man tilmelde sig her.





Gå til bund
Gravatar #1 - mathiass
15. jan. 2009 12:47
Det er da mystisk at man ikke kan bruge nogle mere moderne sprog, er det ikke?
Gravatar #2 - flyingfly
15. jan. 2009 13:09
#1 Jo meget, især med den dato man skal være født efter (tilfældigt nok min fødselsdag:P, kan jeg så stille op egentgli?) Da det netop er så unge der kun kan deltage.

Men kan modsat godt forstå de ikke acceptere sprog som Visual Basic, som mange starter at lære i. Både fordi det er det man lærer i de gymniasielle uddannelser. Man ligger vel lidt op til at man skal arbejde med det ved siden af skolen, og virkelig interessere sig for det.
Gravatar #3 - x-site
15. jan. 2009 13:16
Kan godt forstå at de vælger det 3 sprog,
dels fordi de er rigtige sprog, og ikke bare drag and drop sprog, ( ikke for at træde nogen over tæerne), men de nyere sprog som Java, C# mm. er mere eller mindre som at sætte legoklodser sammen, hvor Pascal, C og C++, kan svare til at du først skal lave platsikken og støbe den til klodser, for så at sætte dem sammen, se det kræver evner :)
Gravatar #4 - Chillyskye
15. jan. 2009 13:16
#2
Tror ikke det har så meget at gøre med hvad man lærer i skolen, men tror mere de er valgt på baggrund af deres platforms uafhængighed (kan undre sig over hvor Java så er blevet af)

Ihvertfald både C og C++ er temmelig low level sprog, har aldrig skrevet i Pascal, så den kan jeg ikke udtale mig om. Men at kunne lave noget i C og C++ beviser at man kan programmere noget istedet for blot property setting som mange af de nyere sprog synes at gå ud på.

Jeg er nok selv en tand for gammel til denne dyst, men den lyder da meget sjov.

Gravatar #5 - albani
15. jan. 2009 13:17
#3

interessant udlægning/fortolkning af c# og Java.... meget ... abstrakt....
Gravatar #6 - Chillyskye
15. jan. 2009 13:21
#5
Enig, men han har lidt ret :D
Det er nu engang noget andet at arbejde med et sprog hvor man ikke alene skal bage sit brød selv, men faktisk også male kornet til mel og hente vand fra floden, uden at man på forhånd ved hvor floden er :D
Gravatar #7 - SimonBob
15. jan. 2009 13:27
#6
Endnu bedre udlægning/fortolkning
Gravatar #8 - nlundgaard
15. jan. 2009 13:34
Tror i roder rundt i hvad der er sprog og hvad der er framework
Gravatar #9 - Remmerboy
15. jan. 2009 13:42
c, c++, pascal, python, java, c# osv er 3. generationssprog.
nogle af dem er nemmere at "programmerer" fordi der er hjælpemidler. ligesom til html kodning.
ens for dem alle er, at programmeringen forgår på samme måde, eller ca ligeså svært, hvis deres eneste redskab er notepad.
Gravatar #10 - Zhasha
15. jan. 2009 13:45
Opgaverne er algoritmik. Det er lige svært i alle sprog
Gravatar #11 - Krissam
15. jan. 2009 13:55
Hva' med os der er 2 år for gamle og går på en "undgomsuddanelse"... jeg går på hf, jeg vil også være med :/ buhu
Gravatar #12 - [harpocrates]
15. jan. 2009 13:55
#10

hvis problemet bestod i at sortere bogstaver "aslkdjlskdgh", er det altid en fordel at bruge et sprog som besidder nogle gode værktøjer til at arbejde med strenge.. Hvilket høj-niveau sprog i høj grad gør i forhold til lav-niveau sprog.. Der er jo langt flere indbyggede funktioner til at kigge på strengen hvor man vil, i stedet for fx. altid at skulle kigge på et første bogstav eller lign.

-harpo
Gravatar #13 - arne_v
15. jan. 2009 14:11
#8

Ja.

Det er vist mere standard library for sproget end selve sproget det tænkes på.

Men det er jo også relevant.
Gravatar #14 - arne_v
15. jan. 2009 14:13
#4

Pascal er mere high level end C.

Og lidt en skam at det ikke bruges mere. Der er mange gode tanker i det sprog.

Der er forbløffende mange Java/C# programmører som går undt og tror at de sprog er så type sikre som de kan blive.

Gravatar #15 - nlundgaard
15. jan. 2009 14:14
#13

Synes bare det er misvisende at sige at et sprog er bedre end et andet, hvis det man mener er, at der er flere indbyggede funktioner i det ene end det andet
Gravatar #16 - Zombie Steve Jobs
15. jan. 2009 14:17
#1 Det er da moderne nok til at de har valgt at skrive datalogidyst i to ord.
Ikke engang en sølle bindestreg kan de finde plads til.
Gravatar #17 - arne_v
15. jan. 2009 14:20
#15

Et stort library som er garanteret at være til rådighed fordi det er en del af standarden er et plus.

Ja - sprog og library er to forskellige ting - men når man skal vurdere må man jo vurdere hele pakken.
Gravatar #18 - Spiderboy
15. jan. 2009 14:31
arne_v (14) skrev:
Der er forbløffende mange Java/C# programmører som går undt og tror at de sprog er så type sikre som de kan blive.

Bare for at være lidt nysgerrig og off-topic: kan du give et par eksempler på faldgruber? Tænker du polymorfisme eller noget helt andet?
Gravatar #19 - arne_v
15. jan. 2009 14:47
#18

I Pascal/Modula-2/Ada familien kan du definere typer a la:

type
between1and3 = 1..3;
intarraywith3elements = array [between1and3] of integer;

I Java/C# har man kun int i 1/2/4/8 bytes og array indexes er en 4 byte int. Meget primitivt.

Og forskellen viser sig ved at fejl som giver IndexOutOfRangeException i Java giver compile fejl i de sprog.

Gravatar #20 - DusteD
15. jan. 2009 14:52
1989 ? Jeg føler mig gammel, er stadig 1½ år fra at begynde på datalogi studiet og allerede for gammel til at deltage i konkurrencer :s
Gravatar #21 - Spiderboy
15. jan. 2009 14:57
#19
Nåh ja, de der intervaltyper i Pascal.

Mon ikke de før eller siden laver noget til det i samme stil som enums? De er dæleme blevet fleksible og avancerede i Java (og C#? kender ikke C#) ift. Pascal og C/C++.
Gravatar #22 - arne_v
15. jan. 2009 15:04
#21

Man ved aldrig.

C# enum er lidt ligesom Java enum, men er langt tættere på C/C++ enum end Java er.
Gravatar #23 - mathiass
15. jan. 2009 15:14
Men at kunne lave noget i C og C++ beviser at man kan programmere noget istedet for blot property setting som mange af de nyere sprog synes at gå ud på.
Nej, det beviser at du kan programmere C/C++...
Gravatar #24 - krainert
15. jan. 2009 16:17
#2 og andre
At hævde at der konsekvent undervises i Visual Basic på de danske gymnasielle uddannelser er godt nok lidt af en grov generelisering. På HTX Viby (TGV), f.eks., undervises der primært i Java, mens alle andre sprog også godkendes, såfremt de tillader fremstilling af produkter opfyldende de officielle krav til et givet projekt.
Gravatar #25 - arne_v
15. jan. 2009 16:21
#24

Da sidste rigtige VB udkom i 1998, blev erstattet af VB.NET i 2002 og ikke har kunnet købes i mange år, så ville det også være overraskende hvis der blev brugt VB6 mange steder !
Gravatar #26 - mrF0x
15. jan. 2009 20:18
Ahh hvad nu har jeg kodet i alle 3 sprog og så kan man ikke engang være med.

Jeg arbejder idag med C# og ja det er langt fra så komplekst, som at støbe skeen selv i C++.

Dog vil jeg gerne understrege at det med at skille Frameworks og sproget fra hinanden er meget vigtigt. Der findes et ton af forskellige frameworks til især C++. Og der er mange veje at gå.

Det ville være lodret forkert af mig at påstå at C# er bedre end C++. Jeg kan stadigvæk huske mit første C# projekt - og det var ren legeplads ved siden af mine MFC erfaringer. Dog har det sine begrænsninger og det er ikke alt jeg elsker ved C#. En helt anden ting er at C# er et markedsført produkt med interesse i at "lokke" flere over på en fælles platform med det formål reelt set at suge programmører til "deres" platform. Der er jeg måske lidt mere over i at skal vi være cross-platform - skal det være ægte og rent og ikke styret af markedskræfter.

En sidste ting er at hele det her med at f.eks. sortere strenge, arrays, rekursive funktioner osv osv.. der vil jeg mene at det ikke altid er en fordel med f.eks. et OO sprog.

Funktionelle sprog som ML, Haskel osv er ret så imponerede at arbejde med.. Omend desværre lidt mere sløv i det. Multi-paradigme. Jovist, det praler C# af, men flyv lige en tur op i helikopteren. Det er det så absolut ikke. Det imiterer.... at best.

Den hellige grail i min verden er stadigvæk C/C++ - du lærer nogle grundlæggende principper, som du ikke får i et ekstra-højniveau sprog. Man kan kalde mig gammeldags, men programmering handler stadigigvæk om at man skal kende til de fundamentale begreber.

Et helt uhyggeligt eksempel er at en bog jeg har læst beskriver pointere, som knagerækker... Ærlig talt - kald nu en spade for en spade.

... så spredes folk til højre og ventre ;)
Gravatar #27 - Lobais
16. jan. 2009 08:58
#10 Opgaverne er algoritmik. Det er lige svært i alle sprog.
Præcis. Jeg har deltaget i flere runder i googles code jam, og det er faktisk kun sværere at skrive i f.eks. python, fordi man er nødt til at være mere smart, og ikke kan satse lige så meget på rå hastighed.
Gravatar #28 - Lobais
16. jan. 2009 09:06
Kun opgaverne fra 2005 ligger på nettet: http://ddd.emu.dk/opgaver/ddd05.zip men det ser ikke særlig svært ud. Måske skulle man lære sig C eller C++ bare for at tage med. Bare ærgerligt, at alle de der fysik/matematik/datalogi olympiader skal ligge næsten samtidigt, og så oven i eksamenerne.

Mon ikke det alligevel er mest simpelt at skrive i C (over C++), når alle programmerne nok ender omkring en 200 linjer?
Gravatar #29 - andersfr
16. jan. 2009 19:00
Opgaverne i de indledende runder er med vilje på et niveau, så man har mulighed for at klare dem, selv i et sprog man ikke normalt bruger. Det er naturligvis vigtigt at programmet fungerer korrekt, men hovedvægten bliver lagt på tankegangen bag løsningen.

#28: De kan godt løses på ca 50 linjers kode, hvis man forstår den underliggende algoritme i løsningen, og ved hvordan den bedst implementeres i det valgte sprog. Dette er IKKE noget mål i sig selv, men bare for at understrege at man ikke bliver overbebyrdet kodemæssigt.
Gravatar #30 - Lobais
17. jan. 2009 21:43
#29 Foregår første rundte udelukkende over internettet?
Hvor lang tid tager det fra man har tilmeldt sig, til man kan logge ind? Skal det hen over skolen først?
Gravatar #31 - andersfr
18. jan. 2009 10:07
#30: Den første runde foregår udelukkende over internettet. Du kan logge ind umiddelbart efter tilmelding.
Gå til top

Opret dig som bruger i dag

Det er gratis, og du binder dig ikke til noget.

Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.

Opret Bruger Login