C# Snabbreferens
  • C# snabbreferens
  • Lathund: Skapa projekt
  • Lathund: koda i konsolen
  • Lathund: koda i WPF
  • Kompilering och publicering
  • Externa resurser
  • Grundläggande
    • Datatyper […]
      • String
      • Tuples
      • Enum
    • Fel
    • Typkonvertering
    • Operatorer
    • Boolska satser
    • Konsolen (Console)
    • If-satser
    • Loopar
    • Listor och arrayer
    • Slump (Random)
    • Strings
    • Metoder
    • Använda bibliotek (using)
    • Delegates, events och lambdas
    • Matematik (Math)
    • Vektorer (Numerics)
    • Datum och tid
    • Try-catch och Exception
    • Namngivning
    • Begrepp
    • Reference vs value types
    • Projektstruktur
    • Dotnet i terminalen
  • Filhantering
    • Filsökvägar
    • Läsa och skriva
    • Filer och mappar
    • Open, close, using
    • Serialisering […]
      • JSON-serialisering
      • XML-serialisering
    • Resursfiler
    • Filformat
      • JSON
  • Klasser och objektorientering
    • Översikt objektorientering
    • Lathund för klassdesign
    • Klasser och instanser
    • Struct
    • Public, private och protected
    • Klassdiagram
    • Klassmetoder
    • Konstruktorer
    • Arv
    • Komposition
    • Inkapsling och properties
    • Static
    • Polymorfism […]
      • Virtual, override
    • Generiska klasser
    • Abstract
    • Interface
    • Attribut
  • Annat
    • RayLib […]
      • Raylib setup
      • Fönster i Raylib
      • Grundläggande grafik
      • Geometriska former
      • Bilder och texturer
        • Texture
        • Image
      • Input
      • Text
      • Rectangle
      • Kollisioner
      • Kamera
      • Ljud
      • Raylib-CSharp*
    • MonoGame […]
      • Monogame-projekt*
      • MCGB Editor*
      • Input*
      • Grafik*
      • Kollisioner
      • Ljud*
    • Nätverk och internet […]
      • CRUD, HTTP och REST
      • URL:er och REST
      • RESTful client*
      • Thunder
      • RESTful server (Minimal API)
        • Swagger och OpenAPI
      • RESTful server (Web API) […]
        • Controllers
        • Models/dataklasser
        • Tester med RESTer
    • Linq
      • Linq-metoder
      • Linq-queries
    • Databaser
      • SQLite-kommandon
      • SQLite och VSCode
      • C# och SQLite
      • Entity Framework Core
    • Threading
      • Thread
      • Task
    • Pseudokod och diagram
    • Windows UI
      • WPF
      • XAML*
      • WinUI*
  • Mjukvara
    • Dotnet SDK
    • Visual Studio Code […]
      • Extensions
      • Inställningar
      • Debugging
      • Snabbkommandon
      • Snippets
      • Felsökning
    • Git & GitHub […]
      • Git-begrepp
    • Andra verktyg
  • Tekniker
    • Begränsa input
    • Game states
    • Gå igenom en array (eller lista)
    • Länkade listor och andra strukturer
    • Ta bort saker ur listan man går igenom
    • 2D-spelbräden
    • Timers
  • CONTRIBUTING
Powered by GitBook
On this page
  • Pseudokod
  • Mer formell pseudokod
  • Flödesscheman / aktivitetsdiagram

Was this helpful?

  1. Annat

Pseudokod och diagram

Pseudokod

"Pseudo-" beskriver något som ser ut som, men inte riktigt är, något annat – pseudovetenskap är inte vetenskap, men ser ofta ut som vetenskap.

Pseudokod är text som ser ut som kod, och beskriver logik, men som inte är körbar kod. Det finns inga regler för hur pseudokod ska skrivas, utan det är mer ett sätt att planera sin kod innan man skriver den – utan att behöva komma ihåg syntax eller bry sig om exakt hur språket fungerar.

Ett exempel:

Slumpa ett tal.

Läs in en siffra

Kolla om siffran är lägre än talet

Säg att spelaren måste gissa högre

Kolla om siffran är högre än talet

Säg att spelaren måste gissa högre

Kolla om siffran är exakt rätt

Gratulera spelaren

Om den inte är rätt, läs in en ny siffra

Ingenstans finns några if-satser eller några WriteLines, men det är ändå tydligt att det är en algoritm – och att den skulle kunna skrivas, med lite modifikationer, i C# eller valfritt annat programmeringsspråk.

Mer formell pseudokod

Det finns de som vill ha mer formaliserad pseudokod. Man lägger sig då närmare "riktig" kod.

WHILE tal ≠ siffra

tal = slump()

INPUT siffra

IF siffra < tal THEN

OUTPUT "Du måste gissa högre!

ELSE IF siffra > tal THEN

OUTPUT "Du måste gissa lägre!"

ELSE

OUTPUT "Grattis!

Flödesscheman / aktivitetsdiagram

Flödesscheman är ett mer grafiskt sätt att anteckna inför kodning.

Aktiviteter – Saker som utförs – ritas normalt ut som rektanglar

Beslut – punkter där programmet ska göra ett val mellan två (eller flera) alternativ – ritas ut som romber

Pilar visar hur flödet går.

PreviousTaskNextWindows UI

Last updated 4 months ago

Was this helpful?

Finns det något sätt att förbättra algoritmen ovan?