php 는 가장자리 길이 가 N 인 실심 과 공심 마름 형 을 인쇄 하 는 방법
실심 마름 형 계산 방법:
$n:길이
$i:현재 줄,0 시작
$rows:총 줄 수
상부
앞 칸 수=$n-$i-1
문자 수=$i*2+1
하부
앞 칸 수=$i-$n+1
문자 수=($rows-$i)*2-1
str 사용pad 는 for/while 등의 순환 을 줄 일 수 있 습 니 다.
/**
*
* @param int $n , 5
* @param String $s , *
* @return String
*/
function solidDiamond($n=5, $s='*'){
$str = '';
//
$rows = $n*2-1;
// *
for($i=0; $i<$rows; $i++){
if($i<$n){ //
$str .= str_pad('', ($n-$i-1), ' '). str_pad('', $i*2+1, $s)."\r
";
}else{ //
$str .= str_pad('', ($i-$n+1), ' '). str_pad('', ($rows-$i)*2-1, $s). "\r
";
}
}
return $str;
}
echo '<xmp>';
echo solidDiamond(5);
echo '</xmp>';
*
***
*****
*******
*********
*******
*****
***
*
중 공 마름 형 계산 방법:$n:길이
$i:현재 줄,0 시작
$rows:총 줄 수
상부
앞 칸 수=$n-$i-1
빈 칸 수=$i*2+1-2
문자 수=$i*2+1-빈 칸 수
하부
앞 칸 수=$i-$n+1
빈 칸 수=($rows-$i)*2-1-2
문자 수=($rows-$i)*2-1-빈 칸 수
/**
*
* @param int $n , 5
* @param String $s , *
* @return String
*/
function hollowDiamond($n=5, $s='*'){
$str = '';
//
$rows = $n*2-1;
// *
for($i=0; $i<$rows; $i++){
if($i<$n){ //
$tmp = $i*2+1;
$str .= str_pad('', ($n-$i-1), ' '). str_pad(str_pad('', $tmp-2, ' ', STR_PAD_BOTH), $tmp, $s, STR_PAD_BOTH)."\r
";
}else{ //
$tmp = ($rows-$i)*2-1;
$str .= str_pad('', ($i-$n+1), ' '). str_pad(str_pad('', $tmp-2, ' ', STR_PAD_BOTH), $tmp, $s, STR_PAD_BOTH). "\r
";
}
}
return $str;
}
echo '<xmp>';
echo hollowDiamond(5);
echo '</xmp>';
*
* *
* *
* *
* *
* *
* *
* *
*
본 논문 에서 말 한 것 이 여러분 의 phop 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Laravel - 변환된 유효성 검사 규칙으로 API 요청 제공동적 콘텐츠를 위해 API를 통해 Laravel CMS에 연결하는 모바일 앱(또는 웹사이트) 구축을 고려하십시오. 이제 앱은 CMS에서 번역된 콘텐츠를 받을 것으로 예상되는 다국어 앱이 될 수 있습니다. 일반적으로 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.