Pseudokode

Denne artikkelen mangler kildehenvisninger, og opplysningene i den kan dermed være vanskelige å verifisere. Kildeløst materiale kan bli fjernet. Helt uten kilder. (10. okt. 2015)

Pseudokode er en kompakt og informativ beskrivelse av programmeringen av en algoritme. Pseudokode bruker strukturelle konvensjoner fra noen programmeringsspråk, men er skrevet for å leses av mennesker, snarere enn en datamaskin. Slik kode utelater derfor vanligvis detaljer som ikke er nødvendige for at mennesker skal forstå algoritmen, som variabeldeklarasjoner eller systemspesifikk kode. Hensikten med å skrive pseudokode, er at det er lett for leseren å forstå algoritmen, uavhengig av hvilket programmeringsspråk leseren er vant til å bruke.

Syntaks

Siden pseudokode ikke skal leses av en maskin, eksisterer det ingen faste regler for syntaksen. Pseudokode trenger således heller ikke å skrives på engelsk, dersom det er ønskelig å bruke et annet skriftspråk. Det vanligste er likevel å benytte seg av strukturelle konvensjoner fra vanlige programmeringsspråk.

Eksempel

<variabel> = <uttrykk>

hvis <betingelse>
    gjør noe;
ellers
    gjør noe annet;

mens <betingelse>
    gjør noe;

for <variabel> fra <første verdi> til <siste verdi> med <steglengde>
    gjør noe med variabelen;

funksjon <funksjonsnavn>(<argumenter>)
    gjør noe med argumentene;
    returner noe;

<funksjonsnavn>(<argumenter>)    // Funksjonskall

Maskinkompilering av pseudokode

Det har ofte blitt foreslått å gjøre fremtidige programmeringsspråk likere pseudokode eller naturlig språk. Tanken er at stadig økende datakraft og bedret kompileringsteknologi vil gjøre datamaskinene i stand til å lage programmer fra algoritmebeskrivelser, i stedet for å kreve at brukeren må mate inn spesifikke detaljer med streng syntaks. Imidlertid viser de mest populære programmeringsspråkene mindre likhet med naturlig språklig grammatikk enn eldre språk, på grunn av introduksjonen av «punkt-notasjon» i objektorientert programmering.

Oppslagsverk/autoritetsdata
Store norske leksikon · LCCN