====== For-løkker i C# ======
Nedenfor finder du opgaver, som kræver brug af for-løkker samt if-else og/eller switch-case strukturer i C#. Hver opgave inkluderer et eksempel på forventet output, så du kan sammenligne dit resultat.
===== Opgave 1: Multiplikationsquiz =====
Skriv et program, der tester brugeren i multiplikationstabellen. Programmet skal generere 10 tilfældige opgaver, hvor brugeren skal svare på resultaterne. Brug en for-løkke til at generere opgaverne og if-else
til at kontrollere brugerens svar.
**//Obs://** Du kan bruge Random klassen til at generere et tilfældigt tal.
Random rnd = new Random();
int tal = rnd.Next(1, 11); // tilfældigt tal fra og med 1 og til 11.
**Forventet output:**
Hvad er 7 * 3?
21
Korrekt!
Hvad er 4 * 8?
30
Forkert! Det rigtige svar er 32.
...
Du svarede korrekt på 7 ud af 10 opgaver.
----
===== Opgave 2: Kasseapparat med rabatberegning =====
Skriv et program, der beregner den samlede pris af flere varer og anvender en rabat baseret på den samlede pris.\\ Brugeren indtaster prisen for hver vare, og programmet skal bruge en for-løkke til at summere prisen. Brug if-else til at bestemme rabatten baseret på den samlede pris.
**Forventet output:**
Indtast antal varer: 3
Indtast pris for vare 1: 400
Indtast pris for vare 2: 300
Indtast pris for vare 3: 350
Samlet pris før rabat: 1050,00 kr.
Rabat: 105,00 kr.
Pris efter rabat: 945,00 kr.
Her er en opgave i C#, der handler om beregning af et annuitetslån. Opgaven giver eleverne mulighed for at skrive et program, der beregner de månedlige ydelser på et lån og udskriver en oversigt over hver termin.
----
===== Opgave 3: Beregning af annuitetslån i C# =====
Skriv et program i C#, der beregner de månedlige ydelser (terminer) på et annuitetslån. Programmet skal bede brugeren om at indtaste lånebeløbet, den årlige rente, løbetiden (antal år) samt antal terminer pr. år. Programmet skal derefter udskrive en betalingsplan, hvor hver termin viser den betalte ydelse, renteudgiften, afdraget og restgælden.
Ydelsen beregnes som :
$$ y=G \frac{r}{1-(1+r)^{-n}} $$
==== Forventet input: ====
* Lånebeløb (f.eks. 200000 kr.)
* Årlig rente (f.eks. 5%)
* Løbetid i år (f.eks. 20 år)
* Antal terminer pr. år (f.eks. 12, hvis månedlige betalinger)
==== Forventet output: ====
Programmet skal udskrive en tabel med følgende oplysninger for hver termin:
* Termin nummer
* Ydelse
* Renteudgift
* Afdrag
* Restgæld
Hvis brugeren f.eks. indtaster følgende værdier:
* Lånebeløb: 200000 kr.
* Årlig rente: 5%
* Løbetid: 20 år
* Antal terminer pr. år: 12
Skal programmet udskrive noget i stil med:
Termin Ydelse Rente Afdrag Restgæld
1 1319.91 833.33 486.58 199513.42
2 1319.91 831.30 488.61 199024.81
3 1319.91 829.27 490.64 198534.17
...
240 1319.91 5.49 1314.42 0.00
**Bemærk:**
* `Ydelse` er den faste månedlige betaling.
* `Rente` er den rente, der betales for den resterende gæld.
* `Afdrag` er den del af ydelsen, der går til at reducere lånet.
* `Restgæld` er det resterende beløb efter hver betaling.
Test programmet med forskellige inputværdier for at se, hvordan betalingsplanen ændrer sig.\\
Hold din løsning op mod : https://www.bankinfo.dk/Amortisation.asp , får du samme resultat ?