Code Giải Phương Trình Bậc Nhất, Bậc 2, Bậc 3 - Dạy Nhau Học Trang chủ » Giải Phương Trình Bậc 3 C++ » Code Giải Phương Trình Bậc Nhất, Bậc 2, Bậc 3 - Dạy Nhau Học Có thể bạn quan tâm Giải Phương Trình Bậc 3 Chứa Tham Số M Giải Phương Trình Bậc 3 Có 1 Nghiệm Giải Phương Trình Bậc 3 Hai ẩn Giải Phương Trình Bậc 3 Hệ Số Phức Giải Phương Trình Bậc 3 Lớp 8 Code giải phương trình bậc nhất, bậc 2, bậc 3 programming c++ Trong_Lam (Trong Lam) December 21, 2017, 4:28pm #1 Chào mọi người, em học xây dựng nhưng cũng thích lập trình. Em đang tập tành học c++.Em vừa viết code tính phuong trình bậc nhất, bậc hai, bậc 3. Nay em post đoạn code này lên mọi người xem giùm còn chỗ nào thiếu sót không. Cảm ơn #include <iostream> #include<cmath> #include<windows.h> #define PI 3.1415926535898 using namespace std; //tinh phuyong trinh bac nhat void bacnhat(float a,float b) { if (a==0 && b==0) { cout<<"phuong trinh vo so nghiem"<<endl; } else if (a==0 && b!=0) { cout<<"phuong trinh vo nghiem"<<endl; } else { cout<<"phuong trinh co nghiem x= "<<-b/a<<endl; } } //tinh phuyong trinh bac 2 void bachai(float a,float b,float c) { float d,x1,x2; if(a==0) { cout<<"phuong trinh vo nghiem"<<endl; } else { d=b * b-4 *a *c; if(d<0) { cout<<"phuong trinh vo nghem"<<endl; } else if(d==0) { cout<<"phuong trinh co nghiem kep x1=x2="<<-b/(2*a)<<endl; } else { x1=(-b-sqrt(d))/(2*a); x2=(-b+sqrt(d))/(2*a); cout<<"phuong trinh co 2 ngiem phan biet:"<<endl; cout<<"x1="<<x1<<endl; cout<<"x2="<<x2<<endl; } } } // tinh phuong trinh bac 3 void bacba(float a, float b, float c, float d) { float dt,k,x1,x2,x3,x; if(a==0) { cout<<"Phuong trinh vo nghiem"<<endl; } dt=pow(b,2)-3*a*c;//delta=b*b-3*a*c k=(9*a*b*c-2*pow(b,3)-27*pow(a,2)*d)/(2*sqrt(pow(fabs(dt),3))); if(dt>0) { if(fabs(k)<=1) { x1=(2*sqrt(dt)*cos(acos(k)/3)-b)/(3*a); x2=(2*sqrt(dt)*cos(acos(k)/3-(2*PI/3))-b)/(3*a); x3=(2*sqrt(dt)*cos(acos(k)/3+(2*PI/3))-b)/(3*a); cout<<"phuong trinh co 3 nghiem phan biet:"<<endl; cout<<"x1="<<x1<<endl; cout<<"x2="<<x2<<endl; cout<<"x3="<<x3<<endl; } if(fabs(k)>1) { x=((sqrt(dt)*fabs(k))/(3*a*k))*(pow((fabs(k)+sqrt(pow(k,2)-1)),1.0/3)+pow((fabs(k)-sqrt(pow(k,2)-1)),1.0/3))-(b/(3*a)); cout<<"Phuong trinh co 1 ngiem duy nhat la:"<<x<<endl; } } else if(dt==0) { x=(-b-pow(-(pow(b,3)-27*a*a*d),1.0/3))/(3*a);//do ham pow khong dung doi so am nen ta phai doi dau.Ct goc:x=(-b+pow(pow(b,3)-27*a*a*d),1.0/3))/(3*a) cout<<"Phuong trinh co nghiem boi:"<<x<<endl; } else { x=(sqrt(fabs(dt))/(3*a))*(pow((k+sqrt(k*k+1)),1.0/3)-pow(-(k-sqrt(k*k+1)),1.0/3))-(b/(3*a)); cout<<"phuong trinh co 1 nghiem duy nhat:"<<x<<endl; } } int main() { float a,b,c,d; int chon; cout<<"1.Phuong trinh bac nhat:ax+b=0"<<endl; cout<<"2.Phuong trinh bac hai:ax^2+bx+c=0"<<endl; cout<<"3.Phuong trinh bac hai:ax^3+bx^2+cx+d=0"<<endl; cout<<"Hay chon dang phuong trinh bang cach an so tuong ung:"; cin>>chon; switch(chon) { case 1: //Chon 1 de giai phuong trinh bac 1 { cout<<"Ban da chon phuong trinh bac 1:"<<endl; cout<<"nhap a,b:"<<endl; cin>>a>>b; bacnhat(a,b); break; } case 2: //Chon 2 de giai phuong trinh bac 2 { cout<<"Ban da chon phuong trinh bac 2:"<<endl; cout<<"nhap a,b,c:"<<endl; cin>>a>>b>>c; bachai(a,b,c); break; } case 3: //Chon3 de giai phuong trinh bac 3 { cout<<"Ban da chon phuong trinh bac 3:"<<endl; cout<<"nhap a,b,c,d"<<endl; cin>>a>>b>>c>>d; bacba(a,b,c,d); break; } } system("pause"); return 0; } 1 Like noname00 (HK boy) May 24, 2017, 4:32am #2 Căn lại dòng nhé. Như thế này khó nhìn quá. Căn lại dòng đã rồi mình nhìn tiếp. Phong_Ky_Vo (Tao Không Ngu.) May 24, 2017, 4:35am #3 Hi Trong Lam. Bạn chú ý CC một chút. VD: d=b*b-4*a*c; d = b * b - 4 * a * c; \\Nên viết. a==0&&b==0 (a == 0) && (b == 0) \\Nên viết. //Thêm tab vào. (Có lẽ là do web hiện thiếu.) void bacnhat(float a,float b){ if ((a == 0) && (b == 0)){ cout<<"phuong trinh vo so nghiem"<<endl; } else if ((a == 0) && (b != 0)){ cout<<"phuong trinh vo nghiem"<<endl; } else{ cout << "phuong trinh co nghiem x= " << -b / a <<endl; } } swith casre thi them cai enum hoặc định nghĩa hằng cho nó dễ đọc. P/S Code không chạy < Code chạy được < Code chạy tốt < Code chạy tốt + Dễ đọc < Code chạy tốt + Dễ đọc + Dễ mở rộng. 1 Like Trong_Lam (Trong Lam) May 24, 2017, 7:22am #4 Cảm ơn đã góp ý, để mình coi lại Trong_Lam (Trong Lam) May 24, 2017, 7:48am #5 cảm ơn đã góp ý lần đầu mình viết còn thiếu sót quá Phong_Ky_Vo (Tao Không Ngu.) May 24, 2017, 7:51am #6 Hi Trong Lam. THường thì không mấy tài liệu nhắc vê CC http://tapchilaptrinh.vn/2012/07/25/coding-conventions-lat-mem-buoc-chat/ 1 Like locprohaha (Cao Sơn Lộc) May 25, 2017, 12:05pm #7 ở phương trình bậc 2 nếu a == 0 thì phương trình có nghiệm là -c/b chứ bác, còn nếu a == 0 và b == 0 mới là vô nghiệm Trong_Lam (Trong Lam) May 25, 2017, 12:42pm #9 Anh mình quên cảm ơn bạn đã góp ý K10_Le_Hoang_Minh (K10- Lê Hoàng Minh) April 9, 2023, 6:46am #10 Uh oh, có người quên định nghĩa về các phương trình đa thức kìa. Tại sao a=0 vẫn giải được, phải là không giải được khi các biến còn lại ≠ 0 chứ tr. Nếu và chỉ nếu a=0 và tất cả các biến còn lại cũng =0 thì lúc đó pt mới có Vô Số Nghiệm. Anh bạn học lập trình mà ko biết cái này à? KÍNH GỬI Giáo sư Cao Sơn Lộc noname00 (HK boy) April 9, 2023, 6:47am #11 Trước khi comment thì để ý thời gian đã nào bạn ơi. image963×216 17.2 KB DayNhauHoc's Discord Học C++ Free? Click Blog Dạy Nhau Học Tự Học Lập Trình 83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao? Từ khóa » Giải Phương Trình Bậc 3 C++ Giải Phương Trình Bậc 3 Bằng C? - Programming - Dạy Nhau Học Cách Giải Phương Trình Bậc 3 Trong C 2 Trong C ... Giải Phương Trình Bậc 3 - Cộng đồng C Việt Bài Tập C++ Có Lời Giải/Câu Lệnh điều Kiện - Wikibooks Lập Trình Phần Mềm Giải Phương Trình Bậc 3 (VB.NET) - YouTube Cách Giải Phương Trình Bậc 3 Bằng C#.doc (thủ Thuật Lập Trình) C++ - Giải Phương Trình Bậc Hai Ax2 + Bx + C = 0 C++ - Giải Phương Trình Bậc Một Ax + B = 0 XÂY DỰNG CHƯƠNG TRÌNH GIẢI PHƯƠNG TRÌNH BẬC 1 VÀ ... Bài Tập C++ - Giải Phương Trình Bậc 2 Trong C++ - VietTuts Giải Phương Trình Bậc Nhất Một ẩn Trong C++ - Bài Tập C++ Có Lời Giải Cách Giải Phương Trình Bậc 3 Bằng C - TailieuXANH [Tu Hoc Lap Trinh C/C++] Viết Chương Trình C++ để Tìm Nghiệm Của ...