Skip to content

Instantly share code, notes, and snippets.

@davidsierradz
Created March 16, 2017 04:35
Show Gist options
  • Save davidsierradz/50a084e75b23681a0bbf7517325e3396 to your computer and use it in GitHub Desktop.
Save davidsierradz/50a084e75b23681a0bbf7517325e3396 to your computer and use it in GitHub Desktop.
Preguntas PHP examen online BairesDev
/**
* 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