Consideremos un antiguo problema creado por Fibonacci o Leonardo de Pisa matemático italiano de la edad media. Se precisa conocer el número de parejas de conejos adulto resultantes de una pareja durante X meses si cada pareja adulta produce mensualmente una nueva pareja y los recien nacidos alcanzan su plena madures en el curso de un mes. NOTA: Al comenzar se contaba con una pareja de adultos.
lunes, 21 de julio de 2008
Validar e-mail en JavaScript
Este Script valida la entrada de una dirección de correo, si es correcta deja continuar con la ejecución del programa y si no, nos dará un mensaje de error, pidiendo entrar de nuevo la dirección del e-mail.
Comprueba que haya un nombre antes de la @, que esta exista y que después de ella haya un nombre, un punto y dos o tres caracteres (.es, .com, .net, etc.…)
Nota: Este código puede ser insertado libremente en cualquier Web.
<HTML>
<HEAD>
</HEAD>
<BODY>
<SCRIPT LANGUAGE="JavaScript">
function isEmailAddress(theElement, nombre_del_elemento )
{
var s = theElement.value;
var filter=/^[A-Za-z][A-Za-z0-9_]*@[A-Za-z0-9_]+\.[A-Za-z0-9_.]+[A-za-z]$/;
if (s.length == 0 ) return true;
if (filter.test(s))
return true;
else
alert("Entre una dirección de corre valida");
theElement.focus();
return false;
}
</SCRIPT>
<FORM><INPUT TYPE="text" NAME="TextField">
<INPUT TYPE="submit" VALUE="Ejecutar"
ONCLICK="return isEmailAddress(TextField,'TextField' )"> </FORM></BODY>
</HTML>
Aumentando nuestra privacidad
Una de las grandes novedades que nos trae Firefox 3 es la nueva barra de direcciones más poderosa e inteligente. Esta es capaz de predecir a que URL queremos acceder con solo presionar unas pocas teclas, tomando como referencia nuestro historial de navegación, sitios favoritos (bookmarks), títulos de páginas visitadas, etc. Ya no hace falta escribir direcciones URLs completas, la nueva barra tratara de adivinar a que sitio queremos acceder a medida que tecleamos la dirección del mismo.
Pero que pasaría si compartimos nuestro navegador con otras personas o si alguien utiliza casualmente nuestra PC y no queremos que se enteren de que visitamos “ciertos sitios”. En ese caso lo que debemos hacer es deshabilitar la barra haciendo lo siguiente:
1. En la barra de direcciones escribimos
about:config
2. Establecemos el parámetro
browser.urlbar.matchonlytyped
en True
3. Reiniciamos Firefox
¡Listo!
Ahora les recomendaría limpiar el historial de navegación: Abrimos el menú Herramientas > Opciones y nos dirigimos a la pestaña Privacidad, hacemos click en el botón [Limpiar ahora…] y luego en [Limpiar datos privados ahora] para eliminar cualquier rastro que nos vincule con lo que no queremos que se sepa.
Panel de Control
No en todo momento tenemos acceso al panel de control de nuestra maquina por causa de restricciones o configuración. Una forma de tener acceso a este es mediante la función Shgetspecialfolderlocation que brinda Delphi. Para la programación de esta necesitamos capturar diferentes procesos del sistema. A continuación se muestra una Unit de código de ejemplo.
//Programa que muestra el Panel de Control...
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,ShellApi , ShlObj, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{
Private declarations
}
public
{
Public declarations
}
end;
var
Form1: TForm1;
PIDL : PitemIdlist;
Info : Tshellexecuteinfo;
PInfo : Pshellexecuteinfo;
Waitcode : DWord;
implementation
{
$R *.dfm
}
procedure TForm1.Button1Click(Sender: TObject);
begin
Shgetspecialfolderlocation(Handle,CSIDL_CONTROLS,PIDL);
PInfo := @Info;
with Info do
begin
Cbsize := sizeof(Info);
Fmask := see_mask_nocloseprocess+ see_mask_idlist;
Wnd := handle;
Lpverb := nil;
Lpfile := nil;
Lpdirectory := nil;
Nshow:=SW_NORMAL;
Hinstapp:=0;
Lpidlist:=PIDL;
end;
ShellexecuteEx(PInfo);
repeat Waitcode:=waitforsingleobject(Info.hprocess,500);
Application.ProcessMessages;
until (Waitcode<>Wait_timeout);
end;
end
FunnyNewton
Un interesante código que nos permitirá gastarle una buena broma a un amigo. Tengase en cuenta que lo más importante aqui no es el programa en si, sino el código que tras este se encuentra.
Archivos relacionados
FunnyNewton.zip