< Return to Video

Introduktion til while-løkker | Computer Programmering | Khan Academy

  • 0:01 - 0:02
    Lad os snakke om løkker.
  • 0:02 - 0:05
    Jeg har her en while-løkke og
    med blot et par få linjer kode
  • 0:05 - 0:08
    kan jeg skrive denne besked
    hele vejen ned af skærmen.
  • 0:08 - 0:12
    Hvis jeg ændrer beskeden således,
    så bliver de alle ændret.
  • 0:12 - 0:14
    Hvordan?
  • 0:14 - 0:16
    Vi skal se på koden om lidt,
  • 0:16 - 0:20
    men lad os først se på,
    hvordan vi ville skrive dette program
  • 0:20 - 0:23
    ved kun at bruge hvad vi hidtil har lært,
    altså uden løkker.
  • 0:23 - 0:27
    For at gøre dette skal der
    skrives 'text' en masse gange.
  • 0:27 - 0:30
    Vi taster >text(message, 30, 40);<
  • 0:30 - 0:36
    og nu skal dette gentages indtil
    vi når hele vejen den af skærmen.
  • 0:36 - 0:39
    Det vil være et stort arbejde, ikke?
  • 0:39 - 0:43
    Bunden synes ret langt væk
    og det bliver endnu værre
  • 0:43 - 0:48
    hvis du ændrer 70 til 60,
  • 0:48 - 0:53
    da det påvirke den næste,
    som også skal være mindre og så videre
  • 0:53 - 0:58
    og der skal bruges endnu flere 'text'-kald
    for at nå hele vejen ned.
  • 0:58 - 1:02
    Det er rigtig træls, men heldigvis
    har vi løkker, der kan hjælp os.
  • 1:02 - 1:05
    Når du fremover ser kode,
    der gentages, som her,
  • 1:05 - 1:08
    så skal dit første spørgsmål være,
    "kan jeg bruge en løkke?"
  • 1:08 - 1:11
    En løkke hjælper os med at
    gentage kode igen og igen
  • 1:11 - 1:14
    og laver blot en lille ændring hver gang.
  • 1:14 - 1:16
    Vi kan omskrive koden
    således med en løkke.
  • 1:16 - 1:20
    Vi starter med at taste >while() {}<.
  • 1:20 - 1:23
    Vi får denne fejlbesked, men det er
    fordi vi er ikke færdige endnu.
  • 1:23 - 1:26
    Bare rolig den går væk, når vi er færdige.
  • 1:26 - 1:31
    Hver gang du laver en løkke,
    så skal du besvare 3 spørgsmål,
  • 1:31 - 1:33
    som du kan se her.
  • 1:33 - 1:37
    Det første spørgsmål er,
    "hvad vil jeg gerne gentage?"
  • 1:37 - 1:41
    Det vi vil gentage skal
    være inde mellem {}.
  • 1:41 - 1:46
    Vi vil her gentage kaldet for 'text',
    så lad os indsætte det i {}.
  • 1:46 - 1:51
    Men så gentager vi blot det samme kald
    på 'text' igen og igen,
  • 1:51 - 1:53
    hvilket jo ikke hjælper.
  • 1:53 - 1:54
    Der er noget, der skal ændres.
  • 1:54 - 1:58
    Det er spørgsmål 2, som er ",
    hvad vil jeg ændre hver gang?"
  • 1:58 - 2:00
    Jeg vil ændre y-positionen, ikke?
  • 2:00 - 2:03
    Den skal være 60 og så skal den være 80.
  • 2:03 - 2:08
    Vi laver den derfor om til en variabel
    kaldet y, da det er y-positionen.
  • 2:08 - 2:10
    Jeg erklærer den variabel heroppe.
  • 2:10 - 2:12
    Jeg tildeler den værdien 40.
  • 2:12 - 2:18
    Nu skal vi blot ændre y og det gør vi
    hernede ved at taste >y=y+20;<
  • 2:18 - 2:20
    og den bliver nu større hver gang.
  • 2:20 - 2:25
    Vi kan bruge det vi lærte om
    genvej til gradvis ændring her.
  • 2:25 - 2:27
    Vi kan blot bruge denne genvej.
  • 2:27 - 2:31
    Så langt så godt,
    nu skal vi kun besvare spørgsmål 3,
  • 2:31 - 2:33
    "hvor længe skal vi gentage dette?"
  • 2:33 - 2:37
    Vi skal gøre dette igen og igen,
    men ikke for evigt, vel?
  • 2:37 - 2:39
    Hvis vi gør det for evigt,
    så skal vi vente ret længe
  • 2:39 - 2:41
    og det kan få din browser
    til at bryde sammen.
  • 2:41 - 2:44
    Forhåbentlig ikke.
  • 2:44 - 2:47
    Vi skal kun fortsætte til vi
    kommer ned til bunden af siden, ikke?
  • 2:47 - 2:51
    Hvilket betyder, vi skal fortsætte,
    så længe y er mindre end 400.
  • 2:51 - 2:52
    Det indsætter vi her og sådan!
  • 2:52 - 2:56
    Nu skrives denne besked
    hele vejen ned af skærmen.
  • 2:56 - 2:59
    Du kan se, dette er meget nemmere
    end vores første forsøg,
  • 2:59 - 3:04
    som tog os temmelig længe
    og vi var ikke engang halvvejs.
  • 3:04 - 3:08
    Vi kan fjerne dette og
    her er vores program.
  • 3:08 - 3:11
    Lad os nu forsøge at forstå,
    hvad der sker her.
  • 3:11 - 3:15
    For at gøre det vil jeg
    udskrive y hver gang.
  • 3:15 - 3:16
    jeg skriver " y er nu" og hernde
  • 3:16 - 3:19
    vil jeg tilføje y til slutnignen af beskeden så vi kan se det.
  • 3:19 - 3:23
    I øjeblikke ændrer værdien med 20 og vi kan ændre det
  • 3:23 - 3:27
    ved at ændre denne vriabel du kan lave en om til 50.
  • 3:27 - 3:31
    Og nu ændres det med 50,
  • 3:31 - 3:36
    lideldes kan du ændr disse andre væride
  • 3:36 - 3:39
    og du kan se, hvordand et pårivker, hvor prorgammet stopper.
  • 3:39 - 3:44
    For at forstå dette så kan du se på det som
  • 3:44 - 3:47
    en for for if sætning, Vi har her et boolsk udtryk
  • 3:47 - 3:52
    som vi har lært om. Og her ar vi udsagnet,
  • 3:52 - 3:55
    kun h is sdette boolke udtryk er sandt ellers
  • 3:55 - 3:59
    hopper vi ned til slutningen Men det interessanet er at med en while løkke
  • 3:59 - 4:04
    kan vi have denne hemmelig tin i bune som sigre "gå tilbage til start"
  • 4:04 - 4:07
    af løkken. Og denne hemmelgie instruks betyde
  • 4:07 - 4:11
    at istedet for at gå ud af den og fortsætte som med en if
  • 4:11 - 4:15
    sætning, hver gang vi laver en løkke så går vi tilgage og tjekk
  • 4:15 - 4:19
    om betingelsen stadig er sand. Hvis den er så gentages den en gang meer.
  • 4:19 - 4:23
    Og som du måske har gætte den anden gag den gentages
  • 4:23 - 4:27
    så gør vi det samme vi går tilbage tils tart og hvis y stadig er mindre dn 279
  • 4:27 - 4:32
    hvis den er, så gentager vi en gange mere og fortsætter med at tjekke.
  • 4:32 - 4:35
    og hvis den ikke er så går vi tilbge til sart her
  • 4:35 - 4:38
    og tilsidse så undslipper vi og fortæster med progerammet.
  • 4:38 - 4:43
    Godt nok der er mange andre spn'ndene måder at brug eløkker til
  • 4:43 - 4:47
    som vi snart skal lære me nu dette er en rigtig god betydelse.
Title:
Introduktion til while-løkker | Computer Programmering | Khan Academy
Description:

more » « less
Video Language:
English
Team:
Khan Academy
Duration:
04:46

Danish subtitles

Revisions Compare revisions