Квадратно уравнение
Здравейте, съвсем начинаещ съм в програмирането. Бях приет в подготвителния курс през януари.Бих искал да поднеса моите благодарности към екипа на SoftUni за шанса, който ми даде. Преди курса прегледах и се запознах с част от лекциите от предишни курсове. Реших, че дори с минималните знания, които придобих мога да направя нещо, което ще е от полза поне според моите виждания.Опитах да създам конзолно приложение, което решава квадратни уравнения. Ще се радвам ако споделите вижданията си. Ще се радвам ако има критики(все пак така се учи). Следващата ми цел е да направя приложение, което решава интеграли.Приемам съвети ако някой от вас е правил подобно нещо. За целта обаче вероятно ще ми се наложи да придобия още знания, но няма да се откажа.
Благодаря за вниманието
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Kvadratno_uravnenie
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Уравнение от вида: ax^2+bx+c=");
Console.Write("Въведете а= ");
Double a = int.Parse(Console.ReadLine());
Console.Write("Въведете b= ");
Double b = int.Parse(Console.ReadLine());
Console.Write("Въведете c= ");
Double c = int.Parse(Console.ReadLine());
double D= b * b - 4 * a * c;
Console.WriteLine("Стойността на дискриминантата е {0}", D);
double DSquare = Math.Sqrt(D);
if (D < 0)
{
Console.WriteLine("Уравнението няма реални корени");
}
if (D == 0)
{
Console.WriteLine("Уравнението има един двукратен корен = {0}",-b/2*a);
}
if (D > 0)
{
Console.WriteLine("Уравнението има два реални корена x1= {0} i x2={1}",
(-b + DSquare) / 2 * a, (-b - DSquare) / 2 * a);
}
}
}
}
По точка 3 има място за дискусия. Math.Pow е бавен метод и особено за повдигане на квадрат е излишно и дори малко по-нечетимо.
Съгласен ... Идеята ми беше да го спомена, че съществува ... :)
Колега Иванов, благодаря за бързата реакция в отговора от твоя страна. По отношение на точка 1. ще се запозная как функционират въпросните препоръчани сайтове. Вероятно ще възникнат въпроси от моя страна по отношение на използването.По отношение на точка 2. бих вметнал, че е възможно да се дават стойности на a, b и c не цели числа. Смятам, че ограничението с цели числа при задаването на коефициентите до някаква степен ограничава и възможностите и. По отношение на точка 3. : Не знаех за Math.Pow() . Още сега ще я тествам. Благодаря ти за съветите още веднъж! :)
В такъв случай ползвай double.Parse(Console.ReadLine());
Иначе хвърля System.FormatException: ... И сега остава да тестваш с различни стойности дали работи :)
Лек и спорен ден ти желая