VietTuts

Tự Học Lập Trình Online

  • Home
  • Java
  • Servlet
  • JSP
  • Struts2
  • Hibernate
  • Spring
  • MyBatis
  • Java WS
  • C
  • C++
  • C#
  • Python
  • PHP
  • Excel
  • VBA
  • Web
    • JavaScript
    • JQUERY
    • JSON
    • AJAX
    • CSS
    • HTML
    • HTML5
    • Node.js
    • Angular 7
  • SQL
    • MySQL
    • SQL Server
  • Misc
    • Eclipse
    • Phần mềm tiện ích
    • Cấu trúc DL&GT
    • Selenium Test
PHP Cơ Bản PHP Function Mảng (Array) trong PHP String trong PHP

Bài Tập PHP

Danh sách bài tập PHP

Bài tập PHP cơ bản

Vẽ tam giác trong PHP Vẽ hình chữ nhật trong PHP Bài toán FizzBuzz trong PHP Bảng cửu chương trong PHP Giải phương trình bậc 2 trong PHP Tính giai thừa trong PHP Dãy số Fibonacci trong PHP Check số nguyên tố trong PHP Liệt kê số Fibonacci nhỏ hơn n và là số nguyên tố Chuyển đổi hệ cơ số trong PHP Tìm USCLN và BSCNN của 2 số Liệt kê tất cả các số nguyên tố nhỏ hơn n Liệt kê n số nguyên tố đầu tiên Liệt kê tất cả số nguyên tố có 5 chữ số Phân tích số nguyên n thành tích các số nguyên tố Tính tổng của các chữ số của môt số nguyên n Tìm số thuận nghịch trong PHP

Bài tập xử lý chuỗi

Tính độ dài của một chuỗi – strlen() Đảo ngược chuỗi – strrev()
Xử lý Form trong PHP Xử lý file trong PHP PHP kết nối với MySQL Xử lý lỗi trong PHP include và require trong PHP
1 / 3
❮ ❯

Giải phương trình bậc 2 trong PHP


Bảng cửu chương trong PHP
Tính giai thừa trong PHP

Nội dung chính

  • Đề bài
  • Lời giải

Đề bài

Viết chương trình giải phương trình bậc 2 trong PHP. Phương trình bậc 2 có dạng:

giải phương trình bậc 2 trong PHP

Lời giải

Bài này được viết trên eclipse, bạn có thể tham khảo bài debug PHP project trong Eclipse.

Các kiến thức được sử dụng trong ví dụ này:

  • Biến toàn cầu $GLOBALS trong PHP, tham khảo bài Biến siêu toàn cầu trong PHP.
  • Sử dụng method POST, tham khảo bài Xử lý Form trong PHP.
  • Hàm tính căn bậc 2 của một số sqrt($n).

File: phuongtrinhbac2.php

<?php
// khai báo các biến toàn cầu
$heso_a = "";
$heso_b = "";
$heso_c = "";
// đọc các hệ số từ FORM
if (isset ( $_POST ['heso_a'] )) {
    $heso_a = $_POST ['heso_a'];
}
if (isset ( $_POST ['heso_b'] )) {
    $heso_b = $_POST ['heso_b'];
}
if (isset ( $_POST ['heso_c'] )) {
    $heso_c = $_POST ['heso_c'];
}
/**
 * giải phương trình bậc 2 trong PHP
 *
 * @author: viettuts.vn
 * @param
 *            he so bac 2 $a
 * @param
 *            he so bac 1 $b
 * @param
 *            he so tu do $c
 */
function giaiPTB2($a, $b, $c) {
    // kiểm tra biến đầu vào
    if ($a == "")
        $a = 0;
    if ($b == "")
        $b = 0;
    if ($c == "")
        $c = 0;
    // in phương trình ra màn hình
    echo "Phương trình: " . $a . "x2 + " . $b . "x + " . $c . " = 0";
    echo "<br>";
    // kiểm tra các hệ số
    if ($a == 0) {
        if ($b == 0) {
            echo ("Phương trình vô nghiệm!");
        } else {
            echo ("Phương trình có một nghiệm: " . "x = " . (- $c / $b));
        }
        return;
    }
    // tính delta
    $delta = $b * $b - 4 * $a * $c;
    $x1 = "";
    $x2 = "";
    // tính nghiệm
    if ($delta > 0) {
        $x1 = (- $b + sqrt ( $delta )) / (2 * $a);
        $x2 = (- $b - sqrt ( $delta )) / (2 * $a);
        echo ("Phương trình có 2 nghiệm là: " . "x1 = " . $x1 . " và x2 = " . $x2);
    } else if ($delta == 0) {
        $x1 = (- $b / (2 * $a));
        echo ("Phương trình có nghiệm kép: x1 = x2 = " . $x1);
    } else {
        echo ("Phương trình vô nghiệm!");
    }
}
?>
<form action="#" method="post">
 <table>
  <tr>
   <td>Hệ số bậc 2, a</td>
   <td><input type="text" name="heso_a" value="<?=$heso_a?>" /></td>
  </tr>
  <tr>
   <td>Hệ số bậc 1, b</td>
   <td><input type="text" name="heso_b" value="<?=$heso_b?>" /></td>
  </tr>
  <tr>
   <td>Hệ số tự do, c</td>
   <td><input type="text" name="heso_c" value="<?=$heso_c?>" /></td>
  </tr>
  <tr>
   <td></td>
   <td><input type="submit" value="Kết quả"></td>
  </tr>
 </table>
</form>
<br>
<?php
// gọi hàm giải phương trình bậc 2
// Sử dụng từ kháo $GLOBALS để đọc các biến toàn cầu và truyền vào hàm
if (is_numeric ( $GLOBALS ['heso_a'] ) && is_numeric ( $GLOBALS ['heso_b'] ) 
        && is_numeric ( $GLOBALS ['heso_c'] )) {
    giaiPTB2 ( $GLOBALS ['heso_a'], $GLOBALS ['heso_b'], $GLOBALS ['heso_c'] );
} else {
    echo ("Giá trị input không hợp lệ!");
}
?>

Kết quả:

Chú ý: Trong ví dụ trên hàm is_numeric() được sử dụng về xác thực giá trị đầu vào phải là một số thực.


Bảng cửu chương trong PHP
Tính giai thừa trong PHP

Recent Updates

Sắp Tết 2024 Rồi! - Còn bao nhiêu ngày nữa là đến tết 2024?Tìm số thuận nghịch trong PHPTính tổng của các chữ số của môt số nguyên nPhân tích số nguyên n thành tích các số nguyên tố trong PHPLiệt kê tất cả số nguyên tố có 5 chữ số trong PHPTìm USCLN và BSCNN của 2 số trong PHPChuyển đổi hệ cơ số trong PHPLiệt kê số Fibonacci nhỏ hơn n và là số nguyên tố trong PHPCheck số nguyên tố trong PHPDãy số Fibonacci trong PHPTính giai thừa trong PHPBài tập PHP có lời giảiLiệt kê tất cả các số nguyên tố nhỏ hơn n trong PHP

VietTuts on facebook

Học Lập Trình Online Miễn Phí - VietTuts.Vn
Danh Sách Bài Học

Học Java | Hibernate | Spring
Học Excel | Excel VBA
Học Servlet | JSP | Struts2
Học C | C++ | C#
Học Python
Học SQL

Bài Tập Có Lời Giải

Bài tập Java
Bài tập C
Bài tập C++
Bài tập C#
Bài tập Python
Ví dụ Excel VBA

Câu Hỏi Phỏng Vấn

201 câu hỏi phỏng vấn java
25 câu hỏi phỏng vấn servlet
75 câu hỏi phỏng vấn jsp
52 câu hỏi phỏng vấn Hibernate
70 câu hỏi phỏng vấn Spring
57 câu hỏi phỏng vấn SQL

Scroll back to top

Copyright © 2016 VietTuts.Vn all rights reserved. | Liên hệ | Chính sách - riêng tư | sitemap.html | sitemap_index.xml