Tutoriales de programacion
Manuales - Diseño - Recursos - Codigo Fuente - Foros - Herramientas - Libros - Trucos - Software - cursospropios - direct.
Codigo: volver a home - allscripts - asp - php - vb - perl - tips&tricks
Codigo Fuente en PHP
 
PHP Code
funciones en PHP que transforman un número a su equivalente en letraPHP Code

Descripcion:funciones en PHP que transforman un número a su equivalente en letra,Apto para rellenar cheques, pagarés, etc.. Está totalmente depurado.

Lenguaje: PHP
La función principal se llama "convertir_a_letras($numero)". Admite un rango desde "0.01" hasta "999999999.99" (incluyendo los dos decimales).

Enviado por Francisco J. Pedrero Ortega

Codigo Fuente
Copiar los codigos y pegar

<?php
// FUNCIONES DE CONVERSION DE NUMEROS A LETRAS.

function centimos()
{
global $importe_parcial;

$importe_parcial = number_format($importe_parcial, 2, ".", "") * 100;

if ($importe_parcial > 0)
$num_letra = " con ".decena_centimos($importe_parcial);
else
$num_letra = "";

return $num_letra;
} function unidad_centimos($numero)
{
switch ($numero)
{
case 9:
{
$num_letra = "nueve céntimos";
break;
}
case 8:
{
$num_letra = "ocho céntimos";
break;
}
case 7:
{
$num_letra = "siete céntimos";
break;
}
case 6:
{
$num_letra = "seis céntimos";
break;
}
case 5:
{
$num_letra = "cinco céntimos";
break;
}
case 4:
{
$num_letra = "cuatro céntimos";
break;
}
case 3:
{
$num_letra = "tres céntimos";
break;
}
case 2:
{
$num_letra = "dos céntimos";
break;
}
case 1:
{
$num_letra = "un céntimo";
break;
}
}
return $num_letra;
} function decena_centimos($numero)
{
if ($numero >= 10)
{
if ($numero >= 90 && $numero <= 99)
{
if ($numero == 90)
return "noventa céntimos";
else if ($numero == 91)
return "noventa y un céntimos";
else
return "noventa y ".unidad_centimos($numero - 90);
}
if ($numero >= 80 && $numero <= 89)
{
if ($numero == 80)
return "ochenta céntimos";
else if ($numero == 81)
return "ochenta y un céntimos";
else
return "ochenta y ".unidad_centimos($numero - 80);
}
if ($numero >= 70 && $numero <= 79)
{
if ($numero == 70)
return "setenta céntimos";
else if ($numero == 71)
return "setenta y un céntimos";
else
return "setenta y ".unidad_centimos($numero - 70);
}
if ($numero >= 60 && $numero <= 69)
{
if ($numero == 60)
return "sesenta céntimos";
else if ($numero == 61)
return "sesenta y un céntimos";
else
return "sesenta y ".unidad_centimos($numero - 60);
}
if ($numero >= 50 && $numero <= 59)
{
if ($numero == 50)
return "cincuenta céntimos";
else if ($numero == 51)
return "cincuenta y un céntimos";
else
return "cincuenta y ".unidad_centimos($numero - 50);
}
if ($numero >= 40 && $numero <= 49)
{
if ($numero == 40)
return "cuarenta céntimos";
else if ($numero == 41)
return "cuarenta y un céntimos";
else
return "cuarenta y ".unidad_centimos($numero - 40);
}
if ($numero >= 30 && $numero <= 39)
{
if ($numero == 30)
return "treinta céntimos";
else if ($numero == 91)
return "treinta y un céntimos";
else
return "treinta y ".unidad_centimos($numero - 30);
}
if ($numero >= 20 && $numero <= 29)
{
if ($numero == 20)
return "veinte céntimos";
else if ($numero == 21)
return "veintiun céntimos";
else
return "veinti".unidad_centimos($numero - 20);
}
if ($numero >= 10 && $numero <= 19)
{
if ($numero == 10)
return "diez céntimos";
else if ($numero == 11)
return "once céntimos";
else if ($numero == 11)
return "doce céntimos";
else if ($numero == 11)
return "trece céntimos";
else if ($numero == 11)
return "catorce céntimos";
else if ($numero == 11)
return "quince céntimos";
else if ($numero == 11)
return "dieciseis céntimos";
else if ($numero == 11)
return "diecisiete céntimos";
else if ($numero == 11)
return "dieciocho céntimos";
else if ($numero == 11)
return "diecinueve céntimos";
}
}
else
return unidad_centimos($numero);
} function unidad($numero)
{
switch ($numero)
{
case 9:
{
$num = "nueve";
break;
}
case 8:
{
$num = "ocho";
break;
}
case 7:
{
$num = "siete";
break;
}
case 6:
{
$num = "seis";
break;
}
case 5:
{
$num = "cinco";
break;
}
case 4:
{
$num = "cuatro";
break;
}
case 3:
{
$num = "tres";
break;
}
case 2:
{
$num = "dos";
break;
}
case 1:
{
$num = "uno";
break;
}
}
return $num;
} function decena($numero)
{
if ($numero >= 90 && $numero <= 99)
{
$num_letra = "noventa ";

if ($numero > 90)
$num_letra = $num_letra."y ".unidad($numero - 90);
}
else if ($numero >= 80 && $numero <= 89)
{
$num_letra = "ochenta ";

if ($numero > 80)
$num_letra = $num_letra."y ".unidad($numero - 80);
}
else if ($numero >= 70 && $numero <= 79)
{
$num_letra = "setenta ";

if ($numero > 70)
$num_letra = $num_letra."y ".unidad($numero - 70);
}
else if ($numero >= 60 && $numero <= 69)
{
$num_letra = "sesenta ";

if ($numero > 60)
$num_letra = $num_letra."y ".unidad($numero - 60);
}
else if ($numero >= 50 && $numero <= 59)
{
$num_letra = "cincuenta ";

if ($numero > 50)
$num_letra = $num_letra."y ".unidad($numero - 50);
}
else if ($numero >= 40 && $numero <= 49)
{
$num_letra = "cuarenta ";

if ($numero > 40)
$num_letra = $num_letra."y ".unidad($numero - 40);
}
else if ($numero >= 30 && $numero <= 39)
{
$num_letra = "treinta ";

if ($numero > 30)
$num_letra = $num_letra."y ".unidad($numero - 30);
}
else if ($numero >= 20 && $numero <= 29)
{
if ($numero == 20)
$num_letra = "veinte ";
else
$num_letra = "veinti".unidad($numero - 20);
}
else if ($numero >= 10 && $numero <= 19)
{
switch ($numero)
{
case 10:
{
$num_letra = "diez ";
break;
}
case 11:
{
$num_letra = "once ";
break;
}
case 12:
{
$num_letra = "doce ";
break;
}
case 13:
{
$num_letra = "trece ";
break;
}
case 14:
{
$num_letra = "catorce ";
break;
}
case 15:
{
$num_letra = "quince ";
break;
}
case 16:
{
$num_letra = "dieciseis ";
break;
}
case 17:
{
$num_letra = "diecisiete ";
break;
}
case 18:
{
$num_letra = "dieciocho ";
break;
}
case 19:
{
$num_letra = "diecinueve ";
break;
}
}
}
else
$num_letra = unidad($numero);

return $num_letra;
} function centena($numero)
{
if ($numero >= 100)
{
if ($numero >= 900 & $numero <= 999)
{
$num_letra = "novecientos ";

if ($numero > 900)
$num_letra = $num_letra.decena($numero - 900);
}
else if ($numero >= 800 && $numero <= 899)
{
$num_letra = "ochocientos ";

if ($numero > 800)
$num_letra = $num_letra.decena($numero - 800);
}
else if ($numero >= 700 && $numero <= 799)
{
$num_letra = "setecientos ";

if ($numero > 700)
$num_letra = $num_letra.decena($numero - 700);
}
else if ($numero >= 600 && $numero <= 699)
{
$num_letra = "seiscientos ";

if ($numero > 600)
$num_letra = $num_letra.decena($numero - 600);
}
else if ($numero >= 500 && $numero <= 599)
{
$num_letra = "quinientos ";

if ($numero > 500)
$num_letra = $num_letra.decena($numero - 500);
}
else if ($numero >= 400 && $numero <= 499)
{
$num_letra = "cuatrocientos ";

if ($numero > 400)
$num_letra = $num_letra.decena($numero - 400);
}
else if ($numero >= 300 && $numero <= 399)
{
$num_letra = "trescientos ";

if ($numero > 300)
$num_letra = $num_letra.decena($numero - 300);
}
else if ($numero >= 200 && $numero <= 299)
{
$num_letra = "doscientos ";

if ($numero > 200)
$num_letra = $num_letra.decena($numero - 200);
}
else if ($numero >= 100 && $numero <= 199)
{
if ($numero == 100)
$num_letra = "cien ";
else
$num_letra = "ciento ".decena($numero - 100);
}
}
else
$num_letra = decena($numero);

return $num_letra;
} function cien()
{
global $importe_parcial;

$parcial = 0; $car = 0;

while (substr($importe_parcial, 0, 1) == 0)
$importe_parcial = substr($importe_parcial, 1, strlen($importe_parcial) - 1);

if ($importe_parcial >= 1 && $importe_parcial <= 9.99)
$car = 1;
else if ($importe_parcial >= 10 && $importe_parcial <= 99.99)
$car = 2;
else if ($importe_parcial >= 100 && $importe_parcial <= 999.99)
$car = 3;

$parcial = substr($importe_parcial, 0, $car);
$importe_parcial = substr($importe_parcial, $car);

$num_letra = centena($parcial).centimos();

return $num_letra;
} function cien_mil()
{
global $importe_parcial;

$parcial = 0; $car = 0;

while (substr($importe_parcial, 0, 1) == 0)
$importe_parcial = substr($importe_parcial, 1, strlen($importe_parcial) - 1);

if ($importe_parcial >= 1000 && $importe_parcial <= 9999.99)
$car = 1;
else if ($importe_parcial >= 10000 && $importe_parcial <= 99999.99)
$car = 2;
else if ($importe_parcial >= 100000 && $importe_parcial <= 999999.99)
$car = 3;

$parcial = substr($importe_parcial, 0, $car);
$importe_parcial = substr($importe_parcial, $car);

if ($parcial > 0)
{
if ($parcial == 1)
$num_letra = "mil ";
else
$num_letra = centena($parcial)." mil ";
}

return $num_letra;
} function millon()
{
global $importe_parcial;

$parcial = 0; $car = 0;

while (substr($importe_parcial, 0, 1) == 0)
$importe_parcial = substr($importe_parcial, 1, strlen($importe_parcial) - 1);

if ($importe_parcial >= 1000000 && $importe_parcial <= 9999999.99)
$car = 1;
else if ($importe_parcial >= 10000000 && $importe_parcial <= 99999999.99)
$car = 2;
else if ($importe_parcial >= 100000000 && $importe_parcial <= 999999999.99)
$car = 3;

$parcial = substr($importe_parcial, 0, $car);
$importe_parcial = substr($importe_parcial, $car);

if ($parcial == 1)
$num_letras = "un millón ";
else
$num_letras = centena($parcial)." millones ";

return $num_letras;
} function convertir_a_letras($numero)
{
global $importe_parcial;

$importe_parcial = $numero;

if ($numero < 1000000000)
{
if ($numero >= 1000000 && $numero <= 999999999.99)
$num_letras = millon().cien_mil().cien();
else if ($numero >= 1000 && $numero <= 999999.99)
$num_letras = cien_mil().cien();
else if ($numero >= 1 && $numero <= 999.99)
$num_letras = cien();
else if ($numero >= 0.01 && $numero <= 0.99)
{
if ($numero == 0.01)
$num_letras = "un céntimo";
else
$num_letras = convertir_a_letras(($numero * 100)."/100")." céntimos";
}
}
return $num_letras;
}

Codigo perteneciente a Lawebdelprogramador

  Colabora con nosotros envianos tu codigo

 
Untitled Document
en esta seccion
Codigo de JavaScript
javascripts
Codigo de ASP
todo en asp
Codigo de PHP
todo en php
Codigo de VBasic
visual basic
Codigo de Perl
codigo en php
Codigo de VFox
codigo en php
Codigo de mySQL
codigo en php
Codigo de Oracle
codigo en php
Tips&Tricks
codigo en php
 
   

 

 

 

links programacion
Programacion : LWPI Solorecursos I programacion I abcdatos I TrucosTecnicos I servicios gratisI ofertas de ADSLI pueblos 2.0 I
Areas exclusivas: tutoriales I cursos I ofertas I adsl I reproductores dvd I Formación Iwebtutoriales
Otros: SMSarea I tutoriales I DIVXarea I tutoriales I trucos de windows Igooglemania Iofertas I programatium.net I canal compras I
site programatium.com : site1 - site2 - site3 - site4 - site5 - site6 - site7 - site8
manuales Sugiere un manual para esta seccion
who's online
Linkanos
www.programatium.com© 1999 - web esta optimizada para Microsoft explorer 6.0
tutoriales
stats