Trang chủ Tin Học Lớp 8 DK07 - Giải phương trình Báo lỗi Đề bài Viết...

DK07 - Giải phương trình Báo lỗi Đề bài Viết chương trình giải phương trình có dạng tổng quát: ax^2 + bx + c = 0ax 2 +bx+c=0. Dữ liệu vào 3 số nguyên a, b,

Câu hỏi :

DK07 - Giải phương trình Báo lỗi Đề bài Viết chương trình giải phương trình có dạng tổng quát: ax^2 + bx + c = 0ax 2 +bx+c=0. Dữ liệu vào 3 số nguyên a, b, ca,b,c lần lượt là hệ số của phương trình ax^2 + bx + c = 0ax 2 +bx+c=0 Giới hạn: -1000 \le a, b, c \le 10001000a,b,c1000 Dữ liệu ra Nếu phương trình vô nghiệm, in raNO Nếu phương trình có vô số nghiệm, in raINF Nếu phương trình có nghiệm, in ra các nghiệm đã làm tròn đến chữ số thập phân thứ 2, theo thứ tự tăng dần và ngăn cách nhau bởi 1 dấu cách.

Lời giải 1 :

#include<bits/stdc++.h>

#include <iostream>

#include <math.h>

using namespace std;

int main()

{

    float a, b, c, d, e;

    cin >> a >> b >> c;

    if (a == 0) {

        if ((b == 0) && (c == 0)) cout << "INF";

        else if ((b != 0) && (c == 0)) cout << "0.00";

        else if ((b == 0) && (c != 0)) cout << "NO";

        else cout << setprecision(2) << fixed << -c / b;

    }

    else {

        d = b * b - 4 * a * c;

        if (d == 0)

            if ((b == 0) && (c == 0)) cout << "0.00";

            else cout << setprecision(2) << fixed << -b / (2 * a);

        if (d < 0) cout << "NO";

        if (d > 0) {

            c = (-b + sqrt(d)) / (2 * a);

            e = (-b - sqrt(d)) / (2 * a);

            if (c > e) cout << setprecision(2) << fixed << e << " " << c;

            else cout << setprecision(2) << fixed << c << " " << e;

        }

    }

    return 0;

}

Thảo luận

Lời giải 2 :

#include<bits/stdc++.h>

using namespace std;

int main()

{

    float a, b, x1, d, x2;

    cin >> a >> b >> c;

    if (a == 0) {

        cout << "INF" << endl;

        system("Pause>0");

        exit(0);

    }

    else {

        d = b * b - 4 * a * c;

        if (d == 0)

            if ((b == 0) && (c == 0)){x1 = 0; cout << setprecision(2) << fixed << x1 << endl; exit(0)} ;

            else cout << setprecision(2) << fixed << -b / (2 * a);

        if (d < 0) cout << "NO";

        if (d > 0) {

            x1 = (-b + sqrt(d)) / (2 * a);

            x2 = (-b - sqrt(d)) / (2 * a);

            if (x1 > x2) {cout << setprecision(2) << fixed << x1 << " " << x2;}

            else {cout << setprecision(2) << fixed << x1 << " " << x2;}

        }

    }

    system("Pause>0);

    return 0;

}

Chúc bạn học tốt =))

Bạn có biết?

Tin học, tiếng Anh: informatics, tiếng Pháp: informatique, là một ngành khoa học chuyên nghiên cứu quá trình tự động hóa việc tổ chức, lưu trữ, xử lý và truyền dẫn thông tin của một hệ thống máy tính cụ thể hoặc trừu tượng (ảo). Với cách hiểu hiện nay, tin học bao hàm tất cả các nghiên cứu và kỹ thuật có liên quan đến việc mô phỏng, biến đổi và tái tạo thông tin.

Nguồn : Wikipedia - Bách khoa toàn thư

Tâm sự 8

Lớp 8 - Năm thứ ba ở cấp trung học cơ sở, học tập bắt đầu nặng dần, sang năm lại là năm cuối cấp áp lực lớn dần nhưng các em vẫn phải chú ý sức khỏe nhé!

Nguồn : ADMIN :))

Copyright © 2021 HOCTAP247