Está en la página 1de 2

<?

php

function imprime_A($dim,$A) {
// Impresion arreglo
for ($_i = 0; $_i < $dim ; $_i++) {
for ($_j = 0; $_j < $dim ; $_j++) {
echo "({$A[4*$_i+$_j]}) ";
}
echo "\n";
}
}
$dim = 4; // dimension de la matriz
$A= array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,'X'); // arreglo
shuffle($A);
$i = $dim-1; $j = $dim-1; // dimensiones arreglo
// Impresion arreglo
for ($_i = 0; $_i < $dim ; $_i++) {
for ($_j = 0; $_j < $dim ; $_j++) {
if($A[4*$_i+$_j] == 'X'){$i=$_i; $j=$_j; break;}
}
echo "\n";
}

$comp=0; // Para establecer si el arreglo esta ordenado


imprime_A($dim,$A);
while ( $comp < ($dim*$dim-1) ){
$comp=0;
echo "\n*****-----*****-----*****-----*****\n";
echo "Ingrese el movimiento deseado : ";
$stdin = fopen('php://stdin', 'r'); $m=fgetc($stdin); fclose($stdin);
switch ($m) {
case 'z': if($i+1 < $dim){ $A[4*$i+$j] = $A[4*($i+1)+$j]; $A[4*(++$i)
+$j]='X'; } break;
case 's': if($i-1 >= 0 ){ $A[4*$i+$j] = $A[4*($i-1)+$j]; $A[4*(--$i)
+$j]='X'; } break;
case 'd': if($j+1 < $dim){ $A[4*$i+$j] = $A[4*$i+($j+1)]; $A[4*$i+(++
$j)]='X'; } break;
case 'a': if($j-1 >= 0 ){ $A[4*$i+$j] = $A[4*$i+($j-1)]; $A[4*$i+(--
$j)]='X'; } break;
default: break;
}
imprime_A($dim,$A);
// Comprobar si el arreglo esta ordenado
for ($k = 0; $k < ($dim*$dim-1) ; $k++) { if ( $A[$k] == $k+1 ){ $
comp++; if ($comp == ($dim*$dim-1)){echo "*****-----Ganaste-----*****";} } }//f
or
}// end while
?>
<?php
// 1 Clasificacion de los productos
$denominaciones= array(50, 100, 200, 500, 1000, 2000, 5000, 10000, 20000, 50000,
100000);
$producto= array('Jumbo','Alpina','Galleta_tosh','Galleta_festival','Mani_la_esp
ecial','Pony_malta','Hit_pet','7_up','Mountain_dew','Craquenas','DeTodito','Papa
_Margarita','Arandanos','Natuchips','Galleta_Avellana','Masmelos','Choclitos','C
ocaCola_zero','Nectar _manzana','Agua Brisa');
$precio = array(1550,2250,1050,450,1300,1300,1650,2250,1750,3850,4000,2750,1850,
850,650,2150,550,2100,1450,1950);
$codigo = array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20);
print("\n");
print_r ($producto);
print_r ($precio);
print_r ($codigo);
print("\n\n\n\n");
// 2 Entrada de dinero
echo "Ingrese el codigo del producto -> ";
$indice_code=(int)fgets(STDIN);
for ($i = 1; $i <= 20 ; $i++) {
if ($indice_code == $codigo[$i]) {
$indice_code=$i;
break;
}
}
$dinero_actual=0;
while ($dinero_actual < $precio[$indice_code]){
echo "Ingrese el dinero\n";
$Cash=(int)fgets(STDIN);
$dinero_actual=$dinero_actual+$Cash;
echo "dinero actual -> $dinero_actual\n";
}
echo "producto -> $producto[$indice_code]\n\n";
$devuelta=$dinero_actual-$precio[$indice_code];
$indice=0;
$temp=0;
echo "devuelta -> $devuelta\n\n";
while ($devuelta > 0){
$temp=$devuelta-$denominaciones[10-$indice];
if ($temp >= 0){
$devuelta=$temp;
echo "devuelta -> {$denominaciones[10-$indice]}\n";
}
else{
$indice=$indice+1;
}
}
?>

También podría gustarte