Ver Mensaje Individual
  #23 (permalink)  
Antiguo 05/11/2003, 04:41
Avatar de KarlanKas
KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 5 meses
Puntos: 61
Y este es el código solo para el que quiera cotillear...

Código PHP:
<html>
<
head>
    <
title>Coherencia</title>
    <
style>
    
input{
    
font:normal 10px/10px verdana;
    
color:navy;
    
border:solid 1px black;
    }
    
form{    font:bold 10px/10px verdana;
    
color:black}
    </
style>
<
script>
var 
palabra=new Array();
var 
controlDePalabra=new Array();
var 
maximoconsonante=new Array();
var 
maximovocal=new Array();
var 
laFrase="";
var 
q=0
var vocales="AEIOUÁÉÍÓÚ";
var 
consonantes="BCDFGHJKLMNÑPQRSTVWXYZ";
var 
comprobado;
var 
mal=0;
var 
fraseInicial="";
var 
espacio=0;
var 
parabola="";
var 
revision=false;
//------EDITABLE-----------
var palabraMasCorta=2;
var 
maximoDeVocales=2;
var 
maximoDeConsonantes=2;
var 
inconsistenteSiTieneJuntas=3
//---------------------------

function comprobarCoherencia(frase){
fraseInicial="";
laFrase="";

var 
control=0;

// Quitar los espacios de más

for (a=0;a<frase.length;a++){
    if(
frase.charAt(a)==" "){espacio+=1}
    else{
    
espacio=0
    
}

    if(
espacio<2){
        
fraseInicial+=frase.charAt(a)
        }
    }
if(
fraseInicial.substring(fraseInicial.length-1)==" "){
fraseInicial=fraseInicial.substring(0,fraseInicial.length-1);
}
frase=fraseInicial

//Separar por palabras la frase

frase=frase.toUpperCase();
palabra=frase.split(" ");

//Quitar los caracteres extraños y poner las primeras letras de cada
// palabra en mayusculas

for (b=0;b<palabra.length;b++){
for(
a=0;a<palabra[b].length;a++){
letra=palabra[b].charAt(a);
if(
isNaN(letra) && letra.toUpperCase()!=letra.toLowerCase()){
laFrase+=(a==0)?letra:letra.toLowerCase();
parabola+=letra
}

}
palabra[b]=parabola;
parabola=""
laFrase+=" ";
}

//sustituir lo introducido por el resultado de quitar los espacios de más
// y los caracteres extraños

document.forms[0].elements[0].value=laFrase;
if(
laFrase==""){return false;}

//Comprobar la coherencia y que no haya
//más consonantes y vocales juntas del 
//máximo permitido


for (b=0;b<palabra.length;b++){

maximoconsonante[b]=0;
maximovocal[b]=0;
control=0;
consonante=0;
vocal=0;
for(
a=0;a<palabra[b].length;a++){
comprobado=0;
letra=palabra[b].charAt(a);
if (
vocales.indexOf(letra)>-1){
control+=1
vocal
+=1
if(consonante>maximoconsonante[b]){
maximoconsonante[b]=consonante;

}

consonante=0
}
if(
consonantes.indexOf(letra)>-1){
comprobado=1;control-=1
consonante
+=1
if(vocal>maximovocal[b]){
maximovocal[b]=vocal;}
vocal=0
}
}
if(
consonante>maximoconsonante[b]){
maximoconsonante[b]=consonante;}
if(
vocal>maximovocal[b]){
maximovocal[b]=vocal;}
controlDePalabra[b]=control;}

// Marcar los errores

for (a=0;a<palabra.length;a++){
b=a+1;
Mensaje="Palabra número " ": "+palabra[a];

if (
maximoconsonante[a]>maximoDeConsonantes){
Mensaje+="\nTiene mas de "+maximoDeConsonantes+" consonantes juntas";
mal=1;
}
if(
maximovocal[a]>maximoDeVocales){
Mensaje+="\nTiene mas de "maximoDeVocales" vocales juntas";
mal=1;
}

if(
Math.abs(controlDePalabra[a])>=inconsistenteSiTieneJuntas){
Mensaje+="\nTiene una falta de consistencia";
mal=1;
}
if(
palabra[a].length<=palabraMasCorta){
Mensaje+="\nEs demasiado corta";
mal=1;
}
if(
mal==1){alert(Mensaje);}
mal=0;

}

}

</script>
</head>

<body>

<form action='javascript:alert("Enviado!")' >
Nombre: <input onfocus="this.value=''" type="text"><br><br>

<input 
type="button" 
Value="Comprobar consistencia" 
onclick="comprobarCoherencia(document.forms[0].elements[0].value)">
</form>
</body>
</html> 
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.

Última edición por KarlanKas; 05/11/2003 a las 04:46