Grundlæggende programmering
Dette afsnit dækker de grundlæggende koncepter i programmering, som du vil støde på, uanset hvilket sprog du vælger at lære. Disse koncepter er universelle og danner fundamentet for al softwareudvikling.
Logik
Programmering handler i bund og grund om at beskrive en proces så præcist, at en computer kan udføre den. Det kræver logik, struktur og opmærksomhed på detaljer. Derfor starter forløbet med det tekniske fundament og bevæger sig derefter gradvist over i kodning, arbejdsvaner og de større systemer, som programmer indgår i.
Det kan være svært i starten at forstå, hvor præcis man faktisk skal være. Se denne video, hvor en far beder sine børn forklare, hvordan han skal lave en sandwich, som om han var en computer, der kun forstår helt konkrete instruktioner.
IDE’er og teksteditorer
Når du begynder at programmere, skal du bruge et værktøj til at skrive og køre din kode. Der er mange muligheder, fra simple teksteditorer til avancerede integrerede udviklingsmiljøer (IDE’er).
En teksteditor er et simpelt program til at skrive og redigere tekstfiler. Eksempler inkluderer Notepad, Sublime Text og Visual Studio Code. Teksteditorer er lette og hurtige, men mangler ofte funktioner som debugging og autofuldførelse.
En IDE (Integrated Development Environment) er et mere avanceret værktøj, der kombinerer en teksteditor med andre funktioner som debugging, autofuldførelse, projektstyring og meget mere. Eksempler inkluderer Visual Studio, JetBrains IntelliJ IDEA, PyCharm og Eclipse.
Til at starte med anbefales det at bruge en simpel teksteditor eller en letvægts IDE som Visual Studio Code, der har mange udvidelser til forskellige sprog. Efterhånden som du bliver mere erfaren, kan du vælge at bruge en mere avanceret IDE, der passer til dine behov.
Som begynder er det vigtigste dog ikke at finde det “perfekte” værktøj. Det vigtigste er at komme hurtigt i gang med at skrive og køre små programmer.
Hello World
“Hello World” er typisk det første program, enhver nybegynder lærer. Programmet gør noget meget simpelt: det udskriver teksten “Hello World” på skærmen. Mens dette kan synes trivielt, er formålet med programmet at demonstrere, hvordan man skriver, kompilerer og kører kode i et programmeringssprog.
Her er “Hello World” i forskellige sprog:
Alle disse programmer gør det samme - de udskriver teksten “Hello World” på skærmen. Men syntaksen (måden koden skrives på) varierer fra sprog til sprog.
Variabler
En af de mest grundlæggende koncepter i programmering er variabler. En variabel er en navngivet plads i hukommelsen, hvor du kan gemme data. Du kan tænke på en variabel som en boks med et navn, hvor du kan lægge noget i, tage det ud og ændre det.
# Python eksempel
navn = "Anna" # variablen 'navn' gemmer teksten "Anna"
alder = 25 # variablen 'alder' gemmer tallet 25
En vigtig pointe er, at en variabel netop kan ændre værdi, mens programmet kører:
Computeren læser programmet trin for trin. Derfor vil point først være 0, derefter 10 og til sidst 15.
Gode variabelnavne gør kode lettere at forstå. alder, navn og point er lettere at læse end navne som x, y og z, hvis formålet ikke er tydeligt.
Variabler har typisk en type, der bestemmer, hvilken slags data de kan indeholde:
- Tekst (string): En sekvens af tegn, f.eks. “Hello World”
- Heltal (int): Et helt tal uden decimaler, f.eks. 42
- Decimaltal (float/double): Et tal med decimaler, f.eks. 3.14
- Boolean: En sand/falsk værdi, f.eks.
trueellerfalse
# Eksempler på datatyper i Python
tekst = "Hej Verden" # string
heltal = 100 # int
decimaltal = 3.14159 # float
sandhed = True # boolean
Operatorer
Operatorer bruges til at udføre handlinger på variabler og værdier. Der er flere typer operatorer:
Aritmetiske operatorer
| Operator | Beskrivelse | Eksempel |
|---|---|---|
+ |
Addition | 5 + 3 = 8 |
- |
Subtraktion | 5 - 3 = 2 |
* |
Multiplikation | 5 * 3 = 15 |
/ |
Division | 6 / 3 = 2 |
% |
Modulus (rest) | 7 % 3 = 1 |
Sammenligningsoperatorer
| Operator | Beskrivelse | Eksempel |
|---|---|---|
== |
Lig med | 5 == 5 er sand |
!= |
Ikke lig med | 5 != 3 er sand |
< |
Mindre end | 3 < 5 er sand |
> |
Større end | 5 > 3 er sand |
<= |
Mindre eller lig | 3 <= 3 er sand |
>= |
Større eller lig | 5 >= 5 er sand |
Logiske operatorer
| Operator | Beskrivelse | Eksempel |
|---|---|---|
and |
Sand hvis begge er sande | True and True er True |
or |
Sand hvis mindst én er sand | True or False er True |
not |
Vender sandhedsværdien | not True er False |
Kommentarer
Kommentarer er tekst i koden, der ignoreres af computeren. De bruges til at forklare, hvad koden gør, eller til midlertidigt at deaktivere kode. Kommentarer er vigtige for at gøre koden læsbar og forståelig for andre (og dig selv i fremtiden).
# Dette er en enkelt linje kommentar i Python
"""
Dette er en flerlinjet kommentar
i Python (bruges også til dokumentation)
"""
x = 5 # Du kan også skrive kommentarer efter kode
// Dette er en enkelt linje kommentar i C#
/*
Dette er en flerlinjet kommentar
i C#
*/
int x = 5; // Kommentar efter kode
Input og output
De fleste programmer skal kunne kommunikere med brugeren. Output er, når programmet viser information til brugeren (f.eks. tekst på skærmen). Input er, når programmet modtager information fra brugeren (f.eks. via tastaturet).
# Output
print("Hvad hedder du?")
# Input
navn = input()
# Output med variabel
print("Hej, " + navn)
Datastrukturer
Udover simple variabler kan du også gemme data i mere komplekse strukturer:
Hvis én variabel kun kan gemme én værdi, har du brug for datastrukturer, når du vil gemme flere værdier samlet. Det kan for eksempel være en liste af tal, en samling navne eller oplysninger om en person.
Lister/Arrays
En liste (eller array) er en samling af elementer i en bestemt rækkefølge.
Dictionaries/Maps
Et dictionary (eller map) er en samling af nøgle-værdi par.
# Python dictionary
person = {
"navn": "Anna",
"alder": 25,
"by": "København"
}
print(person["navn"]) # Udskriver "Anna"
Eksempel: Gæt et tal
Her er et simpelt eksempel på et program, der kombinerer mange af de koncepter, vi har gennemgået:
import random
# Generer et tilfældigt tal mellem 1 og 10
hemmeligt_tal = random.randint(1, 10)
while True:
# Bed brugeren om at gætte
gaet = int(input("Gæt et tal mellem 1 og 10: "))
# Tjek om gættet er korrekt
if gaet == hemmeligt_tal:
print("Tillykke! Du gættede rigtigt!")
break
elif gaet < hemmeligt_tal:
print("For lavt! Prøv igen.")
else:
print("For højt! Prøv igen.")
Dette program:
- Genererer et tilfældigt tal
- Beder brugeren om at gætte
- Sammenligner gættet med det hemmelige tal
- Giver feedback og fortsætter, indtil brugeren gætter rigtigt
Næste skridt
Her har du set de mest grundlæggende byggesten: variabler, operatorer, input, output og simple datastrukturer. Det næste er at lære, hvordan programmer styrer rækkefølgen af deres handlinger med betingelser, løkker og funktioner. Fortsæt med Flow.



