217 Kezdőlap - Vizsgafeladatok - Királynők - Megoldás
ujdomainek.hu

Királynők

Megoldás

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.KK..

9. feladat: Üres oszlopok és sorok száma:
Oszlopok: 2
Sorok: 3

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>" ;

?>




2020-05-28 03:25:02 Admin Köszönöm, ha Ön lesz az első, aki megírja ide véleményét, észrevételét, kérdését ezzel a lappal kapcsolatban.




Új hozzászólás:
E-mail cím:


Erre a címre küldjük ki a hozzászólás jóvá- hagyásához szükséges linket. Az e-mail címet sehol nem tesszük közzé.

Név:


Ez a név fog megjelenni az Ön hozzászólásai mellett.

Mennyi tizenkilenc + négy?
Számjegyekkel írja be!



Ez a robotok beírása elleni védelem miatt szükséges ellenőrzés.


© infojegyzet.hu, 2020. február