循环的问题 输入两个参数,1栋2楼A室,6栋4楼C室 结果要输出这两栋房间编号中间所有房间的编号.即1栋2楼B室.....6栋4楼B室.条件(每栋有30层 ,每层有A,B,C三室) 请问用php怎么写啊。.呵呵 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <?for($i=1;$i<=6;$i++){ for($j=1;$j<=30;$j++) { for($k=a;$k<=c;$k++) { echo $i."幢".$j."层".$k."室"."<br>"; } }}?> 楼上已写我来翻版.<?phpdefine ( DONG_NUM ,6);define ( LAYER_NUM ,30);for( $i = 1;$i <= DONG_NUM ; $i++ ) { for($j=1;$j <=LAYER_NUM;$j++) { for($k=a;$k <=c;$k++) { echo $i."幢".$j."层".$k."室"." <br>"; } } } ?> 用了一個本辦法,不知道可以不?<?function room($a,$b,$c,$d,$e,$f)//參數依次對應為:1栋2楼A室,6栋4楼C室 { for($k=$c;$k <=c;$k++) { echo $a."幢".$b."层".$k."室"." <br>"; } for($j=$b+1;$j <=30;$j++) { for($k=a;$k <=c;$k++) { echo $a."幢".$j."层".$k."室"." <br>"; } } for( $i =$a+1;$i < $d ; $i++ ) { for($j=1;$j <=30;$j++) { for($k=a;$k <=c;$k++) { echo $i."幢".$j."层".$k."室"." <br>"; } } } for($j=1;$j <$e;$j++) { for($k=a;$k <=c;$k++) { echo $d."幢".$j."层".$k."室"." <br>"; } } for($k=a;$k <=$f;$k++) { echo $d."幢".$e."层".$k."室"." <br>"; } }$a=room(1,2,"a",6,4,"c");echo $a;?> 看看我的代码<?php//设置查询参数(格式为:x栋x层x室)$beginRoom = "4栋27层B室";$endRoom = "6栋6层C室";//查找字符串function select($patten, $room){ if(preg_match($patten, $room, $match)) { return $match[0]; } }function showRooms($beginRoom, $endRoom){ //获取第一个参数的数据 $beginDongNum =$beginRoom{0} ; $beginFloorNum = select("/(30|[1-2][0-9]|[1-9])/", substr($beginRoom,2)); $beginRoomNum = select("/[ABC]/", $beginRoom); //获取第二个参数的数据 $endDongNum =$endRoom{0}; $endFloorNum = select("/(30|[1-2][0-9]|[1-9])/", substr($endRoom,2));; $endRoomNum = select("/[ABC]/", $endRoom); //循环输出两者之间的数据 if ($beginDongNum<$endDongNum) { for(; $beginDongNum<=$endDongNum; $beginDongNum++,$beginFloorNum=1) for(; $beginFloorNum<=30; $beginFloorNum++,$beginRoomNum= "A") { for(; $beginRoomNum<="C"; $beginRoomNum++) { echo $beginDongNum."幢".$beginFloorNum."层".$beginRoomNum."室"." <br>"; } } } else if($beginDongNum==$endDongNum) { for(; $beginFloorNum<=$endFloorNum; $beginFloorNum++,$beginRoomNum ="A") for(; $beginRoomNum<="C"; $beginRoomNum++) { echo $beginDongNum."幢".$beginFloorNum."层".$beginRoomNum."室"." <br>"; } } else if($beginDongNum==$endDongNum && $beginFloorNum==$endFloorNum) { for(; $beginRoomNum<=$endRoomNum; $beginRoomNum++) { echo $beginDongNum_."幢".$beginFloorNum."层".$beginRoomNum."室"." <br>"; } }}showRooms($beginRoom, $endRoom);?> 对不起这也有问题,现在贴出正确的<?php//设置查询参数(格式为:x栋x层x室)$beginRoom = "2栋2层B室";$endRoom = "3栋1层C室";//查找字符串function select($patten, $room){ if(preg_match($patten, $room, $match)) { return $match[0]; } }function showRooms($beginRoom, $endRoom){ //获取第一个参数的数据 $beginDongNum =$beginRoom{0} ; $beginFloorNum = select("/(30|[1-2][0-9]|[1-9])/", substr($beginRoom,2)); $beginRoomNum = select("/[ABC]/", $beginRoom); //获取第二个参数的数据 $endDongNum =$endRoom{0}; $endFloorNum = select("/(30|[1-2][0-9]|[1-9])/", substr($endRoom,2)); $endRoomNum = select("/[ABC]/", $endRoom); //循环输出两者之间的数据 if ($beginDongNum<$endDongNum) { for(; $beginDongNum<$endDongNum; $beginDongNum++,$beginFloorNum=1) for(; $beginFloorNum<=30; $beginFloorNum++,$beginRoomNum= "A") { for(; $beginRoomNum<="C"; $beginRoomNum++) { echo $beginDongNum."幢".$beginFloorNum."层".$beginRoomNum."室"." <br>"; } } for(; $beginFloorNum<=$endFloorNum; $beginFloorNum++,$beginRoomNum ="A") for(; $beginRoomNum<="C"; $beginRoomNum++) { echo $beginDongNum."幢".$beginFloorNum."层".$beginRoomNum."室"." <br>"; } } else if($beginDongNum==$endDongNum) { for(; $beginFloorNum<=$endFloorNum; $beginFloorNum++,$beginRoomNum ="A") for(; $beginRoomNum<="C"; $beginRoomNum++) { echo $beginDongNum."幢".$beginFloorNum."层".$beginRoomNum."室"." <br>"; } }}showRooms($beginRoom, $endRoom);?> function RoomIndex($h,$f,$d){ return ($h-1)*30*3+($f-1)*3+$d-1;}function IndexToNo($index){ $h = $f = $d = 0; $h = (int)($index/90)+1; $index = $index%90; $f = (int)($index/3)+1; $d = $index%3+1; return $h.'幢'.$f.'楼'.chr(96+$d).'室';}//方便起见 1~3 => a~c$from = RoomIndex(1,1,1);$to = RoomIndex(3,2,3);for( $i=$from; $i<=$to; $i++ ) echo IndexToNo($i).'<br />'; 用PHP导出word但没图片,要怎么弄才能让图片一起导出到word里? 请教apache 启动错误。 看看这个类有什么问题!~~ OJS开放期刊系统的首页怎么修改 请帮忙这个Session报错是什么原因 插入数据库记录到指定位置 高手请看,很奇怪的状况 本人改的mysql数据库备份功能。 想在产品库存中提供报表打印功能,请大家技术援助一下 iis+php 上传文件大小显示ini里面已经进行了修改 请问 如何在包含*.php, *.class.php 等文件的文件夹里搜索指定的字符串(用什么软件)? 如何用post方式向服务器发送数据
for($i=1;$i<=6;$i++)
{
for($j=1;$j<=30;$j++)
{
for($k=a;$k<=c;$k++)
{
echo $i."幢".$j."层".$k."室"."<br>";
} }}?>
define ( DONG_NUM ,6);
define ( LAYER_NUM ,30);
for( $i = 1;$i <= DONG_NUM ; $i++ )
{
for($j=1;$j <=LAYER_NUM;$j++)
{
for($k=a;$k <=c;$k++)
{
echo $i."幢".$j."层".$k."室"." <br>";
}
}
} ?>
function room($a,$b,$c,$d,$e,$f)//參數依次對應為:1栋2楼A室,6栋4楼C室
{
for($k=$c;$k <=c;$k++)
{
echo $a."幢".$b."层".$k."室"." <br>";
}
for($j=$b+1;$j <=30;$j++)
{
for($k=a;$k <=c;$k++)
{
echo $a."幢".$j."层".$k."室"." <br>";
}
}
for( $i =$a+1;$i < $d ; $i++ )
{
for($j=1;$j <=30;$j++)
{
for($k=a;$k <=c;$k++)
{
echo $i."幢".$j."层".$k."室"." <br>";
}
}
}
for($j=1;$j <$e;$j++)
{
for($k=a;$k <=c;$k++)
{
echo $d."幢".$j."层".$k."室"." <br>";
}
}
for($k=a;$k <=$f;$k++)
{
echo $d."幢".$e."层".$k."室"." <br>";
}
}
$a=room(1,2,"a",6,4,"c");
echo $a;
?>
<?php
//设置查询参数(格式为:x栋x层x室)
$beginRoom = "4栋27层B室";
$endRoom = "6栋6层C室";//查找字符串
function select($patten, $room)
{
if(preg_match($patten, $room, $match))
{
return $match[0];
}
}function showRooms($beginRoom, $endRoom)
{
//获取第一个参数的数据
$beginDongNum =$beginRoom{0} ;
$beginFloorNum = select("/(30|[1-2][0-9]|[1-9])/", substr($beginRoom,2));
$beginRoomNum = select("/[ABC]/", $beginRoom); //获取第二个参数的数据
$endDongNum =$endRoom{0};
$endFloorNum = select("/(30|[1-2][0-9]|[1-9])/", substr($endRoom,2));;
$endRoomNum = select("/[ABC]/", $endRoom);
//循环输出两者之间的数据
if ($beginDongNum<$endDongNum)
{
for(; $beginDongNum<=$endDongNum; $beginDongNum++,$beginFloorNum=1)
for(; $beginFloorNum<=30; $beginFloorNum++,$beginRoomNum= "A")
{
for(; $beginRoomNum<="C"; $beginRoomNum++)
{
echo $beginDongNum."幢".$beginFloorNum."层".$beginRoomNum."室"." <br>";
}
}
}
else if($beginDongNum==$endDongNum)
{
for(; $beginFloorNum<=$endFloorNum; $beginFloorNum++,$beginRoomNum ="A")
for(; $beginRoomNum<="C"; $beginRoomNum++)
{
echo $beginDongNum."幢".$beginFloorNum."层".$beginRoomNum."室"." <br>";
}
}
else if($beginDongNum==$endDongNum && $beginFloorNum==$endFloorNum)
{
for(; $beginRoomNum<=$endRoomNum; $beginRoomNum++)
{
echo $beginDongNum_."幢".$beginFloorNum."层".$beginRoomNum."室"." <br>";
}
}
}
showRooms($beginRoom, $endRoom);
?>
<?php
//设置查询参数(格式为:x栋x层x室)
$beginRoom = "2栋2层B室";
$endRoom = "3栋1层C室";//查找字符串
function select($patten, $room)
{
if(preg_match($patten, $room, $match))
{
return $match[0];
}
}function showRooms($beginRoom, $endRoom)
{
//获取第一个参数的数据
$beginDongNum =$beginRoom{0} ;
$beginFloorNum = select("/(30|[1-2][0-9]|[1-9])/", substr($beginRoom,2));
$beginRoomNum = select("/[ABC]/", $beginRoom); //获取第二个参数的数据
$endDongNum =$endRoom{0};
$endFloorNum = select("/(30|[1-2][0-9]|[1-9])/", substr($endRoom,2));
$endRoomNum = select("/[ABC]/", $endRoom);
//循环输出两者之间的数据
if ($beginDongNum<$endDongNum)
{
for(; $beginDongNum<$endDongNum; $beginDongNum++,$beginFloorNum=1)
for(; $beginFloorNum<=30; $beginFloorNum++,$beginRoomNum= "A")
{
for(; $beginRoomNum<="C"; $beginRoomNum++)
{
echo $beginDongNum."幢".$beginFloorNum."层".$beginRoomNum."室"." <br>";
}
}
for(; $beginFloorNum<=$endFloorNum; $beginFloorNum++,$beginRoomNum ="A")
for(; $beginRoomNum<="C"; $beginRoomNum++)
{
echo $beginDongNum."幢".$beginFloorNum."层".$beginRoomNum."室"." <br>";
}
}
else if($beginDongNum==$endDongNum)
{
for(; $beginFloorNum<=$endFloorNum; $beginFloorNum++,$beginRoomNum ="A")
for(; $beginRoomNum<="C"; $beginRoomNum++)
{
echo $beginDongNum."幢".$beginFloorNum."层".$beginRoomNum."室"." <br>";
}
}
}
showRooms($beginRoom, $endRoom);
?>
function RoomIndex($h,$f,$d)
{
return ($h-1)*30*3+($f-1)*3+$d-1;
}function IndexToNo($index)
{
$h = $f = $d = 0;
$h = (int)($index/90)+1;
$index = $index%90;
$f = (int)($index/3)+1;
$d = $index%3+1;
return $h.'幢'.$f.'楼'.chr(96+$d).'室';
}
//方便起见 1~3 => a~c
$from = RoomIndex(1,1,1);
$to = RoomIndex(3,2,3);
for( $i=$from; $i<=$to; $i++ )
echo IndexToNo($i).'<br />';