RekenMachine C#
dit was mijn eerste C# project, het is een simpele rekenmachine.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Project_Rekenmachine_
{
internal class Program
{
private static float memory = 0;
static void Main(string[] args)
{
while (true)
{
Console.WriteLine("typ help als je er niet uit komt");
string invoer = Console.ReadLine();
if (invoer.ToLower() == "exit")
break;
string[] parts;
if (invoer.ToLower() == "mr")
{
Console.WriteLine($"Memory: {memory}");
}
else if (invoer.ToLower() == "mr+")
{
Console.WriteLine("Enter the value to add to memory:");
if (float.TryParse(Console.ReadLine(), out float addToMemory)) // tryparse verranderd een string naar iets anders zoals een float of een int
{
memory += addToMemory; // voegd het aantal toe aan de memory
Console.WriteLine($"Memory increased by {addToMemory}");
}
else
{
Console.WriteLine("Invalid input");
}
}
else if (invoer.ToLower() == "mr-")
{
Console.WriteLine("Enter the value to subtract from memory:");
if (float.TryParse(Console.ReadLine(), out float subtractFromMemory))
{
memory -= subtractFromMemory;
Console.WriteLine($"Memory decreased by {subtractFromMemory}");
}
else
{
Console.WriteLine("Invalid input");
}
}
else if (invoer.ToLower() == "mrc")
{
memory = 0;
Console.WriteLine("Memory cleared");
}
if (invoer.Contains("+"))
{
parts = invoer.Split('+');
if (parts.Length == 2)
{
if (float.TryParse(parts[0], out float getal1) && float.TryParse(parts[1], out float getal2))
{
float result = getal1 + getal2;
Console.WriteLine($"Result: {result}");
}
else
{
Console.WriteLine("Invalid input");
}
}
}
else if (invoer.Contains("-"))
{
parts = invoer.Split('-');
if (parts.Length == 2)
{
if (float.TryParse(parts[0], out float getal1) && float.TryParse(parts[1], out float getal2))
{
float result = getal1 - getal2;
Console.WriteLine($"Result: {result}");
}
else
{
Console.WriteLine("Invalid input");
}
}
}
else if (invoer.Contains("x"))
{
parts = invoer.Split('x');
if (parts.Length == 2)
{
if (float.TryParse(parts[0], out float getal1) && float.TryParse(parts[1], out float getal2))
{
float result = getal1 * getal2;
Console.WriteLine($"Result: {result}");
}
else
{
Console.WriteLine("Invalid input");
}
}
}
else if (invoer.Contains(":"))
{
parts = invoer.Split(':');
if (parts.Length == 2)
{
if (float.TryParse(parts[0], out float getal1) && float.TryParse(parts[1], out float getal2))
{
float result = getal1 / getal2;
Console.WriteLine($"Result: {result}");
}
else
{
Console.WriteLine("Invalid input");
}
}
}
else if (invoer.Contains("%"))
{
parts = invoer.Split('%');
if (parts.Length == 2)
{
if (float.TryParse(parts[0], out float getal) && float.TryParse(parts[1], out float percentage))
{
float result = getal * (percentage / 100);
Console.WriteLine($"Result: {result}");
}
else
{
Console.WriteLine("Invalid input");
}
}
}
else if (invoer.Contains("w"))
{
parts = invoer.Split(new[] { "w" }, StringSplitOptions.RemoveEmptyEntries); // .RemoveEmptyEntries verwijderd lege elementen uit een array
if (parts.Length == 1)
{
if (float.TryParse(parts[0], out float getal))
{
double result = Math.Sqrt(getal); //sqrt staat voor Square root (wortel) en double kan ik gebruiken voor voor berekeningen waar iets precies moet zijn
Console.WriteLine($"Result: {result}");
}
else
{
Console.WriteLine("Invalid input");
}
}
}
else if (invoer.Contains("help"))
Console.WriteLine("COMMANDS\nmr+(aantal opslaan in memory)\nmr(laat het aantal zien dat is opgeslagen in de memory)\nmrc(clear de memory)\nmr-(verwijder een aantal uit de memory)\nwortels bereken je door een 'w' er achter te zetten.");
else
{
Console.WriteLine("Invalid input");
}
}
}
}
}