C# banksimulator
Hej på er!
Jag ber snällt om lite hjälp. Håller på med mitt program men kör fast när jag kommer till "U". Jag kan inmäta ett belopp för att sätta in, samt skriva in ett uttag. Dock vill jag att den säger åt användaren att beloppet man vill ta ut INTE får överstiga saldot. Var går det sned? Hoppas på att en av er kan hjälpa mig
Tack på förhand!
Mvh, Danique
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.CompilerServices;
using System.Runtime.Remoting.Metadata;
using System.Text;
using System.Threading.Tasks;
namespace Inlämning_2_danique
{
internal class Program
{
static void Main(string[] args)
{
decimal saldo = 0;
decimal insättningsbelopp = 0;
decimal räntesatsen = 0;
decimal år = 0;
decimal resultatet = 0;
bool running = true;
while (running)
{
Console.WriteLine("Välkommen till Bankens Självservice. Välj en av nedanstående kommando (I, U, S, R eller A: ");
Console.WriteLine("[I]nsättning");
Console.WriteLine("[U]ttag");
Console.WriteLine("[S]aldo");
Console.WriteLine("[R]äntebetalning");
Console.WriteLine("[A]vsluta");
String inmatning = Console.ReadLine();
switch (inmatning.ToLower())
{
case "i":
Console.Write("Sätt in ett belopp: ");
string belopp = Console.ReadLine();
decimal insättning = Convert.ToDecimal(belopp);
saldo += insättning;
if (insättning < 0)
{
Console.WriteLine("Du kan inte sätta in en negativ siffra, vänligen försök igen: ");
}
else
{
Console.WriteLine("Tack! Du gjorde en insättning på: " + insättning);
}
break;
case "u":
Console.Write("Ange hur mycket pengar du vill ta ut: ");
string pengar = Console.ReadLine();
decimal uttag = Convert.ToDecimal(pengar);
saldo -= uttag;
if (uttag < 0)
{
Console.WriteLine("Du kan inte ta ut mer pengar än det du har på kontot, vänligen försök igen: ");
}
else
{
Console.WriteLine("Tack! Du gjorde ett uttag på: " + uttag);
}
break;
case "s":
Console.WriteLine("Det här är ditt saldo: " + saldo);
break;
case "r":
Console.Write("Hur mycket vill du spara per år: ");
if (Decimal.TryParse(Console.ReadLine(), out insättningsbelopp)) ;
else
Console.Write("Registreringen misslyckades pga att du inte skrev en giltig siffra.");
Console.Write("Hur många år vill du spara: ");
if (Decimal.TryParse(Console.ReadLine(), out år)) ;
else
Console.Write("Registreringen misslyckades pga att du inte skrev en giltig siffra.");
Console.Write("Ange räntesatsen i procenten: ");
if (Decimal.TryParse(Console.ReadLine(), out räntesatsen)) ;
else
Console.Write("Registreringen misslyckades pga att du inte skrev en giltig siffra.");
Console.WriteLine(insättningsbelopp + " år med " + räntesatsen + "% avkastning");
for (int i = 1; i <= år; i++)
{
resultatet = resultatet + (resultatet * räntesatsen / 100) + insättningsbelopp + (insättningsbelopp * räntesatsen / 100);
Console.WriteLine("Efter " + i + " år är totalbeloppet av dina årliga insättningar samt avkastningarna: " + resultatet);
}
break;
//anslutning av programmet
case "a":
Console.Write("Tack för idag och välkomna åter!");
running = false;
break;
default: //om användaren matar in en fel kommando då får den upp dett här meddelandet:
Console.WriteLine("För in rätt kommando: ");
break;
}
}
}
}
}