Giải phương trình bậc 2 window Form

Bài 3 Lập trình windows form căn bản với c#, Giải phương trình bậc 1 và phương trình bậc 2. Với các yêu cầu: + Sử dụng radio button để cho phép người dùng lựa chọn phương trình cần giải. + Khi chọn PT bậc 1 thì khung nhập c bị mờ đi + Khi chọn PT bậc 2 thì hiện đầy đủ khung nhập

+ Khi click button Giải sẽ hiện ra kết quả

audio NCS 00:00 Tobu – Colors 04:40 David Bulla – Unexpected 09:40 Tobu – Seven 13:30 Morley & Speo – Hope 17:05 Itro & Tobu – Cloud 9 21:42 Ahrix – Nova 26:23 Itro – Panda 30:11 Lensko – Lets Go

33:37 Disfigure – Blank

Follow NCS

▼ DISCLAIMER : ➤ If you have problems about copyright or label, please contact me via email or YT inbox. Thank you 🙂

Nguồn: https://ibusiness.vn

Xem thêm bài viết khác: https://ibusiness.vn/cong-nghe/


Xem thêm Bài Viết:

Viết chương trình giải phương trình bậc hai:  Ax2 + Bx +C = 0

Yêu cầu: Viết chương trình với mỗi trường hợp sử dụng IF – ELSESWITCH CA

Mục tiêu

Làm quen với Cấu trúc rẽ nhánh if – else Cấu trúc rẽ nhánh Switch case.

Hướng dẫn

Bài tập mang tính tham khảo, hỗ trợ các bạn làm quen và luyện tập với các bàn toán lập trình từ cơ bản đến nâng cao trong C#. 

Để đảm bảo kiến thức về bài tập này, bạn nên xem qua bài: 

Bài tập sẽ được hướng dẫn chi tiết qua các Live Stream tương tác hằng ngày tại Channel

Youtube.com/Kteam

Kteam khuyến khích các bạn tự phân tích đề bài > tự giải bài toán > debug để kiểm tra kết quả và fix lỗi trong quá trình giải. Sau đó, bạn có thể tham khảo source code mẫu hoặc video hướng dẫn để hoàn chỉnh bài tập. 

Để được hỗ trợ tốt nhất, bạn có thể đặt câu hỏi ở phần BÌNH LUẬN bên dưới bài viết hoặc ở mục HỎI & ĐÁP.

Source code tham khảo

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace CSharp_Bai13 { class Program { static void Main(string[] args) { Console.OutputEncoding = Encoding.UTF8; Console.WriteLine("Nhập vào A: "); float a = float.Parse(Console.ReadLine()); Console.WriteLine("Nhập vào B: "); float b = float.Parse(Console.ReadLine()); Console.WriteLine("Nhập vào C: "); float c = float.Parse(Console.ReadLine()); float delta = (b/2) * (b/2) - a * c; Console.WriteLine("Phương trình nhập vào là:\n {0}x*x + {1}x + {2} = 0", a,b,c); Console.WriteLine("Delta phẩy = {0}", delta); /* if (delta < 0) { Console.WriteLine("Chương trình vô nghiệm"); } else if (delta == 0) { float x = (-b/2)/a; Console.WriteLine("Phương trình có nghiệm kép x1 = x2 = {0}", x); } else { double x1 = 0; double x2 = 0; x1 = ((-b / 2) - Math.Sqrt(delta)) / a; x2 = ((-b / 2) + Math.Sqrt(delta)) / a; Console.WriteLine("Phương trình có 2 nghiệm phân biệt: "); Console.WriteLine("x1 = {0}", x1); Console.WriteLine("x2 = {0}", x2); } */ switch (delta <0) { case true: Console.WriteLine("Chương trình vô nghiệm"); break; case false: switch (delta == 0) { case true: float x = (-b / 2) / a; Console.WriteLine("Phương trình có nghiệm kép x1 = x2 = {0}", x); break; default: double x1 = 0; double x2 = 0; x1 = ((-b / 2) - Math.Sqrt(delta)) / a; x2 = ((-b / 2) + Math.Sqrt(delta)) / a; Console.WriteLine("Phương trình có 2 nghiệm phân biệt: "); Console.WriteLine("x1 = {0}", x1); Console.WriteLine("x2 = {0}", x2); break; } break; } Console.ReadKey(); } } }

Tải project

Nếu việc thực hành theo hướng dẫn không diễn ra suôn sẻ như mong muốn. Bạn cũng có thể tải xuống PROJECT THAM KHẢO ở link bên dưới! 

Giải phương trình bậc 2 window Form

Kết luận

Bạn có thể củng cố kiến thức C# từ các khóa học tại LẬP TRÌNH C#.NET với rất nhiều khóa học từ cơ bản đến nâng cao, kèm theo các dự án thực tế như làm game, làm phần mềm quản lý.

Hoặc tìm hiểu thêm các bài tập khác trong khóa BÀI TẬP LẬP TRÌNH.

Cảm ơn các bạn đã theo dõi bài viết. Hãy để lại bình luận hoặc góp ý của bạn để phát triển bài viết tốt hơn. Đừng quên: “ Luyện tập – Thử thách – Không ngại khó!

Thảo luận

Nếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện Howkteam.com để nhận được sự hỗ trợ từ cộng đồng.

Trong bài viết này mình sẽ hướng dẫn các bạn cách giải phương trình bậc hai trong C#. Đây là bài tập thường gặp khi học bất kì ngôn ngữ lập trình nào, bởi nó giúp các bạn rèn luyện tư duy logic và áp dụng các kiến thức căn bản trong lập trình.

Giải phương trình bậc 2 window Form

Giải phương trình bậc 2 window Form

Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Như chung ta đã được học ở toán cơ sở, phương trình bậc hai có dạng như sau:

ax2 + bx + c = 0, trong đó a, b, c là các tham số đã biết và x là nghiệm của phương trình.

Bây giờ chúng ta sẽ bắt đầu biết chương trình để giải phương trình bậc hai có dạng như trên, bắt đầu thôi nào !!!!

Giải phương trình bậc hai trong C#

Hướng dẫn:

Bài viết này được đăng tại [free tuts .net]

Bước 1: Để giải được phương trình bậc hai, đầu tiên chúng ta cần biết được các tham số a, b, c. Ta có thể tự gán sẵn hoặc yêu cầu người dùng nhập giá trị cho các tham số này.

  • Nếu a = 0 thì phương trình trở về phương trình bậc nhất, khi đó ta sẽ giải phương trình dưới dạng bậc nhất bx + c = 0.
  • Nếu a != 0 thì ta tiếp tục thực hiện bước 2.

Bước 2: Tính Delta theo công thức:

Delta = b2 - 4ac, trong đó a, b, c là các tham số đã biết

Bước 3: Xét điều kiện cho Delta.

  • Nếu Delta < 0 thì phương trình vô nghiệm.
  • Nếu Delta = 0 thì phương trình có nghiệm kép x1 = x2 = -b / 2a.
  • Nếu Delta > 0 thì phương trình có hai nghiệm phân biệt x1 = (-b + Sqrt(Delta)) / (2a) và x2 = (-b - Sqrt(Delta)) / (2a).

Ví dụ: Dưới dây là chương trình giải phương trình bậc hai mà mình đã viết sẵn, trong đó có giải thích chi tiết, các bạn có thể tham khảo nhé.

using System; namespace BaiTapCSharp { class Program { static void Main(string[] args) { //khai báo hai biến a, b vầ c là va tham số mà người dùng nhập vào int a, b, c; //khai báo biến x1, x2 là nghiệm của phương trình và biến delta double x1, x2, delta; //yêu cầu người dùng nhập vào ba số a, b, c Console.Write("\n Nhap vao so a: "); a = Convert.ToInt32(Console.ReadLine()); Console.Write("\n Nhap vao so b: "); b = Convert.ToInt32(Console.ReadLine()); Console.Write("\n Nhap vao so c: "); c = Convert.ToInt32(Console.ReadLine()); //hiển thị phương trình bậc hai mà người dùng vừa nhập dưới dạng ax^2 + bx + c = 0 Console.WriteLine("\n Chuong trinh ban vua nhap la {0}x^2 + {1}x + {2} = 0.", a, b, c); //nếu a = 0 thì phương trình bậc hai trở thành phương trình bậc nhất if (a == 0) { //ta giải phương trình bậc nhất bx + c = 0 if (b == 0) { //nếu b = 0 và c = 0 thì phương trình vô số nghiệm if (c == 0) { Console.WriteLine("\n Phuong trinh co vo so nghiem."); } //nếu b = 0 và c != 0 thì phương trình vô nghiệm else { Console.WriteLine("\n Phuong trinh vo nghiem."); } } else { x1 = (double)-c / b; //Sử dụng phương thứ Math.Round() để làm tròn kết quả lên 2 số thập phân Console.WriteLine("\n Phuong trinh co nghiem duy nhat x = {0}", Math.Round(x1, 2)); } } //nếu a != 0 thì ta bắt đầu giải phương trình bậc hai else { //tính delta delta = Math.Pow(b, 2) - 4 * a * c; //kiểm tra nếu delta < 0 thì phương trình vô nghiệm if (delta < 0) { Console.WriteLine("\n Phuong trinh vo nghiem."); } //nếu delta = 0 thì phương trình có hai nghiệm kép else if (delta == 0) { x1 = x2 = -b / (2 * a); Console.WriteLine("\n Phuong trinh co nghiem kep x1 = x2 = {0}", x1); } //nếu delta > 0 thì phuong trình có hai nghiệm phân biệt else { x1 = (-b + Math.Sqrt(delta)) / (2 * a); x2 = (-b - Math.Sqrt(delta)) / (2 * a); Console.WriteLine("\n Phuong trinh hai nghiem phan biet:\n X1 = {0}\n X2 = {1}", x1, x2); } } Console.WriteLine("\n\n-----Chuong trinh nay duoc dang tai Freetuts.net---"); } } }

Kết quả 1: Phương trình có hai nghiệm phân biệt

Giải phương trình bậc 2 window Form

Kết quả 2: Phương trình có hai nghiệm kép

Giải phương trình bậc 2 window Form

Kết quả 3: Phương trình vô nghiệm

Giải phương trình bậc 2 window Form

Kết quả 4: Phương trình có nghiệm duy nhất

Giải phương trình bậc 2 window Form

Như vậy là chúng ta đã thực hiện xong chương trình giải phương trình bậc hai trong C#. Đây là dạng bài tập cơ bản giúp các bạn làm quen với ngôn ngữ lập trình C#, vì vậy hãy luyện tập thật nhiều nhé. Chúc các bạn thành công !!!

Giải phương trình bậc 2 window Form

Giải phương trình bậc 2 window Form

Giải phương trình bậc 2 window Form

Giải phương trình bậc 2 window Form

Giải phương trình bậc 2 window Form

Giải phương trình bậc 2 window Form

Giải phương trình bậc 2 window Form

Giải phương trình bậc 2 window Form