Programmeerwedstrijd

Een programmeerwedstrijd is een wedstrijd waarbij binnen een gestelde tijd een aantal opgaven opgelost moeten worden door het programmeren van een computerprogramma. De opgaven zijn algoritmisch van aard en bestaan uit het produceren van de juiste uitvoer op basis van geleverde invoer. Enkele voorbeelden van programmeerwedstrijden zijn Benelux Algorithm Programming Contest, CodeCup en de Nederlandse Informatica Olympiade.

Een programmeerwedstrijd.
Broncode van een computerprogramma.

Veel problemen maken gebruik van datastructuren als lijsten en grafen.

Overzicht bewerken

Programmeerwedstrijden kunnen gericht zijn op het zo efficiënt mogelijk oplossen van problemen of op het oplossen van zo veel mogelijk (relatief kleine) problemen binnen een gestelde tijd. In het eerste geval kan men de oplossing vaak online insturen terwijl in het tweede geval de computerprogramma's naar een server gestuurd worden voor controle. Hierbij worden vaak ook maximale tijdsduren opgelegd hoelang het computerprogramma er over mag doen waardoor efficiënt programmeren hier ook van belang is.

De oplossing wordt automatisch gecontroleerd door het programma allerlei invoer te geven, zoals gangbare situaties maar ook de randgevallen, om te controleren of het geschreven programma het probleem correct oplost. Het kan ook zijn dat de oplossing niet compileert op de server. Als een oplossing juist is dan wordt dit gemeld aan de deelnemers, in andere gevallen krijgt men te horen dat iets fout ging maar zonder al te veel details - het is aan de deelnemers om uit te zoeken waarom een oplossing onjuist is.

Lijst van programmeerwedstrijden bewerken

Hieronder staat een overzicht van programmeerwedstrijden met een artikel op Wikipedia:

Zie de categorie Programmeerwedstrijd van Wikimedia Commons voor mediabestanden over dit onderwerp.