Cześć,
Mam za zadanie napisać program, który liczy przeciwprostokątną, do tego mam użyć i potem porównać wielkości przy trzech typach zmiennych (int, double i decimal), kod przy int i double działa bardzo dobrze, jednak przy decimal występują problemy których nie potrafię naprawić. Wiem że przy liczbach podanych w kodzie przy decimal trzeba podać literkę "M" aby program zadziałał, jednak tutaj nie wiem w jaki sposób jej użyć.
Bardzo proszę o pomoc,
Pozdrawiam
Jumpeq
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Zad1
{
class Program
{
static void Main(string[] args)
{
int a;
int b;
int c;
int d;
Console.WriteLine("Podaj długość pierwszej przyprostokątnej: ");
a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Podaj długość drugiej przyprostokątnej: ");
b = Convert.ToInt32(Console.ReadLine());
c = a * a + b * b;
d = Convert.ToInt32(Math.Sqrt(c));
Console.WriteLine("Długość przeciwprostokątnej dla klasy typu int: {0:G17}", d);
Console.ReadKey();
double e;
double f;
double g;
double h;
Console.WriteLine("Podaj długość pierwszej przyprostokątnej: ");
e = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("Podaj długość drugiej przyprostokątnej: ");
f = Convert.ToDouble(Console.ReadLine());
g = e*e + f*f;
h = Convert.ToDouble(Math.Sqrt(g));
Console.WriteLine("Długość przeciwprostokątnej dla klasy typu double: {0:G17}", h);
Console.ReadKey();
decimal i;
decimal j;
decimal k;
decimal l;
Console.WriteLine("Podaj długość pierwszej przyprostokątnej: ");
i = Convert.ToDecimal(Console.ReadLine());
Console.WriteLine("Podaj długość drugiej przyprostokątnej: ");
j = Convert.ToDecimal(Console.ReadLine());
k = i * i + j * j;
l = Convert.ToDecimal(Math.Sqrt(k));
Console.WriteLine("Długość przeciwprostokątnej dla klasy typu decimal: {0:G17}", l);
Console.ReadKey();
}
}
}