직사각형 계산LOGIN

직사각형 계산

그래픽의 종류가 많다는 점을 고려하여 먼저 그래픽 추상 클래스를 구축하여 모든 그래픽에 공통적인 속성과 메서드를 제공할 수 있습니다.

이런 방식으로 다른 그래픽이 이를 직접 상속할 수 있어 코드 중복이 줄어들고 다음 규정을 준수할 수 있습니다. 객체 지향 생각

1, 새로운 Shap.class.php 파일

을 생성합니다. 도형의 이름 $name, 오류 메시지 $error, 경계 영역() 및 영역 zhou(), 그리고 각각 계산이 있습니다. yan()

<?php
abstract class Shape {
    private $name;
    private $error;
    abstract function area();
    abstract function zhou();
    abstract function view($arr);
    abstract function yan($arr);
}
?>

2, 새 Rect.class.php 파일을 만듭니다

새 직사각형 클래스를 만든 후 그래픽 클래스를 상속하고 상속된 메소드에 추가로 구현합니다. 속성과 메서드, 각 그래픽에는 고유한 속성과 메서드가 있습니다. 예를 들어 직사각형에는 길이와 너비가 있고 구에는 반경이 있습니다.

직사각형 $width 및 $height의 속성을 정의하세요

생성자를 사용하여 다음을 수행합니다. 인스턴스화하고 각각 이름과 오류에 값을 자동으로 할당합니다

면적과 둘레를 계산합니다

사각형을 클릭한 후 입력 상자를 표시해야 합니다. 이때 메서드 view()만 정의하면 됩니다. 입력란을 인쇄하려면

사각형 버튼에 라벨을 추가하세요

<a href ='index.php?action=ret'>사각형</a> |

클릭 후 가져오기 요청 코드는 다음과 같습니다.

<?php
if (!empty($_GET['action'])) {
    $shape = new Rect();
    $shape->view();
    }
<?php
class Rect extends Shape {
    private $width;
    private $height;
    function __construct() {
        $this->name = "矩形";
        $this->error = '';
    }
    function area() {
        return $this->width * $this->height;
    }
    function zhou() {
        return ($this->width+$this->height) * 2;
    }
    function view($arr) {
        $form='';
        $form .= "<form action='index.php?action=rect' method='post'>";
        $form .= "请输入".$arr['name']."的宽度:<input type='text' name='width' value='".$_POST['width']."'/><br>";
        $form .= "<br>";
        $form .= "请输入".$arr['name']."的长度:<input type='text' name='height' value='".$_POST['height']."'/><br>";
        $form .= "<br>";
        $form .= "<input type='submit' name='sub' value='提交'/>    ";
        $form .= "<input type='reset' name='ret' value='重置'/>";
        $form .= "</form>";
        echo $form;
    }
}
?>

3, verify 정보 인쇄

사각형 클래스에 추가된 새로운 메소드:

<?php
function yan($arr) {
    $bz = true;

    if ($arr['width']< 0) {
        $this->error .= "宽度小于0;";
        $bz = false;
    } else {
        if (!is_numeric($arr['width'])) {
            $this->error .= "宽不是数字;";
            $bz = false;
        }
    }
    if ($arr['height']< 0) {
        $this->error .= "宽度小于0;";
        $bz = false;
    } else {
        if (!is_numeric($arr['height'])) {
            $this->error .= "高不是数字;";
            $bz = false;
        }
    }
    return $bz;
}

확인 정보 인쇄 , index.php 코드 :

if (!$shape->yan($_POST)) {
    echo "<b>错误:$shape->error</b>";
}
echo "</div>";

인증 정보가 올바른 경우 올바른 주변 및 영역을 인쇄합니다. index.php에 Rect.class.php 파일을 추가하려면

require 'Rect.class.php';

다른 그래픽을 계산할 때도 가져와야 합니다. 클래스 파일을 모두 가져올 수 있는 방법이 있나요? (다음 섹션에서 소개)

다음 섹션
<?php echo "矩形周长面积的计算";
코스웨어