Skip to content

Labbar med C#

För att öva sig i att programmera i C# och lösa uppgifter.

Image description
  • lab1; Datatyper, villkor och loopar med enkla beräkningar
  • lab2; Array, List och filer
  • lab3; Klasser och objekt

Du har jobbat igenom kmom01-03.

Gå till den katalog du vill jobba i, till exempel kmom04. Du behöver skapa ett nytt konsolprogram för varje lab och hämta filerna till respektive projekt.

Skapa programmet lab1
dotnet new console -n lab1
Flytta till katalogen lab1
cd lab1
Verifiera att du kan köra lab1
dotnet run
// ger utskriften Hello, World!

Vi skall hämta ett par filer som behövs för att utföra labben. Kör följande kommando:

Ladda ner filerna lab1
task download-lab -- lab1

Task-kommandot förutsätter att du har gjort ovanstående punkter. När du är klar kan det se ut så här.

Filerna i katalogen lab1
$ tree -L 1
.
├── Lab.cs
├── Module.cs
├── Program.cs
├── lab1.csproj

Nu kan du öppna din VS Code utifrån denna katalogen.

Terminal window
code .

Kika i de filerna som finns i labben och försök förstå hur de hänger ihop.

Börja med att köra labben med dotnet run. Det som körs är main-programmet i Program.cs.

Terminal window
$ dotnet run
Hello(), expected: "Hello World!" (String), actual: "" (String)
...

Du kan titta på filen Program.cs via VS Code och se vad som körs.

I filen Module.cs finns alla övningsuppgifter som du skall göra. Det är en metod för varje uppgift och du skall implementera koden inuti metoden så att den returnerar rätt resultat.

I modulen Lab.cs finns kod som verifierar att rätt saker returneras från dina metoder i Module.cs.

I den första övningsuppgiften skall du implementera följande metod.

/**
* Return the string "Hello World!".
*/
public static string Hello()
{
// TODO: Write your code here.
return "";
}

När du är klar med din implementation kör du programmet igen och ser om du får grönt vilket innebär att du gjort rätt.

Terminal window
$ dotnet run
Hello(), expected: "Hello World!" (String), actual: "Hello World!" (String)

Klicka på “Lösningsförslag” nedan för att se hur det kan se ut när du implementerat den första metoden.

Lösningsförslag
/**
* Return the string "Hello World!".
*/
public static string Hello()
{
// TODO: Write your code here.
return "Hello World!";
}

Denna labb har en lösningsfil som du kan ladda ned och studera. Observera att det ibland finns flera olika lösningar till en metod.

Använd lösningen om du fastnar och inte lyckas ta dig vidare, eller som en studiehjälp för att jämföra dina egna lösningar med lösningar som någon annan har skrivit.

Hämta lösningsförslag (Bash)
Ladda en lösning på lab1
task download-lab-solution -- lab1

Skapa projektet lab2 på samma sätt som lab1.

Hämta labben
Ladda ner filerna lab2
task download-lab -- lab2
Hämta lösningsförslag
Ladda en lösning på lab2
task download-lab-solution -- lab2

Skapa projektet lab3 på samma sätt som lab1.

Hämta labben
Ladda ner filerna lab3
task download-lab -- lab3
Hämta lösningsförslag
Ladda en lösning på lab3
task download-lab-solution -- lab3

Då har du repeterat och tränat mer på C#. Bra jobbat!