VIẾT THUẬT TOÁN : ax\(^2\) + bx + c = 0
Hãy nhập câu hỏi của bạn vào đây, nếu là tài khoản VIP, bạn sẽ được ưu tiên trả lời.
Bài 1:
Thuật toán:
B1: Nhập a,b,c
B2: Tính \(\Delta\) = b2-4ac;
B3: Kiểm tra nếu \(\Delta\) >0 phương trình có 2 nghiệm phân biệt
\(x_1=\dfrac{-b+\sqrt{\Delta}\text{ }}{2a}\)
\(x_2=\dfrac{-b-\sqrt{\Delta}}{2a}\)
B4: Kiểm tra nếu \(\Delta\)<0 thì phương trình vô nghiệm
B5: Kiểm tra nếu \(\Delta\)=0 phương trình có 2 nghiệm kép \(x_1=x_2=-\dfrac{b}{2a}\)
Viết chương trình:
Program HOC24;
var a,b,c: integer;
x1,x2: real;
denta: longint;
begin
write('Nhap a; b; c: '); readln(a,b,c);
denta:=b*b-4*a*c;
if denta>0 then
begin
write('x1= ',(-b+sqrt(denta))/(2*a):1:2);
write('x2= ',(-b-sqrt(denta))/(2*a):1:2);
end;
if denta<0 then write('Phuong trinh vo nghiem');
if denta=0 then write('x= ',-b/2*a:1:2);
readln
end.
Bài 2:
Thuật toán:
B1: Nhập a,b
B2: Kiểm tra nếu a=0 và b=0 thì phương trình có vô số nghiệm
B3: Kiểm tra nếu a=0 thì phương trình vô nghiệm
B4: Kiểm tra nếu a khác 0 thì có nghiệm x=-b/a;
Viết chương trình:
Program HOC24;
var a,b: integer;
x: real;
begin
write('Nhap a; b: '); readln(a,b);
if a=0 and b=0 then write('Phuong trinh co vo so nghiem');
if a=0 then write('Phuong trinh vo nghiem');
if a<>0 then write('x=',-b/a:1:2);
readln
end.
B1:nhập a,b,c
B2: Tính đen ta = b^2-4ac
B3: nếu a<0 thì phương trình vô nghiệm =>B6
B4:nếu a=0 thì pt có nghiệm kép x=-b/2a => B6
B5:nếu a>0 thì pt có 2 nghiệm phân biệt x1= (-b+căn đen ta)/2a ; x2= (-b-căn đen ta)/2a =>B6
B6 :kết thúc,
nếu muốn vẽ bằng sơ đồ khối thì xem tại: https://vubinh94.wordpress.com/tag/so-do-khoi-giai-phuong-trinh-bac-2-ax2bxc0/
1: Xác định bài toán
-Input: ba số nguyên a,b,c(a≠0)
-Output: Giải phương trình bậc hai \(ax^2+bx+c=0\)
2: Mô tả thuật toán
*Liệt kê:
-Bước 1: Nhập a,b,c(có kiểm tra điều kiện a≠0)
-Bước 2: Δ←\(b^2-4ac\)
-Bước 3: Nếu Δ<0 thì phương trình vô nghiệm
-Bước 4: Nếu Δ=0 thì phương trình có nghiệm kép là \(-\frac{b}{2a}\)
-Bước 5: Nếu Δ>0 thì phương trình có hai nghiệm phân biệt là \(\left\{{}\begin{matrix}\frac{-b-\sqrt{\Delta}}{2a}\\\frac{-b+\sqrt{\Delta}}{2a}\end{matrix}\right.\)
-Bước 6: Kết thúc
Thuật toán giải phương trình bậc nhất:
Bước 1: Nhập a, b;
Bước 2: Nếu a = 0, B≠ 0 thì thông báo vô nghiệm rồi kết thúc;
Bước 3: Nếu a = 0, B = 0 thì thông báo phương trình nghiệm đúng với mọi giá trị rồi kết thúc;
Bước 4: Nếu a ≠ 0 thì x = -b/a thông báo phương trinh có nghiệm duy nhất là x rồi kết thúc
#include <bits/stdc++.h>
using namespace std;
double a,b,c,delta,x1,x2;
int main()
{
//freopen("PTB2.inp","r",stdin);
//freopen("PTB2.out","w",stdout);
cin>>a>>b>>c;
delta=(b*b-4*a*c);
if (delta<0) cout<<"-1";
if (delta==0) cout<<fixed<<setprecision(5)<<(-b/(2*a));
if (delta>0)
{
x1=(-b-sqrt(delta))/(2*a);
x2=(-b+sqrt(delta))/(2*a);
cout<<fixed<<setprecision(5)<<x1<<" "<<fixed<<setprecision(5)<<x2;
}
return 0;
}
a. \(\left[{}\begin{matrix}\left\{{}\begin{matrix}a=b=0\\c>0\end{matrix}\right.\\\left\{{}\begin{matrix}a>0\\b^2-4ac< 0\end{matrix}\right.\end{matrix}\right.\)
b. \(\left[{}\begin{matrix}\left\{{}\begin{matrix}a=b=0\\c< 0\end{matrix}\right.\\\left\{{}\begin{matrix}a< 0\\b^2-4ac< 0\end{matrix}\right.\end{matrix}\right.\)
c. \(\left[{}\begin{matrix}\left\{{}\begin{matrix}a=b=0\\c\ge0\end{matrix}\right.\\\left\{{}\begin{matrix}a>0\\b^2-4ac\le0\end{matrix}\right.\end{matrix}\right.\)
d. \(\left[{}\begin{matrix}\left\{{}\begin{matrix}a=b=0\\c\le0\end{matrix}\right.\\\left\{{}\begin{matrix}a< 0\\b^2-4ac\le0\end{matrix}\right.\end{matrix}\right.\)
Thuật toán để giải một bài toán là:
+ Một dãy hữu hạn các thao tác (tính dừng)
+ Các thao tác được tiến hành theo một trình tự xác định (tính xác định)
+ Sau khi thực hiện xong dãy các thao tác đó ta nhận được Output của bài toán (tính đúng đắn)
+ Ví dụ: Cho bài toán Tìm nghiệm của phương trình bậc 2: ax2 + bx + c = 0 (a≠0)?
+ Xác định bài toán
Input: Các số thực a, b, c
Output: Các số thực x thỏa mãn ax2 + bx + c = 0 (a≠0)
+ Thuật toán:
Bước 1: Nhập a, b, c (a≠0)
Bước 2: Tính Δ = b2 – 4ac
Bước 3: Nếu Δ>0 thì phương trình có 2 nghiệm là
Bước 4: Nếu Δ = 0 thì phương trình có nghiệm kép
Thuật toán có 5 tính chất bao gồm: tính chính xác, tính khách quan, tính phổ dụng, tính rõ ràng, tính kết thúc. Ban đầu, một thuật toáncần có "tính chính xác" vô cùng cao. Nó cũng là yếu tố quan trọng nhất, mang tính chất khả dụng và khách quan của một thuật toán.
Vì theo đề:f(x)=0 với mọi giá trị của x nên t cho x nhận 3 giá trị tùy ý
Giả sử x=0;x=1;x=-1 là 3 giá trị đó.
Ta có:f(0)=a.02+b.0+c=c
f(1)=a.12+b.1+c=a+b+c
f(-1)=a.(-1)2+b.(-1)+c=a-b+c
Do đó c=0;a+b+c=0;a-b+c=0
=>a-b=0=>a=b
và a+b=0=>a=b=0
Vậy a=b=c=0
VD:
if (a*sqr(x))+(b*x)+c=0 then write({a ,b , c hoặc x (biến cần tìm)});
Đối với bài này mình nghĩ đề bài phải cho nhập a,b,c