<?php
header('Content-Type: text/html; charset=utf-8');
define ('ROOT', $_SERVER['DOCUMENT_ROOT']);
include ROOT.'/assets/php/head.php';

$tit = '计算建筑面积已知标签面积条件';
/**
 * 标签 面积 条件
 * 总面积 (8.4+0.245*2)*(6+0.245*2) 1
 * 扣除台阶 -2.7*2.7 1
 */
//$txt = 'C:\Users\onest\Desktop\demo.txt';
$img='';

mill($txt,$img,$tit);

function mill($txt,$img,$tit){
    //初始化
    include ROOT.'/assets/php/init.php';
    imgt($img,$tit);
    $val = text($txt);

    //设置小数点保留位数 
    bcscale (3);

    //获取数组
    $valeol = expl_eol($val);
    $vals = expls($val);

    //已知条件
    $know = array();
    foreach ($valeol as $value) {
        array_push($know, $value);
    }
    $S = array();
    foreach ($vals as $value) {
        $tag = $value[0];
        $evev = evev($value[1]);
        $flag = evev($value[2]);
        $tagflag = "";
        if($flag == 1){
            $tagflag = "{$tag}<span style='color:#0b0;'>[计算全部</span>]";
        }else if($flag == 0.5){
            $tagflag = "{$tag}[<span style='color:#00f;'>计算一半</span>]";
        }else if($flag == 0){
            $tagflag = "{$tag}[<span style='color:#f00;'>不用计算</span>]";
        }else{
            $tagflag = "{$tag}[<span style='color:#906;'>其他条件</span>]";
        }
        $evevflag = bcmul($evev,$flag);
        array_push($S,$evevflag);
        array_push($know, "{$tagflag}:$evevflag {$math['eq']}<span style='color:#f00;'>{$math['lpar']}</span>{$value[1]}<span style='color:#f00;'>{$math['rpar']}</span>{$math['mul']}{$value[2]}{$math['eq']}{$evev}{$math['mul']}{$flag}");
    }

    //计算步骤
    $step = array();
    array_push($step, "计算建筑面积:");
    $Ssum = 0;
    for ($i=0; $i < count($S); $i++) { 
        $str = '';
        for ($j=$i; $j < count($S) ; $j++) { 
            if($j>$i-1 && $j<$i+1){
                $Ssum = bcadd($Ssum,$S[$j]);
                $str .= $Ssum;
            }else{
                $str.= $S[$j];
            }
            if($j< count($S)-1){ $str.="{$math['add']}";}
        }
        array_push($step, "{$math['eq']} {$str}");
    }

    //算出结果
    $ends = array();
    array_push($ends, "计算建筑面积:{$Ssum}{$unit['m2']}");

    //公式表示
    $home = array();
    array_push($home, "计算建筑面积:S建筑{$math['eq']}S1{$math['add']}S2{$math['add']}S3...Sn");

    //公式说明
    $info = array();
    array_push($info, "建筑面积是指建筑物各层水平面积的总和,包括使用面积、辅助面积和结构面积。");
    array_push($info, "使用面积是指建筑物各层平面中直接为生产和生活使用的净面积。");
    array_push($info, "辅助面积是指建筑物各层平面中为辅助生产或辅助生活所占的净面积,例如居住建筑物中的楼梯、走道、厕所、厨房所占的面积。");
    array_push($info, "使用面积和辅助面积的总和称为“有效面积”。");
    array_push($info, "结构面积是指建筑物各层平面中墙、柱等结构所占的面积。");

    know($know);
    ends($ends);
    home($home);
    step($step);
    info($info);    
}
?>
<?php include ROOT.'/assets/php/foot.php'; ?>

结果:

☁参考上图[2022-11-26]

☀计算建筑面积已知标签面积条件
总面积 (8.4+0.245*2)*(6+0.245*2) 1
扣除台阶 -2.7*2.7 1
总面积[计算全部]:57.696 =((8.4+0.245*2)*(6+0.245*2))×1=57.6961×1
扣除台阶[计算全部]:-7.290 =(-2.7*2.7)×1=-7.29×1

♠算出结果
计算建筑面积:50.406m²

♦公式表示
计算建筑面积:S建筑=S1+S2+S3...Sn

♣计算步骤
计算建筑面积:
= 57.696+-7.290
= 50.406

♥公式解释
建筑面积是指建筑物各层水平面积的总和,包括使用面积、辅助面积和结构面积。
使用面积是指建筑物各层平面中直接为生产和生活使用的净面积。
辅助面积是指建筑物各层平面中为辅助生产或辅助生活所占的净面积,例如居住建筑物中的楼梯、走道、厕所、厨房所占的面积。
使用面积和辅助面积的总和称为“有效面积”。
结构面积是指建筑物各层平面中墙、柱等结构所占的面积。

原文地址:http://www.cnblogs.com/onestopweb/p/16928616.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性