sábado, 31 de diciembre de 2011

Su nuevo Doodle de google festejando el 2012


Su ultimo Doodle de google de este año es festejando el año nuevo que vendra o viene mas bien dicho, que este año se cumplan todas sus perspectivas y logros de este año 2012 ...

::: Feliz año 2012 :::



Publicado por Time

jueves, 29 de diciembre de 2011

video sobre esta fechas "The Artist"


Del siguiente vídeo se puede llegar a reflexionar sobre lo bueno y malo que deja el querer ser siempre el mejor. No es que sea algo negativo, pero como en todo, hay que saber cuando parar, pues si bien es agradable sobresalir, no siempre dejará cosas benéficas, como podríamos llegar a creer. De eso trata el vídeo que les dejo a continuación, échenle un ojo, pues aparte los entretendrá por unos cuantos minutos.


The Artists from Giant Creative on Vimeo.



Publicado por Time
Visto en PuntoGeek

¿Qué pasa el día después de la Navidad?

Algo que se me ocurrió después de las festividades de la navidad y prospero a festejar el año nuevo, espero les guste.

Como les fue después de recibir regalos y estar con sus seres queridos en esta nochebuena y navidad ...


Para conservar la emoción de la navidad; "que harías" ...

Publicacion de Time

miércoles, 28 de diciembre de 2011

Activaciones en esta navidad de iSO Y Android

Santa Claus se ha pasado por el centro comercial y a comprado millones de dispositivos con iOS y Android para regalar. Es por esa razón que los dos sistemas operativos para dispositivos móviles más populares Android y iOS han batido un record en activaciones este pasado 25 de diciembre.

A comienzos de diciembre, desde el primero hasta el 20 se reportaron aproximadamente 1,5 millones de activaciones y luego en navidad en unas pocas horas el número se hizo un 353 % más grande osea 6,8 millones de activaciones. Eso quiere decir que en este momento más de 8,3 millones de personas disfrutan de su dispositivo móvil con Android o iOS.




Artículo copiado de Punto Geek
Publicado de Time

sábado, 17 de diciembre de 2011

Papiroflexia y Stop Motion

Acá un vídeo interesante sobre la creatividad y un toque de originalidad y humor y si no me creen véanlo ustedes mismo ...

PROTEIGON from BURAYAN on Vimeo.





Publicacion de Time

viernes, 9 de diciembre de 2011

How to Arsenio Lupín: Dark Reign y La Utopia Mutante

How to Arsenio Lupín: Dark Reign y La Utopia Mutante
oye arsenio algo le paso a todas las descargas, no puedo descargar ningun comic de dar reign lo podrias arreglaar porfa

jueves, 1 de diciembre de 2011

Para hacer una agenda en C#sharp

Se debe realizar el programa de una agenda. Para ello se debe crear la clase Agenda, que poseerá los siguientes atributos:

ATRIBUTO:_______ TIPO: _____ACCESIBILIDAD _____-LECTURA/ESCRITURA

Id ______________int_________ privado____________ solo lectura
Amigo _________ Persona______ "____________________ si
Observaciones ___string ________"____________________ si
Alarma _______ DateTime______ "_____________________ si


La clase Persona


ATRIBUTO_____ ________TIPO____ ACCESIIBILIDAD____ LECTURA/ESCRITURA



nombre _______________string______ privado_______________ si
Apellido _________________"___________ " __________________si
Telefono ________________"___________ " __________________si
Fecha de nacimiento ____ DateTime______ "__________________ si


Los datos de las personas se deben persistir en un archivo llamado ‘agenda.xml’.
Cada vez que se abra se debe el campo observaciones de todos los registros que tengan ‘seteada’ la alarma en esa fecha (fecha actual). Para ello se deberá llamar al método de clase TrerAniversarios.
Dado que el programa requiere de varias tareas, se deberá contar con un menú de opciones como el siguiente:
  • Cargar personas
  • Modificación de datos
  • Eliminar personas
  • Aniversarios
  • Buscar
  • Realizar backup
  • Salir
El menú se debe mostrar en mayúscula y en color (distinto al blanco) la letra que hay que presionar para elegir la opción.
A continuación se describe la función de cada ítem del menú de opciones.

Cargar personas: Permite cargar los datos la primera vez y agregar datos una vez generado el archivo. El ‘Id’, que identifica a cada persona, deberá ser auto numérico. Si el archivo no contiene registros el primero será el 1.

Modificación de datos: Permite al usuario modificar algún campo en particular. El registro a modificar se busca ingresando el nombre y apellido en el archivo, si el registro existe, se permitirá modificar cualquier campo (a excepción de Id), previa confirmación del usuario. Si el registro no existe, se deberá informar adecuadamente.

Eliminar personas: Al ingresar a esta opción se ingresará el nombre, apellido y/o Id. Si el registro existe, se eliminara esa persona del archivo, previa confirmación por parte del usuario. Si el registro no existe, se deberá informar adecuadamente.

Aniversarios: Se mostrara por pantalla todos los datos de las personas que cumplan años en ese día. Para esto no se debe ingresar la fecha, el programa debe tomar la fecha del sistema.

Buscar personas: Se debe mostrar un submenú como el siguiente:
·Buscar por apellido
·Buscar por localidad
Para buscar por apellido se ingresara el dato y, si existe, se mostraran todos los datos de la o las personas que coincidan con el apellido ingresado.
Misma tarea tendrá la opción de búsqueda por localidad.

Realizar backup: Al elegir esta opción se realizara una copia de seguridad del archivo ‘agenda.xml’, la copia de seguridad se llamara ‘agendabackup.xml’

Salir: Termina con la ejecución del programa.

NOTAS
  • Todas las opciones del menú se deben realizar por métodos del objeto miAgenda, que será creado en el Main.
  • Se deberá crear una lista de Agenda para serializar y/o deserializar.
  • Todos los ingresos de datos deben ser claros para el usuario, por ejemplo, ingresar las fechas con formato DD/MM/AAAA.
  • Todas las pantallas deben ser hechas en forma prolija, como por ejemplo mostrar los datos encolumnados y alineados por algún criterio.
  • Utilizar rutinas de control de errores y validación de datos.
  • Cada vez que se realice una carga, modificación o borrado de registros se deberá llamar al método estático GuardarEnDisco.
  • Respetar las nomenclaturas para atributos, métodos, clases, propiedades, etc.
  • Utilizar comentarios documentados y todo aquello que crea necesario para la mejor comprensión del programa.
  • Agregue todo aquello que crea necesario para una buena presentación de las pantallas e interfaz con el usuario.


























using System;
using System.Collections.Generic;
using System.Text;
using System.Xml;
using System.Xml.Serialization;

namespace agenda
{
class Persona
{
#region Atributos

private int _id;
private string _nombre;
private string _apellido;
private string _tel;
private DateTime _nacimiento;
private string _local;

#endregion

#region Propiedades

public int Id
{
get { return _id; }
}

public string Nombre
{
get { return _nombre; }
set { _nombre = value; }
}

public string Apellido
{
get { return _apellido; }
set { _apellido = value; }
}

public string Tel
{
get { return _tel; }
set { _tel = value; }
}

public DateTime Nacimineto
{
get { return _nacimiento; }
set { _nacimiento = value; }
}

public string Local
{
get { return _local; }
set { _local = value; }
}

#endregion

#region Constructor

public Persona()
{ }

public Persona(string nom, string ape, string tel, DateTime nacimiento, string local)
{
_nombre = nom;
_apellido = ape;
_tel = tel;
_nacimiento = nacimiento;
_local = local;
}

#endregion

}

[Serializable]
class Agenda
{
#region Atributos

private List<string> _observaciones;
private List<Persona> _amigo;
private List<DateTime> _alarma;
public const string FILE = "c:\\MiAgenda.xml";

#endregion

#region Propiedades

public List<string> Observaciones
{
get { return _observaciones; }
set { _observaciones = value; }
}
public List<Persona> Amigo
{
get { return _amigo; }
set { _amigo = value; }
}
public List<DateTime> Alarma
{
get { return _alarma; }
set { _alarma = value; }
}

#endregion

#region Metodos

static public void GuardarEnDisco(Agenda aux)
{
XmlTextWriter wr = new XmlTextWriter(FILE, Encoding.UTF8);
XmlSerializer sr = new XmlSerializer(typeof(Agenda));
sr.Serialize(wr, aux);
Console.WriteLine("Guardando datos...");
Console.ReadKey();
Console.WriteLine("Datos guardados");
Console.Read();

}
public Agenda()
{
_observaciones =new List<string>();
_amigo = new List<Persona>();
_alarma = new List<DateTime>();
}
public void CargarPersonas()
{

Console.WriteLine("Nombre:");
string nom = Console.ReadLine();

Console.WriteLine("Apellido:");
string ape = Console.ReadLine();

Console.WriteLine("Teléfono: ");
string tel = Console.ReadLine();

Console.WriteLine("Localidad: ");
string loc = Console.ReadLine();

Console.WriteLine("Ingrese Fecha de nacimiento: \n Año:");
int año = int.Parse(Console.ReadLine());
Console.WriteLine("Mes:\n");
int mes = int.Parse(Console.ReadLine());
Console.WriteLine("Dia: ");
int dia = int.Parse(Console.ReadLine());

DateTime fech = new DateTime(año, mes, dia);

Persona auxx = new Persona(nom, ape, tel, fech, loc);
Amigo.Add(auxx);

}

public void ModificarDatos(Agenda aux)
{
GuardarEnDisco(aux);
string rta = "s";
while (rta == "s")
{

Console.WriteLine("Datos de la persona a buscar:");
Console.WriteLine("Nombre:");
string auxnom = Console.ReadLine();
Console.WriteLine("Apellido:");
string auxape = Console.ReadLine();
//Persona aux=new Persona();
int flag = 0;

foreach (Persona a in Amigo)
{
if (a.Nombre == auxnom && a.Apellido == auxape)
{
flag = 1;
Console.WriteLine("Ingrese nuevos datos");
CargarPersonas();

}
}
if (flag == 0)
{
Console.WriteLine("Persona inexistente");
Console.Read();
}
Console.WriteLine("Modificar otro -> s/n?");
rta = Console.ReadLine();
while (rta != "s" || rta != "n")
{
Console.WriteLine("Respuesta no valida\nReingrese");
Console.WriteLine("Modificar otro -> s/n?");
rta = Console.ReadLine();
}
}


}

public void EliminarPersonas(Agenda aux)
{
GuardarEnDisco(aux);
string rta = "s";
while (rta == "s")
{

Console.WriteLine("Datos de la persona a eliminar:");
Console.WriteLine("Nombre:");
string auxnom = Console.ReadLine();
Console.WriteLine("Apellido:");
string auxape = Console.ReadLine();
//Persona aux=new Persona();
int flag = 0;

foreach (Persona a in Amigo)
{
if (a.Nombre == auxnom && a.Apellido == auxape)
{
flag = 1;
Console.WriteLine("Realmente desea eliminar esta persona?");
Console.WriteLine("Nombre:{0}\nApellidp:{0}", auxnom, auxape);
Console.WriteLine("s/n?");
string op = Console.ReadLine();

while (op != "s" || op != "n")
{
Console.WriteLine("Respuesta no valida\nReingrese:");
Console.WriteLine("Eliminar ->s/n?");
op = Console.ReadLine();
}

if (rta == "s")
{
Console.WriteLine("Persona Eliminada");
}


}
}
if (flag == 0)
{
Console.WriteLine("Persona inexistente");
}
Console.WriteLine("Eliminar otro -> s/n?");
rta = Console.ReadLine();
while (rta != "s" || rta != "n")
{
Console.WriteLine("Respuesta no valida\nReingrese");
Console.WriteLine("Eliminar otro -> s/n?");
rta = Console.ReadLine();
}
}
}

public void BuscarPersonas()
{
Console.WriteLine(" BUSQUEDA DE PERSONAS \n ");
Console.WriteLine("1-por apellido\n2-por loccalidad");
int opi = int.Parse(Console.ReadLine());

while (opi != 1 && opi != 2)
{
Console.WriteLine(" ERROR, opcion no valida reingrese\nBUSQUEDA DE PERSONAS \n ");
Console.WriteLine("1-por apellido\n2-por loccalidad");
opi = int.Parse(Console.ReadLine());

}

int esta = 0;

if (opi == 1)
{
Console.WriteLine(" Ingrese Apellido: \n");
string auxape = Console.ReadLine();


foreach (Persona var in _amigo)
{
if (auxape == var.Apellido)
Console.WriteLine("ID:{0}\nNombre:{0}\nApellido:{0}\nFecha de nacimiento:{0}\nTelefono:{0}\nLocalidad:{0}", var.Id, var.Nombre, var.Apellido, var.Nombre, var.Tel, var.Local);
Console.Read();
esta = 1;

}
}
else
{
Console.WriteLine(" Ingrese Localidad: \n");
string auxloki = Console.ReadLine();


foreach (Persona var in _amigo)
{

if (auxloki == var.Local)
Console.WriteLine("ID:{0}\nNombre:{0}\nApellido:{0}\nFecha de nacimiento:{0}\nTelefono:{0}\nLocalidad:{0}", var.Id, var.Nombre, var.Apellido, var.Nombre, var.Tel, var.Local);
Console.Read();
esta = 1;

}
}

if (esta == 0)
Console.WriteLine(" la persona es inexistente");
}

public void Aniversarios()
{
DateTime actual = DateTime.Now;
int flag = 0;
foreach (Persona fecha in Amigo)
{
if (fecha.Nacimineto == actual)
{
flag = 1;
Console.WriteLine("FELIZ CUMPLEAÑOS {0}{1}\n", fecha.Nombre, fecha.Apellido);
Console.WriteLine("ID:{0}\nNombre:{0}\nApellido:{0}\nFecha de nacimiento:{0}\nTelefono:{0}\nLocalidad:{0}", fecha.Id, fecha.Nombre, fecha.Apellido, fecha.Nombre, fecha.Tel, fecha.Local);
Console.Read();
}
}

if (flag == 0)
{
Console.WriteLine("No hay aniversarios");
Console.ReadLine();
}
}

public void Salir()
{
Console.WriteLine("SALIR, ADIOOOOSS!!");
Console.Read();
}
public void DefinirAlarma()
{
Console.WriteLine("ingrse fecha de recordatorio");
Console.WriteLine("Año:");
int año = int.Parse(Console.ReadLine());

while (año < DateTime.Now.Year)
{
Console.WriteLine("ERROR, REINGRSE año:");
año = int.Parse(Console.ReadLine());
}

Console.WriteLine("Mes:\n");
int mes = int.Parse(Console.ReadLine());

while (mes < DateTime.Now.Month)
{
Console.WriteLine("REINGRESE Mes:");
mes = int.Parse(Console.ReadLine());

}

Console.WriteLine("Dia: ");
int dia = int.Parse(Console.ReadLine());
while (dia > 31 && dia < 0)
{
Console.WriteLine("REINGRESE dia:");
dia = int.Parse(Console.ReadLine());
}
if (mes == DateTime.Now.Month)
while (dia < DateTime.Now.Day)
{
Console.WriteLine("ERROR, no puede ingresar una fecha anterior,,, Reingrse:");
dia = int.Parse(Console.ReadLine());
}

DateTime fech = new DateTime(año, mes, dia);

Alarma.Add(fech);
Console.WriteLine("Ingrese observacion");
string obs = Console.ReadLine();
Observaciones.Add(obs);


}

public void RealizarBackup(Agenda aux)
{

GuardarEnDisco(aux);
}

public void Menu()
{
Console.Clear();
Console.BackgroundColor = ConsoleColor.DarkBlue;
Console.ForegroundColor = ConsoleColor.Gray;
Console.WriteLine("╔══════════════════════════════════════════════╗");
Console.WriteLine("║ MENU ║");
Console.WriteLine("╚══════════════════════════════════════════════╝");


Console.ForegroundColor = ConsoleColor.Red;
Console.Write("C");
Console.ResetColor();
Console.WriteLine("argar Personas");
Console.ForegroundColor = ConsoleColor.Red;
Console.Write("M");
Console.ResetColor();
Console.WriteLine("odificacion de Datos");
Console.ForegroundColor = ConsoleColor.Red;
Console.Write("E");
Console.ResetColor();
Console.WriteLine("liminar Personas");
Console.ForegroundColor = ConsoleColor.Red;
Console.Write("A");
Console.ResetColor();
Console.WriteLine("niversarios");
Console.ForegroundColor = ConsoleColor.Red;
Console.Write("D");
Console.ResetColor();
Console.WriteLine("efinir Alarmas");
Console.ForegroundColor = ConsoleColor.Red;
Console.Write("B");
Console.ResetColor();
Console.WriteLine("uscar");
Console.ForegroundColor = ConsoleColor.Red;
Console.Write("R");
Console.ResetColor();
Console.WriteLine("ealizar Backup");
Console.ForegroundColor = ConsoleColor.Red;
Console.Write("S");
Console.ResetColor();
Console.WriteLine("alir");
Console.ForegroundColor = ConsoleColor.Red;
Console.Read();



}


#endregion

}

class Program
{
static void Main(string[] args)
{

Agenda miagenda = new Agenda();
miagenda.Menu();

string op =Console.ReadLine();
while (op != "C" && op != "M" && op != "E" && op != "A" && op != "D" && op != "B" && op != "R" && op != "S")
{
Console.Beep(200, 35);
Console.WriteLine("ERROR, REINGRESE SU OPCION:");
op = Console.ReadLine();
}
switch (op)
{
case "C":
miagenda.CargarPersonas();
break;
case "M":
miagenda.ModificarDatos(miagenda);
break;
case "E":
miagenda.EliminarPersonas(miagenda);
break;
case "A":
miagenda.Aniversarios();
break;
case "D":
miagenda.DefinirAlarma();
break;
case "B":
miagenda.BuscarPersonas();
break;
case "R":
miagenda.RealizarBackup(miagenda);
break;
case "S":
miagenda.Salir();
break;

}

}

}
}


si puede decirme en donde esta mal ...

publicación de Time