Sie sind auf Seite 1von 11

Her er en anden mde at forklarede C# p:

C# er en vanskelig dame at danse med! Isr hvis du ikke har prvet at


programmeret fr.
Derfor har jeg fundet noget materiale, som skulle gre det noget nemmere for
dig.
Hvis du selv har noget eller stder p noget godt, p dansk, s er jeg meget
interesseret i dette: sfm@tec.dk
Ellers god fornjelse!

Indholdsfortegnelse
C# for begyndere ................................................................................. 2
Udtryk .................................................................................................. 8
S er vi der nsten... ......................................................................... 10

Ballerup

sfm

C# Side 1

C# for begyndere
Nr vi skal skrive et program i C# skal vi have to stykker software:
1. en editor
2. en compiler

Editoren & Compileren


Til at skrive al teksten/kildekoden og gemme det som en .cpp fil skal vi bruge
en editor. En simpel editor kunne fx vre notesblok. Der skriver man bare
programmet og s gemmer man det som en .cpp fil. En anden god editor som
jeg godt kan anbefale er TextPad som kan downloades her:
http://www.textpad.com/index.html.
Men....
Den aller simpleste vej er et program hvor man bde kan skrive programmet
og compile det. Sdan et program kaldes IDE eller Integrated Development
Environment. Et IDE program jeg kan anbefale er Dev- C# som kan
downloades her: http://www.bloodshed.net/devcpp.html.
Det er ogs Dev- C#jeg vil tage udgangspunkt fra i denne artikel.

Dit frste program


I om ikke alle s i hvert fald 99.9 % af artikler/bger om C# starter man med
eksemplet "Hello World", s hvorfor ikke ogs starte med det her.
// Mit frste C# program
#include <iostream>
using namespace std;
int main ()
{
cout << "Hello World!";
return 0;
}
St dette ind i editoren og g ind i menuen Kompiler --> Kompiler og kr.

Du kan mske lige n at ane en sort boks komme op og lukke igen.


Det var dit program.
Hvis du gerne vil n at se dit program skal vi lige indstte en "pause"
// Mit frste C# program med pause
#include <iostream>
Ballerup

sfm

C# Side 2

using namespace std;


int main ()
{
cout << "Hello World!";
std::cin.get();
return 0;
}
Nu skulle du gerne f et console vindue (DOS-vindue) hvor der str
Hello World
Press any key to continue...

Lad os kigge nrmere p programmet


// Mit frste C program - dette er bare en kommentar som du til hver en tid
kan indstte i dit program. Bare lav to skrstreger (//) og skriv s din
kommentar bagefter.
#include <iostream> - alle stninger der begynder med #include fortller at
programmet skal inkludere iostream som indeholder dekarationer p C#'es
standart output bibliotek, som vi bruger i vores program (cout).
using namespace std; - dette er et namespace, og som der str i ANSI C++
standart (En standart indenfor C#, for hvordan en kode skal vre skrevet og
opstillet. Fx kan man nu skrive <iostream> i stedet for <iostream.h> (.h =
headerfile (som jeg vil komme ind p senere))) skal alle klasser, objekter og
funktioner vre defineret i std;. Istedet for at skrive using namespace std;
kunne vi ogs skrive std::cout << "hello word!";
int main() - int main() er en den funktion hvor dit program starter selvom
main funktionen er i midten af dit program er det altid her programmet starter.
Efter main kommer de to parenteser der betyder at main er en funtion, efter
alle funktioner kommer der to parenteser.
{ - her starter din funktion.
cout << "Hello World!"; - cout str for console output og udskriver til dit
standart output, som normalt er skrmen. Cout er deklereret i iostream
headerfil, s hvis vi vil bruge cout skal vi altid inkludere iostream i vores
program. Efter hver stning skal der vre et semikolon
std::cin.get(); - denne kommando srger for at programmet holder "pause"
indtil man trykker p en tast.

Ballerup

sfm

C# Side 3

return 0; - her slutter dit program. return 0; er den mest almindelige mde at
slutte programmet p. 0 er den vrdi programmet returnerer.
} - her afslutter vi funktionen main.
Vores program kunne ogs have set sdan ud:
int main () { cout << " Hello World "; system("pause"); return 0; }
Det er bare for at gre det lettere at lse, at man stiller det op p den mde.
Det er en af de smarte ting ved Dev- C# at den gr det automatisk.
En anden mde at kommentere sit program p er at bruge /* kommentar */
som her:
/* Her kan du kommentere p flere
linjer */
#include <iostream>
using namespace std;
int main ()
{

cout << "Hello World!";


std::cin.get();
return 0;

// Her kan du kommentere p en linje

Ny linje
Der er to mder at lave et linjeskrift p:
1. \n
2. endl;
\n kan benyttes sdan:
cout << "Forste linje \nAnden linje";
endl; kan benyttes sdan:

Ballerup

sfm

C# Side 4

cout << "Forste linje" << endl;


cout << "Anden linje";
En anden sjov 'escape code' er \a som giver en bip lyd.
Prv selv !

Videre i C#
I denne artikel vil jeg g lidt mere i dybden med C#. Jeg vil gennemg flg.
ting:
-

Input (cin)
Variabler
Konstanter
Udtryk
Operatorer

Cin (console input)


Cin er en kommando fra C#'es standart input/output bibliotek, lige som cout.
Den kan lse en indtastet vrdi og gemme den i en variabel (som jeg
kommer ind p senere). I dette eksempel bruger jeg cout, cin og en variabel:
#include <iostream>
using namespace std;
int main()
{
int tal;
// Her erklres en variabel son i dette tilflde er en
Integer
cout << "Indtast et tal: ";
cin >> tal;
// Her lser den det indtastede tal og gemmer den i
variablen 'tal'
cout << tal << endl; // Her udskrives variablen 'tal'
std::cin.get();
return 0;
}
Har du evt brug for at f genopfrisket alle de andre stninger som cout og
using namespace std; kan du lse min frste artikel om C# her:
http://www.eksperten.dk/artikler/762.
Lad os kigge nrmere p cin
Hvis du kigger godt p stningen "cin >> tal;", vil du lgge mrke til at >>

Ballerup

sfm

C# Side 5

er istedet for << og det er fordi cin er et input og cout er et output.

Variabler
En variabel er en mngde plads, p computerens elektroniske hukomelse
(bedre kendt som RAM eller Random Access Memory), som programmet
'reserverer' til at gemme en vrdi (fx tallet 5).
Du kan selv bestemme vrdien af en variabel ved at tildele den en vrdi. Til
det bruger du tildelingsoperatoren (=), som jeg vil komme ind p senere i
denne artikel.
Det er faktisk meget simpelt at erklre en variabel. Her er et eksempel:
int a;
a = 22;
Her erklres en variabel og den tildeles en vrdien 22.
Dette kan ogs gres i n stning:
int a = 22;
Du kan selv bestemme navnet p din variabel, med nogle f undtagelser som
disse ngle-ord i ANSI C# standart:
asm, auto, bool, break, case, catch, char, class, const, const_cast, continue,
default, delete, do, double, dynamic_cast, else, enum, explicit, extern, false,
float, for, friend, goto, if, inline, int, long, mutable, namespace, new, operator,
private, protected, public, register, reinterpret_cast, return, short, signed,
sizeof, static, static_cast, struct, switch, template, this, throw, true, try,
typedef, typeid, typename, union, unsigned, using, virtual, void, volatile,
wchar_t
- Det er heller ikke klogt at bruge I dine variabler da der ikke er alle
compilere der opfatter disse som alm. bogstaver
Der findes forskellige typer af variabler, og de kaldes Data typer. Her er de s:
Da det er lidt svrt at stte det op her p exp.dk har jeg sat dem ind her:
www.faarup.1go.dk/typer.html
Jeg har medvilje ikke skrevet hvor meget data typerne fylder da det afhnger
af den compiler du bruger, og din computer. Men det er der heldigvis rd for. I
dette eksempel vil jeg vise hvordan man finder strrelsen af en data type, ved
hjlp af funktionen sizeof() (som leveres af din compiler):

Ballerup

sfm

C# Side 6

#include <iostream>
using namespace std;

int main()
{
cout << "Storrelsen paa en double er: ";
cout << sizeof(double) << " bytes." << endl;
std::cin.get();
return 0;
}
Mit program udskrev:
Strrelsen p en double er: 8 bytes.
Dvs. at strrelsen (pladsen som variablen optager i computerens elektroniske
hukommelse (RAM)) er p 8 bytes !
- ls evt mere om bytes her:
http://computer.howstuffworks.com/bytes.htm
eller p en af de mange andre sider:
http://www.google.dk/search?hl=da&q=bits+and+bytes&btnG=Googles%C3%B8gning&meta=
- Prv evt selv at finde resten af dine vrdier p data typerne.

Konstanter
Konstanter minder meget om variabler, men der er dog den forskel at vrdien
p en konstant ikke kan ndres, efter man har erklret den. Men kan fx godt
frst give en variabel vrdien 1 og s senere i programmet ndre vrdien til
2 eller til noget helt tredje !
Nr du frst har initialiseret (erklret og tildelt en vrdi) en konstant kan
vrdien ikke ndres senere i programmet.
En konstant erklres men ngleordet const
[/div]
const
Nr du konstaterer en variabel med ngleordet const kan du ikke ndre p
vrdien mere. Den bruges sdan:
const double PI = 3.1415;
Ballerup

sfm

C# Side 7

Her kan man ogs bestemme typen af konstanten (data typen, her en double).
Der er ogs noget man kalder for opregnede konstanter men det vil jeg ikke
komme ind p i denne artikel (mske i nste ;)).

Udtryk
Et udtryk er nr man fx skriver x = a + b. Dette udtryk betyder ikke at x er lig
a + b, men at x skal tildeles vrdien af summen af a + b. Efter alle
udtryk/stninger skal der vre et semikolon (;).
Mellemrummene mellem x og = og mellem = og a osv. er noget som
compileren ignorerer, s den kan godt undlades: x=a+b.
Til alle udtryk bruger man operatorer. Operatorer er et symbol der fr
compileren til at foretage en handling som fx at lgge to tal sammen.
Her er nogle brugbare (matematiske) operatorer:
+ = plus. Lgger to tal sammen
- = minus. Trkker to tal fra hinanden
* = gange. Ganger to tal
/ = dele. Deler to tal
% = module. Finder resten af to delte tal.
Tildelingsoperatoren er =.
Tildelingsoperatoren kopierer data fra hjre til venstre side.
fx
a = 1;
her kopieres vrdien 1 som tildeles til a
! Pas p du ikke kommer til at blande den sammen med denne operator ==,
som sammenligner data fra hjre og venstre side.
Her er et lille eksempel p brug af dem begge:
if((a=b)==1)
her kopieres fra b til a
og sammenlign a med 1
...og et til lille eksempel:
a = (b == c);

Ballerup

sfm

C# Side 8

her sammenlignes b og c og resultatet gemmes i a (forudstter at a er af


typen bool).
Da operatorer er et ret stort emne vil jeg ikke komme mere ind p det i denne
artikel. Men jeg hber at du har fet fat i hvad det er.

Til sidst vil jeg angive et eksempel p hvordan man beregner arealet af en
cirkel ud fra nogle indtastede vrdier. Jeg gennemgr ogs alt det du har lrt
i denne artikel:
#include <iostream>
using namespace std;
main()
{
double r, A; // Her erklres to doubler
double pi = 3.1415; // Her defineres en konstant
cout << "Dette program beregner arealet af en cirkel" << endl;
cout << "Indtast radius i cm: ";
cin >> r; // Her lser den det indtastede tal og gemmer den i variablen
'r'
A = pi * r * r; // Her foretages en beregning (et udtryk)
cout << "Arealet af cirklen er: " << A << " cm2." << endl; // Her
udskrives resultatet
system("pause");
return 0;
}
Dette program beregner arealet af en cirkel
Indtast radius i cm: 4
Arealet af cirklen er: 50.264 cm2.

Ballerup

sfm

C# Side 9

S er vi der nsten...
Det du lige nu har brug for er en compiler, den som overstter din kode til
maskin kode. Du kan downloade den jeg bruger her:
http://www.codeblocks.org/downloads
Nr du har downloadet setupfilen kan du prve at kigge p denne youtube
video som vil vise dig hvordan du installerer og opretter et nyt projekt i
CodeBlocks programmet:
http://www.youtube.com/watch?v=RqFun4C1ABo

using
using
using
using

System;
System.Collections.Generic;
System.Linq;
System.Text;

namespace Stephen_1.Opgave
{
class Program
{
static void Main(string[] args)
{
Console.Write("Hello Wold");
}
}
}
Samt
using
using
using
using

System;
System.Collections.Generic;
System.Linq;
System.Text;

namespace Stephen_2.Opgave
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello Wold"); //Har skrevet
WriteLine sledes cousernen kommer p ny linie
Console.ReadKey(); //Bruges sledes at de som bliver
sendt ind i programmet ogs str p skrmen
Ballerup

sfm

C# Side 10

}
}
}
Nu kan du selv eksperimentere med koden og ndre Hello World teksten til
noget andet. DU kan prve at lave lkker s den skriver det flere gange:
#include <iostream>
using namespace std;
int main()
{
for(int i = 0;i<5;i++)
{
cout << "Hello world!" << endl;
}
return 0;
}
Du kan lave variabler og udskrive dem:
#include <iostream>
using namespace std;
int main()
{
string hej = "Hej med dig";
cout << hej << endl;
return 0;
}

Ballerup

sfm

C# Side 11

Das könnte Ihnen auch gefallen