N105 Brug af simple tal
Opret en ny tom konsolapplikation og sørg for følgende:
- Erklær en variabel heltal som et 32-bit heltal og initialiser den til 10.
- Brug
++
operatoren til at lægge 1 til variablen - udskriv værdien - Brug
--
operatoren til at trække 1 fra - udskriv værdien - Brug
+=
til at lægge 20 til - udskriv værdien - Erklær en variabel kommatal som en
double
og initialiser den til 12,5. - Brug
++
operatoren til at lægge 1 til variablen - udskriv værdien - Brug
--
operatoren til at trække 1 fra - udskriv værdien - Brug
*=
til at gange med 2 - udskriv værdien
Brug debugger’en så meget som muligt.
Få det til at virke og gå så evt videre til næste opgave.
Avanceret (kun hvis du har lyst)
Her er nogle mere avancerede opgaver:
- Erklær en variabel som en
byte
og initialiser den til 255.- Brug
--
operatoren til at trække 1 fra - udskriv værdien - Brug
%
(modulus) operatoren til at få resten af divisionen med 10 - udskriv værdien - Bonus: Forsøg at lægge 1 (brug ++) til en
byte
variabel som er initialiseret til 255, og bemærk at den vil lave et overflow (runder tilbage til 0). Dette sker, fordibyte
kun kan indeholde værdier mellem 0 og 255.
- Brug
- Erklær en variabel som en
long
og initialiser den til 1.000.000.- Brug
+=
til at lægge 500.000 til - udskriv værdien - Brug
/=
til at dividere med 2 - udskriv værdien
- Brug
- Erklær en variabel som en
decimal
og initialiser den til 1000,75.- Brug
+=
til at lægge 0,25 til - udskriv værdien - Brug
*=
til at gange med 1,5 - udskriv værdien - Brug
/=
til at dividere med 3 - udskriv værdien
- Brug
- Lav et eksempel på floating point-fejl:
- Erklær to variabler, en som
double
og en somdecimal
, og læg 0,1 til dem 10 gange manuelt. Flydende punkt-aritmetik idouble
kan føre til små unøjagtigheder på grund af repræsentationen af tal i hukommelsen. - Hvis du skal tilføje et kommatal til en
decimal
variabel, skal du brugeM
suffikset for at fortælle kompilatoren, at det er endecimal
værdi. F.eks.0.1M
.
- Erklær to variabler, en som
Brug debugger’en så meget som muligt.
Tip
Hvis du er i tvivl om hvordan du skaber en konsolapplikation så følg:
- Denne guide hvis du arbejder i Visual Studio Code
- Denne guide hvis du arbejder i Visual Studio
Klik for at se et forslag til en løsning
// Sørg for at vi bruger danske tal
System.Threading.Thread.CurrentThread.CurrentCulture = new CultureInfo("da-DK");
// Simpelt eksempel
int heltal = 10;
heltal++;
heltal--;
heltal += 20;
Console.WriteLine("Heltal: " + heltal);
double kommatal = 12.5;
kommatal++;
kommatal--;
kommatal *= 2;
Console.WriteLine("Kommatal: " + kommatal);
// Avanceret eksempel
byte byteTal = 255;
byteTal--;
Console.WriteLine("Byte efter --: " + byteTal);
byteTal %= 10;
Console.WriteLine("Byte efter % 10: " + byteTal);
byteTal = 255;
byteTal++;
Console.WriteLine("Byte efter ++: " + byteTal); // Dette vil give overflow
long langtTal = 1000000;
langtTal += 500000;
Console.WriteLine("Long efter += 500000: " + langtTal);
langtTal /= 2;
Console.WriteLine("Long efter /= 2: " + langtTal);
decimal decimalTal = 1000.75M;
decimalTal += 0.25M;
Console.WriteLine("Decimal efter += 0.25: " + decimalTal);
decimalTal *= 1.5M;
Console.WriteLine("Decimal efter *= 1.5: " + decimalTal);
decimalTal /= 3;
Console.WriteLine("Decimal efter /= 3: " + decimalTal);
// Floating point fejl
double doubleSum = 0.1;
doubleSum += 0.1;
doubleSum += 0.1;
doubleSum += 0.1;
doubleSum += 0.1;
doubleSum += 0.1;
doubleSum += 0.1;
doubleSum += 0.1;
doubleSum += 0.1;
doubleSum += 0.1;
Console.WriteLine("Double resultat af 0.1 * 10: " + doubleSum);
decimal decimalSum = 0.1M;
decimalSum += 0.1M;
decimalSum += 0.1M;
decimalSum += 0.1M;
decimalSum += 0.1M;
decimalSum += 0.1M;
decimalSum += 0.1M;
decimalSum += 0.1M;
decimalSum += 0.1M;
decimalSum += 0.1M;
Console.WriteLine("Decimal resultat af 0.1 * 10: " + decimalSum);