Feladatmegoldás
Valósítsa meg az alábbi feladatot a tanult programozási nyelven:
Megoldás eredménye
4. feladat: az üres tábla:
........
........
........
........
........
........
........
........
6. feladat: a feltöltött tábla:
.....K..
........
K.......
....K...
K..K....
........
K......K
....K...
9. feladat: Üres oszlopok és sorok száma:
Oszlopok: 3
Sorok: 2
10. feladat:
tablak64.txt
Megoldás megvalósítása PHP nyelven
<?
class Tabla
{
private $T = array( array() ) ;
private $UresCella ;
function __construct( $c )
{
$this->UresCella = $c ;
for( $i=0 ; $i<=7; $i++ )
{
for( $j=0 ; $j<=7; $j++ )
{
$this->T[$i][$j] = $this->UresCella ;
}
}
}
function Megjelenit()
{
for( $i=0 ; $i<=7; $i++ )
{
for( $j=0 ; $j<=7; $j++ )
{
print $this->T[$i][$j] ;
}
print "<br>" ;
}
print "<br>" ;
}
function Elhelyez( $db )
{
for( $i=0 ; $i<$db; $i++ )
{
do
{
$x = rand(0,7) ;
$y = rand(0,7) ;
}
while( $this->T[$x][$y] != $this->UresCella ) ;
$this->T[$x][$y] = "K" ;
}
}
function UresOszlop( $m )
{
$i = 0 ;
while( $i<=7 && $this->T[$i][$m]==$this->UresCella )
{
$i++ ;
}
return !($i<=7) ;
}
function UresOszlopokSzama()
{
$db=0 ;
for( $i=0 ; $i<=7; $i++ )
{
if( $this->UresOszlop($i) ) $db++ ;
}
return $db ;
}
function UresSor( $m )
{
$i = 0 ;
while( $i<=7 && $this->T[$m][$i]==$this->UresCella )
{
$i++ ;
}
return !($i<=7) ;
}
function UresSorokSzama()
{
$db=0 ;
for( $i=0 ; $i<=7; $i++ )
{
if( $this->UresSor($i) ) $db++ ;
}
return $db ;
}
function FajlbaIr()
{
$fp = fopen("tablak64.txt","a") ;
for( $i=0 ; $i<=7; $i++ )
{
for( $j=0 ; $j<=7; $j++ )
{
fwrite( $fp , $this->T[$i][$j] ) ;
}
fwrite( $fp , "\r\n" ) ;
}
fwrite( $fp , "\r\n" ) ;
fclose($fp) ;
}
}
$t = new Tabla(".") ;
print "4. feladat: az üres tábla:<br>" ;
$t->Megjelenit() ;
$t->Elhelyez(8) ;
print "6. feladat: a feltöltött tábla:<br>" ;
$t->Megjelenit() ;
print "9. feladat: Üres oszlopok és sorok száma:<br>" ;
print "Oszlopok: " . $t->UresOszlopokSzama() . "<br>" ;
print "Sorok: " . $t->UresSorokSzama() . "<br>" ;
$tt[] = array() ;
if( file_exists("tablak64.txt") ) unlink("tablak64.txt") ;
for( $x=1 ; $x<=64; $x++ )
{
$tt[$x] = new Tabla("*") ;
$tt[$x]->Elhelyez($x) ;
$tt[$x]->FajlbaIr() ;
}
print "<br>10. feladat:<br>" ;
print "<a href='tablak64.txt' target=_blank>tablak64.txt</a><br>" ;
?>