查看: 1421|回复: 13
|
programming练习题by php
[复制链接]
|
|
output :

这是我朋友的练习题目,以下是我的做法。。
- <?php
- $i = 0;
- $maxLength = $numOfLoop = 6;
- $y = 0 ;
- while (true) {
- if ($i >= $maxLength) {
- $i = ($maxLength -= 1);
- } else {
- $i += 1;
- }
- if ($i<=0) {
- $maxLength = ($numOfLoop -= 1);
- $str .= "\n";
- $y++;
- for ($x=0;$x<$y;$x++) {
- $str .= " ";
- }
- if ($numOfLoop <=0) break;
- } else {
- $str .= $i;
- }
- }
- ?>
- <textarea cols=40 rows=10>
- <?php echo $str;?>
- </textarea>
复制代码
各位可以分享你们的做法吗???
[ 本帖最后由 ikanyuchiew 于 6-8-2007 10:30 PM 编辑 ] |
|
|
|
|
|
|
|
发表于 8-8-2007 10:00 PM
|
显示全部楼层
如果是我的话。。。
我会用两个
for(){
}
来做 |
|
|
|
|
|
|
|

楼主 |
发表于 9-8-2007 12:05 AM
|
显示全部楼层
回复 #2 小陈陈 的帖子
如果你得空的话,麻烦你也来几招。
这是我朋友在某间australia大学的练习题来的  |
|
|
|
|
|
|
|
发表于 11-8-2007 09:24 AM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 11-8-2007 10:54 AM
|
显示全部楼层
|
|
|
|
|
|
|

楼主 |
发表于 12-8-2007 10:43 AM
|
显示全部楼层
用最快的方法就是最好的方法,好招好招  |
|
|
|
|
|
|
|
发表于 12-8-2007 08:50 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 12-8-2007 08:51 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 13-8-2007 01:27 PM
|
显示全部楼层
这是我的方法。- <?php
- $minnum = 1;
- $nspace = 0;
- for ($i=6;$i >= $minnum;$i--)
- {
- for($j=1;$j <= $i;$j++)
- {
- echo $j;
- }
- for($k=$i-1;$k >= 1;$k--)
- {
- echo $k;
- }
- echo "<br>";
- $nspace++;
- for($s=1;$s <= $nspace;$s++)
- {
- echo "  ; ";
- }
- }
- ?>
复制代码
[ 本帖最后由 chewkit 于 13-8-2007 01:36 PM 编辑 ] |
|
|
|
|
|
|
|

楼主 |
发表于 13-8-2007 03:08 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 28-8-2007 08:29 AM
|
显示全部楼层
$row = 6;
for($x=row; $x > 0; $x--)
{
for($space=0; $space < ($row-$x); $space++)
{
echo " ";
}
for($y=1; $y <= $x; $y++)
{
echo y;
}
for($z=x-1; $z > 0 ; $z--)
{
echo z;
}
echo "\n";
} |
|
|
|
|
|
|
|
发表于 28-8-2007 10:42 AM
|
显示全部楼层
好久没做这种习题... 真怀念。
<?php
$loop = 6;
for ($x = ($loop+1); $x > 0; $x--) {
$str = "";
for ($y = 1; $y < $x; $y++) $str .= $y;
for ($z = -1; $z < ($loop - $x); $z++) echo " ";
echo $str.strrev(substr ($str, 0, ($x-2)));
echo "\n";
}
?>
[ 本帖最后由 goatstudio 于 28-8-2007 11:10 AM 编辑 ] |
|
|
|
|
|
|
|

楼主 |
发表于 28-8-2007 11:24 PM
|
显示全部楼层
回复 #12 goatstudio 的帖子
大家好象在 optimizing...
谢谢楼上二位的coding ...相信很多programmer也很怀念类似的问题  |
|
|
|
|
|
|
|
发表于 1-9-2007 11:09 PM
|
显示全部楼层
<?PHP
$maxline = 6;
$output = '';
for($x=$maxline; $x > 0; $x--)
{
for($y = $x-1, $temp = $x; $y > 0; $y--) $temp = $y . $temp . $y;
for($y=0, $spaces = '', $space_count = $maxline - $x - 1; $y <= $space_count; $y++) $spaces .= ' ';
$output .= $spaces . $temp . $spaces . "\n";
}
echo $output;
?> |
|
|
|
|
|
|
| |
本周最热论坛帖子
|