Definering af sproget Svendsk
Svendsk er "case sensitive", hvilket betyder at der vil være forskel på, om man skriver fx Heltal eller heltal. Endvidere er Svendsk et dansk programmeringssprog, hvilket gør det lettere for folk uden programmerings-erfaring i andre sprog hurtigt at sætte sig ind i det. Det vil forekomme dem mere naturligt at skrive danske sætninger i stedet for engelske.
Da Svendsk er et mere primitivt sprog end Java, er det ikke muligt at udnytte Java fuldt ud ved udelukkende brug af Svendsk. Ydermere vil Svendsk være tæt bundet på Javas definition af bl.a. en int og en boolean. Hvis Java-sproget ændrer denne definition, vil det umiddelbart også medføre, at Svendsks definition af disse typer vil ændre sig.
Simple datatyper
Svendsk har følgende simple datatyper. De er sat op mod Javas modstykker, så det er nemmere at se lighederne/forskellene mellem disse. Læg mærke til, at variablernes størrelse udelukkende er afhængig af Java. Hvis Java fx ændrer specifikationer for int, vil det medvirke at specifikationerne for det Svendske heltal også ændres.
Typer kendt fra Java |
Svendsk modstykke |
Størrelse |
boolean |
boolsk |
sand eller falsk |
int |
heltal |
32-bit 2-komplimentær (dvs +/-) |
String |
streng |
- |
Type |
Indeholder |
Init. værdi |
Størrelse |
Min. værdi |
Max. værdi |
boolsk |
sandt/falsk |
falsk |
1 bit |
- |
- |
heltal |
et 2-komp. tal |
0 |
32 bits |
-2147483648 |
2147483647 |
streng |
ASCII tegn |
"" |
- |
- |
- |
Typebeskrivelse
Typen boolsk
Typen boolsk kan have to værdier: sand eller falsk. Når typen erklæres, får den automatisk tildelt værdien falsk.
Typen heltal
Denne type har en størrelse på 32 bits, dvs. den kan indeholde tal i intervallet -2147483648 til 2147483647. Man kan altså ikke tildele fx en tekststreng til denne type.
Typen streng
Typen streng kan indeholde et vilkårligt antal af karakterer, men de skal være omgivet af anførelses tegn.
Eksempel
s.streng()
s = "Svendsk"
s = "C U L8R"
Escape-sekvenser
Svendsk |
Java |
Betydning |
nylinie() |
\n |
indsætter ny linie |
tabulator() |
\t |
indsætter tabulator (indrykning) |
Regne-operatorer
Regne-operatorerne bruges på samme måde som de bruges i Java.
Nedenstående tabel viser Svendsks regne operatorer
Operator |
Brug |
Beskrivelse |
+ |
op1 + op2 |
Lægger op1 og op2 sammen |
- |
op1 - op2 |
Trækker op2 fra op1 |
* |
op1 * op2 |
Ganger op1 med op2 |
/ |
op1 / op2 |
Dividerer op1 med op2 |
Sammenlignings-operatorer
Sammenlignings operatorerne er næsten de samme som i Java, dog med en væsentlig forskel ved lig med og forskellig fra sammenligningen.
I Svendsk bruges lig med (=) både som sammenlignings- og tildelings-operator.
Nedenfor viser en tabel over Svendsk sammenlignings-operatorer
Operator |
Brug |
Beskrivelse |
> |
op1 > op2 |
op1 er større end op2 |
>= |
op1 >= op2 |
op1 er større end eller lig med op2 |
< |
op1 < op2 |
op1 er mindre end op2 |
<= |
op1 <= op2 |
op1 er mindre end eller lig med op2 |
= |
op1 = op2 |
op1 og op2 er lig |
-= |
op1 -= op2 |
op1 og op2 er forskellig |
Tildelings-operatoren
Sproget Svendsk har kun én tildelings-operator (i modsætning til Javas > 10).
Operator |
Brug |
Beskrivelse |
= |
op1 = op2 |
op1 bliver sat lig med op2 |
Eksempler på syntaks i Svendsk
I det følgende er der nogle eksempler på Svendsks syntaks. Ved hvert eksempel har vi skrevet den tilsvarende kode i Java, for at tydeliggøre ligheder og forskelle i sprogene.
Eksempel 5-1: Løkker
En væsentlig fordel ved dataordbogen er, den naturlige måde hvorpå man laver løkker. Dette gøres ved brug af { og } også kaldet tuborg-start og tuborg-slut.
"Udfør en del kode 10 gange", kunne fx skrives på følgende måde. Læg mærke til, at ITERATION er en variabel der oprettes automatisk når man går ind i en løkke. I nedenstående eksempel, vil ITERATION få en initialiseringsværdi = 0.
Svendsk
0{ skriv("Jeg er tal nummer: "[ITERATION]) }9
Java
for (int i=0; i<10; i++)
System.out.print("Jeg er tal nummer ", Integer.toString(i));
Eksempel 5-2: Deklarering af variabler
Deklareringen af variabler i Svendsk sker på en noget objekt-orienteret form, fx. erklæringen af et heltal (en int i Java) i ser således ud:
Svendsk
i.heltal()
Java
int i;
Eksempel 5-3: Tildeling af tal til en variabel
Denne er lige ud af landevejen, da der som sagt kun findes én tildelings-operator i Svendsk:
Svendsk
i = 7
Java
i = 7;
Eksempel 5-4: hvis...ellers sætningen
For at kunne vælge mellem forskellige statements i Svendsk, kan man bruge hvis...ellers sætningen:
Svendsk
hvis (i < 7)
skriv("i er ikke så stort")
ellers
skriv("i er 7 eller derover")
Java
if (i < 7)
System.out.println("i er ikke så stort");
else
System.out.println("i er 7 eller derover);
Reserverede ord
Svendsk indeholder en række reserverede ord og det er derfor forbudt at bruge disse ord i fx en variabel-erklæring.
afbryd
boolsk
ellers
falsk
heltal
hvis
ITERATION
laes
loopX // X er et tal >= 0
nylinie
sand
skriv
streng
SVENDSK
tabulator
Det er vigtigt, at alle disse reserverede ord skrives som ovenstående da Svendsk som
allerede nævnt tidligere kender forskel på store og små bogstaver. De reserverede ord vil senere blive beskrevet i detaljer.