Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: DRANXZ88 en 16 de Diciembre 2016, 21:56

Título: Comparar cadenas PHP: strcmp,strcasecmp.Rellenar: str_pad (CU00829B)
Publicado por: DRANXZ88 en 16 de Diciembre 2016, 21:56
Ejercicios resueltos.
Código: [Seleccionar]
<!DOCTYPE html>

<html>
    <head>
        <meta charset="UTF-8">
        <title>Comparar cadenas PHP: strcmp, ==, === No distinguir mayúscula: strcasecmp. Rellenar: str_pad (CU00829B)</title>
    </head>
    <body>
        <?php
        
echo"<h1>a)</h1>";
        echo
"<br/>";
        
$cadena1 "aprender";
        
$cadena2 "aprende";
        echo 
'<p>' str_pad($cadena119'*'STR_PAD_BOTH) . '</p>';
        echo
"<br/>";
        echo 
'<p>' str_pad($cadena218'*'STR_PAD_BOTH) . '</p>';
        echo
"<br/>";
        echo
"<h1>b)</h1>";
        echo
"<br/>";
        
$aprender substr($cadena103);
        
//echo"$aprender";
        
$apende substr($cadena203);
        
//echo "$apende";
        
if (strcmp($aprender$apende) == 0) {
            echo 
"La palabra $aprender es igual a $apende";
        }
        echo
"<br/>";
        echo
"<h1>b)</h1>";
        echo
"<br/>";
        
$cadena3 "ApRendEr A proGraMar.cOm";
        
$cadenaMinuscula strtolower($cadena3);
        
//echo"$cadenaMinuscula";
        
$longitud strlen($cadenaMinuscula);
        
//echo $longitud;
        
if ($longitud == 0) {
            echo 
'<p>' str_pad($cadenaMinuscula, ($longitud + ($longitud 2)), '*'STR_PAD_BOTH) . '</p>';
        } else {
            echo 
'<p>' str_pad($cadenaMinuscula, ($longitud + ($longitud 2) + 1), '*'STR_PAD_BOTH) . '</p>';
        }
        
?>

    </body>
</html>
Título: Re:Comparar cadenas PHP: strcmp,strcasecmp.Rellenar: str_pad (CU00829B)
Publicado por: pedro,, en 20 de Diciembre 2016, 14:11
Hola DRANXZ88

En el apartado a dice que el número de asteriscos será siempre 5 a cada lado aunque se cambien las cadenas, en tu respuesta no sucede así.

En apartado b hace lo que pide el enunciado, aunque si usas "strncmp()" te ahorrarías el uso de las dos variables que creas para guardar las tres primeras letras de cada palabra.

El apartado c está bien.

Saludos. ;D