-
-
Save davidsierradz/50a084e75b23681a0bbf7517325e3396 to your computer and use it in GitHub Desktop.
Preguntas PHP examen online BairesDev
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Funcion que revisa si una palabra es palindromo o casi palindromo | |
* solo necesita un cambio de una letra maximo para serlo. | |
* | |
**/ | |
function isCasiPalindromo ($palabra) { | |
$casiCounter = 0; | |
if (strrev($palabra) === $palabra) { | |
return true; | |
} | |
else { | |
for ($i = 0; $i < strlen($palabra); $i++) { | |
if ($palabra[$i] !== strrev($palabra)[$i]) { | |
$casiCounter++; | |
} | |
} | |
if ($casiCounter > 2) { | |
return false; | |
} else { | |
return true; | |
} | |
} | |
} | |
/** | |
* Funcion que recibe un array con enteros positivos y retorna | |
* el numero que mas veces aparece, si hay dos o mas numeros que | |
* aparecen igual veces, retorna el menor. | |
* | |
**/ | |
function NumMasPopular ($array) { | |
$arrayValues = array_count_values($array); | |
arsort($arrayValues); | |
if (current($arrayValues) !== next($arrayValues)) { | |
prev($arrayValues); | |
return key($arrayValues); | |
} else { | |
$numberEqualsValues = 0; | |
foreach ($arrayValues as $key => $value) { | |
if ($arrayValues[$key] === $arrayValues[$key+1]) { | |
$numberEqualsValues++; | |
} | |
} | |
$returnValue; | |
reset($arrayValues); | |
for ($i = 0; $i < $numberEqualsValues; $i++) { | |
if(current($arrayValues) === next($arrayValues)) { | |
prev($arrayValues); | |
$key1 = key($arrayValues); | |
next($arrayValues); | |
$key2 = key($arrayValues); | |
$returnValue = $key1 < $key2 ? $key1 : $key2; | |
} | |
} | |
return $returnValue; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment