Cześć,
Uczę się c# i zastanawiam się dlaczego gdy wyniki równania kwadratowego są zmiennoprzecinkowe to przed przecinkiem 0 (zero) nie jest wyświetlane. Jak zrobić aby jednak cała liczba została wyświetlona i miała format np.: 0,23? Poniżej kod programu:
using System;
using static System.Math;
namespace Quadratic_equation
{
internal class Program
{
static void Main(string[] args)
{
Console.WriteLine("Program oblicza równanie kwadratowe ax2+bx+c = 0.");
double a, b, c, delta, x1, x2;
try
{
Console.WriteLine("Podaj współczynnik a: ");
a = double.Parse(Console.ReadLine());
Console.WriteLine("Podaj współczynnik b: ");
b = double.Parse(Console.ReadLine());
Console.WriteLine("Podaj współczynnik c :");
c = double.Parse(Console.ReadLine());
delta = b * b - 4 * a * c;
if(delta == 0)
{
Console.WriteLine("Równanie ma jedno rozwiązanie x=-b/2a.");
x1 = -b / (2 * a);
Console.WriteLine("x = {0:##.##}", x1);
}
else
{
if (delta > 0)
{
Console.WriteLine("Równanie ma dwa rozwiązania:");
x1 = (-b - Sqrt(delta)) / (2 * a);
x2 = (-b + Sqrt(delta)) / (2 * a);
Console.WriteLine("x1 = {0:##.##}", x1);
Console.WriteLine("x2 = {0:##.##}", x2);
}
else
{
Console.WriteLine("Delta < 0 - brak rozwiązania");
}
}
}
catch (Exception)
{
Console.WriteLine("Wprowadzono błędne dane."); ;
}
}
}
}
Z góry dziękuję za wyjaśnienie.