natgillin/translations-raw huggingface dataset:
year = 2003 author = "Cies" print author + "startede KTurtle- projektet i" + year + "og nyder stadig at arbejde med det!"
message "Cies started KTurtle in 2003 and still enjoys working on it!"
go
ask
inputwindow tager en streng som input. Det viser en dialog der indeholder teksten fra strengen, ligesom message. Men derudover er der også et inddatafelt i dialogen. Gennem dette inddatafelt kan brugeren indtaste et tal eller en streng som kan opbevares i en container. For eksempel in = inputwindow "Hvor gammel er du?" out = 2003 - in print "I 2003 var du" + out + "år gammel på et tidspunkt." Når en bruger annullere dialogen, eller ikke indtaster noget over hovedet, bliver containeren tømt.
ask takes a string as input. It shows this string in a pop-up dialog (similar to message), along with an input field. After the user has entered a number or a string into this, the result can be stored in a variable or passed as an argument to a command. For example: $in = ask "What is your year of birth?" $out = 2003 - $in print "In 2003 you were" + $out + "years old at some point." If the user cancels the input dialog, or does not enter anything at all, the variable is empty.
Tilknytninger
Assignment of variables
Containere der ikke bruges indeholder ingenting. Et eksempel: print N Dette vil ingenting udskrive. Hvis vi prøver at udføre math med tomme containere vil vi få fejl.
Variables have to be assigned in order to be used. For example: print $n Will result in an error message.
Det var nemt, nu til et lidt sværere eksempel: A = 2004 B = 25 C = A + B # den næste kommando udskriver "2029" print C backward 30 # den næste kommando udskriver "2004 plus 25" print A + "plus" + B backward 30 # den næste kommando udskriver "1979" print A - B I de første to linjer bliver variablerne A og B sat til 2004 og 25. På den tredje linje bliver variablen C sat til A + B, som er 2029. Resten af eksemplet består af 3 print kommandoer med backward 30 imellem. backward 30 er der for at sørge for at hvert uddata er på en ny linje. I dette eksempel ser du også at variabler kan bruges i matematiske beregninger.
Please consider the following piece of & turtlescript;: $a = 2004 $b = 25 # the next command prints "2029" print $a + $b backward 30 # the next command prints "2004 plus 25 equals 2029" print $a + "plus" + $b + "equals" + ($a + $b) In the first two lines the variables a and b are set to 2004 and 25. Then in two print commands with a backward 30 in between. The comments before the print commands explain what they are doing. As you see variables can be used just as if their where what they contain, you can use them with any kind of operators or give them as input when invoking commands.
Kommandoer til at styre kørslen fremhæves med mørkegrønt og fed type. Kantede parenteser bruges som oftest sammen med kommandoer til at styre kørslen, og de er fremhævet med lysegrønt.
Execution controlling commands are highlighted with dark green in a bold font type. The brackets are mostly used together with execution controllers and they are highlighted with black.
if
wait
wait lader skildpadden vente i X sekunder. repeat 36 [forward 5 turnright 10 wait 0. 5] Denne kode tegne en cirkel, men skildpadden vil vente et halvt sekund ved hvert skridt. Dette giver indtrykket af en skildpadde der bevæger sig langsomt.
wait makes the turtle wait for X seconds. repeat 36 {forward 5 turnright 10 wait 0.5} This code draws a circle, but the turtle will wait half a second after each step. This gives the impression of a slow-moving turtle.
if spørgsmål [...]
if boolean {...}
Koden der er placeret på... vil kun blive udført hvis altså if svaret på spørgsmålet er sand. Læs venligst mere om spørgsmål i spørgsmålsafsnittet. x = 6 if x & gt; 5 [print "x er større end fem!"] På første linje sættes x til 6. På den anden linje stilles spørgsmålet x & gt; 5. Da svaret på dette spørgsmål er sand vil udførselskontrollen if tillade koden mellem parenteserne at blive udført
The code that is placed between the brackets will only be executed if the boolean value evaluates true. $x = 6 if $x & gt; 5 {print "$x is greater than five!"} On the first line $x is set to 6. On the second line a comparing operator is used to evaluate $x & gt; 5. Since this evaluates true, 6 is larger than 5, the execution controller if will allow the code between the brackets to be executed.
reset
else
if spørgsmål [...]
if boolean {...} else {...}
else kan yderligere bruges i udførselskontrollen if. Koden mllem parenteserne efter else udføres kun hvis svaret på spørgsmålet der stilles er falsk. reset x = 4 if x & gt; 5 [print "x er større end fem!"] else [print "x er mindre end seks!"] Der spørges om x er større end 5. Idet x er sat til 4 på den første linje er svaret på spørgsmålet falsk. Dette betyder at koden mellem parenteserne efter else bliver udført.
else can be used in addition to the execution controller if. The code between the brackets after else is only executed if the boolean evaluates false. reset $x = 4 if $x & gt; 5 {print "$x is greater than five!"} else {print "$x is smaller than six!"} The comparing operator evaluates the expression $x & gt; 5. Since 4 is not greater than 5 the expression evaluates false. This means the code between the brackets after else gets executed.
"while" - løkken
The "while" loop
hide
while
while spørgsmål [...]
while boolean {...}
Udførselskontrollen while er meget lige som if. Forskellen er at while bliver ved med at gentage (gå i løkke) koden mellem parenteserne indtil svaret på spørgsmålet er falsk. x = 1 while x & lt; 5 [forward 10 wait 1 x = x + 1] På den første linje sættes x til 1. På den anden linje stilles spørgsmålet x & lt; 5. Da svaret på dette spørgsmål er sand starter udførselskontrollen while udførslen af koden mellem parenteserne indtil svaret på spørgsmålet er falsk. I dette tilfælde vil koden mellem parenteserne blive udført 4 gange, fordi hver gang den femte linje udføres bliver x en større.
The execution controller while is a lot like if. The difference is that while keeps repeating (looping) the code between the brackets until the boolean evaluates false. $x = 1 while $x & lt; 5 {forward 10 wait 1 $x = $x + 1} On the first line $x is set to 1. On the second line $x & lt; 5 is evaluated. Since the answer to this question is true the execution controller while starts executing the code between the brackets until the $x & lt; 5 evaluates false. In this case the code between the brackets will be executed 4 times, because every time the fifth line is executed $x increases by 1.
"while" - løkken
The "repeat" loop
reset
repeat
if spørgsmål [...]
repeat number {...}
"for" løkken, en tælleløkke
The "for" loop, a counting loop
for løkken er en tælleløkke, den tæller for dig. for x = 1 to 10 [print x * 7 forward 15] Hver gang koden mellem parenteserne udføres bliver x et tal større, indtil x når tallet 10. Koden mellem parenteserne udskriver x ganget med 7. Efter dette program er færdigt vil du se syv- tabellen på kanvassen.
The for loop is a counting loop, & ie; it keeps count for you. The first number sets the variable to the value in the first loop. Every loop the number is increased until the second number is reached. for $x = 1 to 10 {print $x * 7 forward 15} Every time the code between the brackets is executed the $x is increased by 1, until x reaches the value of 10. The code between the brackets prints the $x multiplied by 7. After this program finishes its execution you will see the times table of 7 on the canvas.
Tal kan bruges i matematiske beregninger og spørgsmål. De kan også placeres i containere.
for variable = number to number step number {...}
go
break
reset
break
gox
exit
if
exit
reset
exit
Lav dine egne kommandoer med learn
Create your own commands with learn
learn er en meget speciel kommando, fordi den bruges til at lave dine egne kommandoer. Kommandoen du laver kan tage inddata og give uddata tilbage. Lad os kigge på hvordan en ny kommando laves. learn circle x [repeat 36 [forward x turnleft 10]] Den nye kommando hedder circle. circle tager en inddata, et tal, til at sætte cirklens størrelse. circle giver ingen uddata. circle kommandoen kan nu bruges ligesom en normal kommando i resten af koden. Se dette eksempel:
learn is special as it is used to create your own commands. The commands you create can take input and return output. Let us take a look at how a new command is created: learn circle $x {repeat 36 {forward $x turnleft 10}} The new command is called circle. circle takes one input argument, to set the size of the circle. circle returns no output. The circle command can now be used like a normal command in the rest of the code. See this example:
learn circle X [repeat 36 [forward X turnleft 10]] go 30, 30 circle 20 go 40, 40 circle 50
learn circle $X {repeat 36 {forward $X turnleft 10}} go 200,200 circle 20 go 300,200 circle 40
I det næste eksempel vil en kommando med en returværdi blive lavet. reset learn multiplyBySelf n [r = n * 1 r = n * n return r] i = inputwindow "Indtast venligst et tal og tryk på o. k." print i + "ganget med sig selv er:" + multiplyBySelf i I dette eksempel laves en ny kommando der hedder multiplyBySelf. Inddata for denne kommando bliver ganget med sig selv og derefter returneret, ved brug af return kommandoen. return kommandoen er måden at få uddata fra en hjemmelavet funktion.
In the next example, a command with a return value is created. learn faculty $x {$r = 1 for $i = 1 to $x {$r = $r * $i} return $r} print faculty 5 In this example a new command called faculty is created. If the input of this command is 5 then the output is 5*4*3*2*1. By using return the output value is specified and the execution is returned.
Dette er en reference til & kturtle; s & logo;. I dette kapitel næver vi kort alle forskellige instruktionstyper. Derefter forklares alle kommandoer i en af gangen. Herefter følger forklaringer af beholdare, math, spørgsmål og kommandoer til at styre kørslen. Tilsidst vises hvordan du kan oprette dine egne kommandoer med learn.
This is the reference for & kturtle; 's & turtlelang;. In this chapter we first briefly touch all the different instruction types. Then the commands are explained one by one. Then containers, math, questions and execution controllers are explained. At last you are shown how to create you own commands with learn.
Forskellige instruktionstyper
Different Instruction Types
Som i alle sprog har Logo forskellige typer af ord og symboler. Her forklares kortfattet forskellen mellem typerne.
As in any language, & turtlelang; has different types of words and symbols. Here the differences between the types are briefly explained.
Ved brug af kommandoerne beder du & kturtle; om at gøre noget. Nogle kommandoer har brug for inddata, nogle giver uddata.
Using commands you tell the turtle or & kturtle; to do something. Some commands need input, some give output.
# forward er en kommando som behøver inddata, i dette tilfælde tallet 100: forward 100
# forward is a command that needs input, in this case the number 100: forward 100
Strenge fremhæves med mørkerødt i kodeditoren.
Numbers are highlighted with dark red in the code editor.
Strenge kan placeres i containere, men de kan ikke bruges i matematiske beregninger eller i spørgsmål.
Strings can be put in containers. Yet they cannot be used in mathematical calculations and questions.
Strenge fremhæves med mørkerødt i kodeditoren.
Strings are highlighted with red in the code editor.
Når du bruger programsproget & logo; laver du nye ting. Hvis du skriver et program har du ofte brug for containere og sommetider har du brug for learn for at oprette nye kommandoer. Når du laver en container eller en ny kommando med learn skal du angive et navn.
When using the & turtlelang; programming language you create new things. If you write a program you will often need containers and in some cases you need learn to create new commands. When making a new command with learn you will have to specify a name.
Du kan vælge et hvilket som helst navn, under forudsætning af at det ikke allerede har en betydning. Du kan for eksempel ikke navngive en container forward, eftersom dette navn allerede bruges til en kommando, og allerede har en betydning. # Her bruges forward som en container, men det har allerede en betydning, # altså forårsager dette et fejl: forward = 20 # Dette virker: forward 20 Navne kan kun indeholde bogstaver, tal og understregninger (_), og de skal begynde med et bogstav.
You can choose any name, as long as it does not already have a meaning. For instance you cannot name a function forward, since that name is already used for an internal command. # here forward is used as a new command, # but it already has a meaning so # this will produce an error: learn forward {print "this is invalid"} # this works: learn myforward {print "this is ok"} Names can contain only letters, numbers and underscores (_). Yet they have to start with a letter. Container names have to start with the container prefix ($).
Tal er fremhævede med blåt i kodeditoren.
Containers are highlighted with bolded purple in the code editor.
Læs gerne dokumentationen om containere og kommandoen learn for en bedre forklaring og flere eksempler.
Please read the documentation on containers and the learn command for a better explanation and more examples.
Tilknytninger udføres med tegnet =. I programmeringssprog er det bedre ikke at udtale et enkelt = som 'er lig med' men som 'bliver'. Udtrykket 'er lig med' er m ere passende for ==, som er et spørgsmål.
Assignment are done with the = symbol. In programming languages it is better to read the single = not as'equals' but as'becomes'. The word'equals' is more appropriate for the == which is a question.
Tilknytninger bruges i almindelighed af to grunde: (1) for at tilføje indhold til containere, og (2) for at ændre indholdet i en beholder. For eksempel:
Assignments are generally use for two reasons, (1) to add content containers, and (2) to modify the content of a container. For example:
x = 10 # Containeren x indeholder nu tallet 10. W = "Min alder er:" # Containeren W indeholder nu "Min alder er:". # Dette udskriver ud containerne 'W' og 'x' på kanvassen print W + x
$x = 10 # the container x now contains the number 10 $W = "My age is:" # the container W now contains the string "My age is:" # this prints the content of the containers'W 'and'x' on the canvas print $W + $x
For flere eksempler, se afsnittet om containere.
For more examples see the section that explains containers.
Matematiske symboler
Math Symbols
For en fuldstændig forklaring og flere eksempler, se afsnittet om matematiske beregninger.
For a complete explanation and more examples see the math section.
Vi kan stille enkle spørgsmål hvor svaret er 'sand' eller 'falsk'.
We can ask simple questions on which the answer will be'true 'or'false'.
At bruge spørgsmål beskrives udførligt i afsnittet om spørgsmål.
Using questions is extensively explained in the questions section.
Spørgsmål klister- ord
Question Glue-Words
Spørgsmål kan klistres sammen med såkaldte 'klisterord'. Klisterordene er og, eller, og det specielle klisterord ikke.
Questions can be glued together with so called'question glue '. The glue words are and, or, and a special glue-word: not.
Brug af klisterord i spørgsmål forklares i afsnittet om klisterord i spørgsmål.
Using question-glue is explained in the Question Glue section.
Kommentarer er linjer som begynder med tegnet #. For eksempel: # Dette er en kommentar! print "Dette er ikke en kommentar" # Foregående linje er ikke en kommentar, men den næste linje er det: # print "Dette er ikke en kommentar" Vi kan tilføje kommentarer til koden, som vi selv og andre kan læse. Kommentarer bruges for at: (1) tilføje en kort beskrivelse af programmet, (2) forklare hvordan et kodeafsnit virker hvis det er svært at forstå, og (3) til at 'kommentere væk' kodelinjer som (midlertidigt) skal ignoreres (se sidste linje i eksemplet).
Comments are lines that start with a #. For example: # this is a comment! print "this is not a comment" # the previous line is not a comment, but the next line is: # print "this is not a comment" We can add comments to the code for ourselves or for someone else to read. Comments are used for: (1) adding a small description to the program, (2) explaining how a piece of code works if it is a bit cryptic, and (3) to'comment-out 'lines of code that should be (temporarily) ignored (see the last line of the example).
En kommando der ruller en terning for dig
A command that rolls dice for you
Der er en kommando som ruller terninger for dig. Den kaldes random, og er meget nyttig til at få uforudsete resultater.
There is one command that rolls dice for you, it is called random, and it is very useful for some unexpected results.
Containere er bogstaver eller ord der kan bruges af programmører til at opbevare et tal eller en tekst. Containere der indeholder et tal kaldes variabler, containere der indeholder tekst kaldes streng.
Containers are letters or words that can be used by the programmer to store a number or a text. Containers that contain a number are called variables, containers that can contain text are called string. Containers can be identified by the container character $that precedes their usage.
Lad os starte med et eksempel: x = 3 print x I den første linje gøres bogstavet x til en variable (tal- container). Som du ser bliver værdien af den variable x sat til 3. På den anden linje bliver værdien udskrevet.
Let us start with an example: $x = 3 print $x In the first line the letter x is made into a variable (number container). As you see the value of the variable x is set to 3. On the second line the value is printed.
Containere som indeholder tekst (strenge)
Containers that contain text (strings)
I programkode indledes og afsluttes almindelig tekst med citationstegn. Som vi allerede har set: skriv "Hej, programmør!" Den almindelige tekst afgrænses af citationstegn. Denne almindelige tekst kalder vi en streng.
In programming code the regular text is usually started and ended with quotes. As we have already seen: print "Hello programmer!" The regular is delimited with quotes. These pieces of regular text we call strings.
Strenge kan også opbevares i containere ligesom tal Strenge er meget ligesom variabler. Den største forskel er at de indeholder tekst i stedet for tal. Derfor kan strenge ikke bruges i matematiske beregninger og spørgsmål. Et eksempel på brugen af strenge: x = "Goddag" name = inputwindow "indtast venligst dit navn..." print x + name + ", hvordan går det?" I den første linje sættes strengen x til Goddag. I den anden linje sættes strengen name til uddata fra inputwindow kommandoen. På den tredje linje udskriver programmet en komposition af tre strenge på kanvassen.
Strings can also be stored in containers just like numbers Strings are a lot like variables. The biggest difference is that they contain text in stead of numbers. For this reason strings cannot be used in mathematical calculations and questions. An example of the use of strings: $x = "Hello" $name = ask "Please enter your name..." print $x + $name + ", how are you?" On the first line the string x is set to Hello. On the second line the string name is set to the output of the ask command. On the third line the program prints a composition of three strings on the canvas.
Kan skildpadden lave matematik?
Can the Turtle do math?
Ja, & kturtle; kanlave matematik for dig. Du kan lægge sammen (+), trække fra (-), gange (*) og dividere (/). Her er et eksempel hvori vi bruger dem allesammen: a = 20 - 5 b = 15 * 2 c = 30 / 30 d = 1 + 1 print "a:" +a+ ", b:" +b+ ", c:" +c+ ", d:" +d Ved du hvilken værdi a, b, c og d har? Bemærk venligst brugen af tilknytnings symbolet =.
Yes, & kturtle; will do your math. You can add (+), subtract (-), multiply (*), and divide (/). Here is an example in which we use all of them: $a = 20 - 5 $b = 15 * 2 $c = 30 / 30 $d = 1 + 1 print "a:" +$a+ ", b:" +$b+ ", c:" +$c+ ", d:" +$d Do you know what value a, b, c and d have? Please note the use of the assignment symbol =.
& kturtle; understøtter alle grundlæggende matematiske symboler: addere (+), subtrahere (-), multiplicere (*), dividere (/) og parenteser (og).
& kturtle; has advanced mathematical features. It knows the number pi and trigonometrical functions like sin, cos, tan, arcsin, arccos, arctan and the functions sqrt and exp.
Et simpelt eksempel på et spørgsmål: x = 6 if x & gt; 5 [print hello] I dette eksempel er spørgsmålet x & gt; 5, hvis svaret på dette spørgsmål er 'sand' så vil koden mellem parenteserne blive udført. Spørgsmål er en vigtig del af programmering og bruges ofte sammen med udførselskontroller, såsom if. Alle tal og variabler (tal- containere) kan sammenlignes med hianden med spørgsmål.
A simple example of a question: $x = 6 if $x & gt; 5 {print "hello"} In this example the question is the x & gt; 5 part. If the answer to this question is'true 'the code between the brackets will be executed. Questions are an important part of programming and often used together with execution controllers, like if. All numbers and variables (number containers) can be compared to each other with questions.
ikke lig med
not-equals
Spørgsmålsklister
Question Glue
Spørgsmålenes klisterord kan få nogle spørgsmål til at blive til et stort spørgsmål. a = 1 b = 5 if a & lt; 5 and b == 5 [print goddag] I dette eksempel bliver klister- ordet and brugt til at klistre 2 spørgsmål (a & lt; 5, b == 5) sammen. Hvis en side af and vil svare 'falsk' så vil hele spørgsmålet svare 'falsk', fordimed klister- ordet and skal begge sider være 'sand' for at svare 'sand'. Glem endelig ikke parenteser rundt om spørgsmålene!
Question glue-words enable us to glue questions into one big question. $a = 1 $b = 5 if ($a & lt; $b) and ($b == 5) {print "hello"} In this example the glue-word and is used to glue 2 questions (a & lt; 5, b == 5) together. If one side of the and would answer false the whole question would answer false, because with the glue-word and both sides need to be true in order to answer true. Please do not forget to use the brackets around the questions!
Her er en skematisk oversigt, en mere detaljeret forklaring følger nedenfor:
Here is a schematic overview; a more detailed explanation follows below:
Begge sider skal være 'sande' for at svaret er 'sand'
Both sides need to be'true 'in order to answer'true'
Hvis en af siderne er 'sand' så er svaret 'sand'
If one of the sides is'true 'the answer is'true'
Når to spørgsmål klistres sammen med og skal begge sider af og være 'sande' for at resultatet skal være 'sandt'. Et eksempel: a = 1 b = 5 if ((a & lt; 10) and (b == 5)) and (a & lt; b) [print "Hej"] I dette eksempel ser du et spørgsmål klistret sammen med et andet spørgsmål.
When two questions are glued together with and, both sides of the and have to be'true 'in order to result in'true'. An example: $a = 1 $b = 5 if (($a & lt; 10) and ($b == 5)) and ($a & lt; $b) {print "hello"} In this example you see a glued question glued onto an other question.
Hvis et af de to spørgsmål som klistres sammen med eller er 'sandt' er resultatet 'sandt'. Et eksempel: a = 1 b = 5 if ((a & lt; 10) or (b == 10)) or (a == 0) [print "Hej"] I dette eksempel ser du et spørgsmål klistret sammen med et andet spørgsmål.
If one of the two questions that are glued together with or is'true 'the result will be'true'. An example: $a = 1 $b = 5 if (($a & lt; 10) or ($b == 10)) or ($a == 0) {print "hello"} In this example you see a glued question glued onto an other question.
go
not
not er et specielt klisterord i spørgsmål eftersom det kun virker med et spørgsmål af gangen. not ændrer 'sand' til 'falsk' og 'falsk' til 'sand'. Et eksempel: a = 1 b = 5 if not ((a & lt; 10) and (b == 5)) [print "Goddag"] else [print "Farvel"] I dette eksempel er det sammenklistrede spørgsmål 'sandt', men not ændrer det til 'falsk'. Altså skrives "Farvel" ud på kanvassen.
not is a special question glue-word because it only works for one question at the time. not changes'true 'into'false' and'false 'into'true'. An example: $a = 1 $b = 5 if not (($a & lt; 10) and ($b == 5)) {print "hello"} else {print "not hello; -)"} In this example the glued question is'true 'yet the not changes it to'false'. So in the end "not hello; -)" is printed on the canvas.
if spørgsmål [...] else [...]
if question {...} else {...}