lunes, 27 de junio de 2016

Edx - HarvardX - CS50 - Problemas Resueltos en Lenguaje C - Bien Explicados Paso a Paso- mario.c - greedy.c - water.c

Pset1 de CS50 todos los problemas bien explicados en lenguaje C



comentarios, amistad, cultura geek unforgiven252525@gmail.com



#include <stdio.h>        //incluir la libreria standar de entrada y salida

int main(void)               // función principal sus argumentos son vacíos y espera de respuesta un entero
                                      // si es return 0 cero se interpreta como programa sale con código de éxito
                                      // si es return 1 otro numero entero positivo o negativo 1,  2, 3  ,  -1 , -2  , etc
                                      //se interpreta como sale del programa con  código de error
{
    printf("hello, world\n");  // imprime hello world y agrega un salto de linea newline
 
}





mario.c  - Pset1 de Edx CS50


#include <stdio.h>     //incluir la libreria standar de entrada y salida
#include <cs50.h>     //incluir la libreria desarrollada para este curso de CS50 para que el programa                                          funcione en otro entorno fuera  del Appliance o el ide50, se debe agregar esta                                        libreria sino no reconocera instrucciones como GetString() o GetInt().

int main(void)             // función principal sus argumentos son vacíos y espera de respuesta un entero
                                     // si es return 0 cero se interpreta como programa sale con código de éxito
                                     // si es return 1 otro numero entero positivo o negativo 1,  2, 3  ,  -1 , -2  , etc
                                     //se interpreta como sale del programa con  código de error
{

int altura = 0;     //se declara variables de tipo entero ocupa 4 bytes = 32 bits
int i;
int j;
int k;
// indica ejecutar el siguiente código mientras la condición while se cumpla
// hacer do {codigo} while mientras (condicion) la altura sea menor a 1 o mayor a 23 

do
{
printf("Altura:");
altura = GetInt();
        if (altura == 0)
        {
            return 0;
        }
     
     
}

//se ejecuta do mientras while sea true o verdadero
//verifica que la altura sea menor que 23 y mayor a 1

while (altura < 1 || altura > 23);


for( i = 0; i < altura; i++)  // se utilizan tres  bucles for uno es el numero menor a la altura de la                                                       //piramide  en  los otros dos uno imprime los espacios
// el otro imprime los hashes # 

{        

        for( j = 0; j < altura-i-1; j++)  
        {
            printf("%s", " ");
        }
     
for(k = 0; k < i+2; k++)
{
printf("#");
}
printf("\n");
}
return 0;
}


water.c - Pset1 de Edx CS50


#include <stdio.h>     //incluir la libreria standar de entrada y salida
                                 //incluir la libreria desarrollada para este curso de CS50 para que el programa     #include <cs50.h>     //funcione en otro entorno fuera  del Appliance o el ide50, se debe agregar esta                                     //libreria sino no reconocera instrucciones como GetString() o GetInt().


int  main (void)             // función principal sus argumentos son vacíos y espera de respuesta un entero
                                     // si es return 0 cero se interpreta como programa sale con código de éxito
                                     // si es return 1 otro numero entero positivo o negativo 1,  2, 3  ,  -1 , -2  , etc
                                     //se interpreta como sale del programa con  código de error


{

    int minutos;           //se declara variables de tipo entero ocupa 4 bytes = 32 bits de memoria
    int botellas;
 

    printf ("Introducir minutos : ");   //imprimir mensaje

    minutos = GetInt();                     //pide entrada de numero y lo asigna a la variable minutos
 
    botellas = 12*minutos;               // botellas es igual a minutos por 12 sale del planteamiento del                                                               //  programa
 
 
    printf ( "Numero de botellas   %i \n" , botellas);  //imprime numero de botellas usa %i porque es un                                                                                   //integer entero
 
 
}



greedy.c - Pset1 de Edx CS50


#include <stdio.h>
#include <cs50.h>
#include <math.h>           //usa la libreria math.c ya que hace calculos matematicos como roundf que                                             //es redondear el numero



 int main(void )

    {


    float MontoACambiar;   //declara variable del tipo float  decimal de coma  flotante
 
    int coin_count = 0;       //contador de numero de monedas
 
    printf("Input the change owed: \n");   //pide un numero que es el cambio a dar
 
    do
                      //do es hacer  {código} while mientras monto a cambiar sea negativo
    {
 
        MontoACambiar = GetFloat();
     
        if (MontoACambiar < 0 )
 
        {
 
          printf("Positive numbers Only  \n ");
       
          MontoACambiar = GetFloat();
       
       
       
        }
    }
 
    while(MontoACambiar<= 0 );
 
   
   
   
    int change_cents = roundf(((MontoACambiar*100)));
 
          while (change_cents>=25)

    {
           change_cents = change_cents - 25;
     
           coin_count = coin_count + 1 ;
         
    }
 
 
 
 
 
 
    while (change_cents>=10)

    {
           change_cents = change_cents - 10;
     
           coin_count = coin_count + 1 ;
         
    }
 
 
 
    while (change_cents>=5)

    {
           change_cents = change_cents - 5;
     
           coin_count = coin_count + 1 ;
         
    }
 
 
 
    while (change_cents>=1)

    {
           change_cents = change_cents - 1;
     
           coin_count = coin_count + 1 ;
         
    }
 
 
 
 
    printf("%d\n",coin_count);
 
    }
 
 
 
     
 
 
 
 


martes, 12 de abril de 2016

Algoritmo de Busqueda Secuencial - Linear search- en Lenguaje de Programacion Ruby







def login()
   system('cls')

    puts "Ingrese clave para Iniciar el Sistema TicketMaster Version 1.2 2016"
    puts
    clave = gets.to_i
    puts
    if (clave == 12345 )   # la clave es un numero int                                                              
        puts "Clave Correcta"
        menuInicial()
     
    else login()

    end

 
end

def menuInicial ()
   system('cls')
   puts
   puts
   puts "  $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"
   puts "  $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"
   puts "  $$$$$!-------------------------------------------------------------------- !$$$$$$"
   puts "  $$$$$!          SISTEMA TICKETMASTER SAC.                       !$$$$$$"
   puts "  $$$$$!                                                                                            !$$$$$$"
   puts "  $$$$$!      TU ENTRADA AL MUNDO DEL ESPECTACULO!$$$$$$"
   puts "  $$$$$!---------------------------------------------------------------------!$$$$$$"
   puts "  $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"
   puts "  $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"
 
   puts
   fechaHora()
 
 
 
   puts  "1) Buscar Evento por Fecha  "
   puts


   puts  "2) Buscar Evento por Precio"
   puts

   puts  "3) Salir   "
   puts
   puts


   opcionMenuInicial = gets.to_i

   puts

        case opcionMenuInicial

        when  1  then  SubRutinaBusquedaporFecha()


        when  2  then SubRutinaBusquedaporPrecio()

        when  3  then SubRutinaFinalizar()    
 
        #else menuInicial()
     

        end

 
end


def SubRutinaBusquedaporFecha()
   #system('cls')

   puts "Sistema de Venta de Boletos  TicketMaster SAC. "
   puts
   puts
   fechaHora()
   puts
 
 
   puts "Introducir fecha a buscar XX-04-2016"
 
   puts
   puts
   puts
   puts
   puts "Introducir el dia : "
   $fecha = gets.to_i

   buscarPorFecha($a, $fecha)
   puts

   

 end


def SubRutinaBusquedaporPrecio()


puts "Busqueda por Precio"
puts "Sistema de Venta de Boletos  TicketMaster SAC. "
   puts
   puts
   fechaHora()
   puts
 
 
   puts "Introducir Precio a buscar"
   puts
   puts "Introducir el precio : "
   $precio = gets.to_i

   buscarPorPrecio($a2, $precio)
   puts



end

def buscarPorPrecio(arreglo, precio)
system('cls')
puts "Busqueda por Precio"
puts
puts "Sistema de Venta de Boletos  TicketMaster SAC. "
puts
fechaHora()
puts

ind = -1
indmaximo = arreglo.size-1
i = 0

while(  i <indmaximo and precio != arreglo[i]     )
i = i + 1

end

if ( precio == arreglo[i] )

ind = i

end

if( (ind + 1) == 0  ) then

puts "No hay ningun evento con ese precio : " + precio.to_s  + " Soles. "

else

puts "Con ese precio tenemos los siguientes eventos : " + precio.to_s + " Soles. "

case precio

        when  100  then  puts "Concierto Pantera "
when  250  then  puts "Maraton Blue Race 5K"
when  300  then  puts "Opera Temporada 2016 "
when  500  then  puts "Concierto de Gala de Filarmonia"
when  666 then  puts "Concierto Metallica"
when  700  then  puts "Concierto Ed Sheeran Live 1 Año Despues"
when  850 then  puts "Exibicion Monster Trucks "
        when  900  then  puts "Evento Dev Days  Microsoft"
when  990  then  puts "Concierto Velvet Revolver"
when  1000  then  puts "Concierto Rolling Stones"
     
 
        #else menuInicial()
else menuInicial()
     

        end


end

ind + 1

system('pause')
menuInicial()
end

def SubRutinaFinalizar()
system('cls')
puts "Gracias por Usar el Sistema de TicketMaster 2016  v 1.2 - www.ticketmaster.com"


end


def buscarPorFecha(arreglo, dia)
system('cls')
puts "Busqueda por Fecha "
puts
puts "Sistema de Venta de Boletos  TicketMaster SAC. "
puts
fechaHora()
puts

ind = -1
indmaximo = arreglo.size-1
i = 0

while(  i <indmaximo and dia != arreglo[i]     )
i = i + 1

end

if ( dia == arreglo[i] )

ind = i

end

if( (ind + 1) == 0  ) then

puts "El dia : " + dia.to_s   + " no hay ningun evento"

else

puts "El dia : " + dia.to_s   + " se realizara el evento de : "

case dia

        when  1  then  puts "Concierto Rolling Stones"
when  2  then  puts "Concierto Metallica"
when  3  then  puts "Opera Temporada 2016 "
when  7  then  puts "Concierto de Gala de Filarmonia"
when  14  then  puts "Concierto Ed Sheeran Live 1 Año Despues"
when  20 then  puts "Exibicion Monster Trucks"
        when  27  then  puts "Maraton Blue Race 5K"
when  28  then  puts "Evento Dev Days Microsoft"
when  29  then  puts "Concierto Velvet Revolver"
when  30  then  puts "Concierto Pantera"
     
 
        #else menuInicial()
else menuInicial()
     

        end

end

 ind + 1

system('pause')
menuInicial()
end


def fechaHora()


puts   Time.now.strftime("%H:%M") + " - " +  Time.now.strftime("%d/%m/%Y")

puts
puts

end

#dias que hay eventos
$a = [1,2,3,7,14,20,27,28,29,30]

#precios de entradas
$a2 = [ 100,250,300,500,666, 700,850,900,950,990,1000 ]



login()
menuInicial()


lunes, 29 de junio de 2015

Crysis 2 - Rejugando un clasico

Hace poco estuvimos revisando nuestra biblioteca de juegos en los que resaltaban varios títulos entre ellos los últimos  Call Of Duty, Battlefield 3, y otros pero el que atrajo nuestra atención fue Crysis 2.
Un juego que ya habiamos  terminado anteriormente pero que nos dejo una gran impresión por la calidad gráfica y la historia muy bien lograda, después de desempolvar los discos y hacer la instalación pasamos  a jugar nuevamente este clásico nos tomo menos tiempo completarlo unas 12 horas y lo único que podemos decir es excelente super  gráficos super historia y super jugabilidad una excelente razón para probar el nuevo hardware una tarjeta Nvidia Gigabyte GTX 970 de 4GB de memoria de video y un monitor TV full HD 1080p de 42 pulgadas,  nos pasamos horas super entretenidas repasando este juegazo,
es que la industria de los videojuegos no deja de sorprender cada vez ofreciendonos mayor calidad mejores gráficas,  mas realismo,  algo que pudimos ver en este  ultimo  E3, esperemos que nos deparara el futuro en esta industria mas grande en ingresos que la industria del cine y la música juntos.

domingo, 14 de diciembre de 2014

Cierre de Thepiratebay y el Derecho a Compartir en Internet

El dia Viernes 19 de Diciembre 2014 se cerro la pagina web thepiratebay.org
despues de años de ser una de las favoritas entre las personas para compartir archivos torrent
nos encontramos con que esta habia  sido eliminada, aunque rapidamente  fue rescatada por  isohunt
y convertida en theoldpiratebay es que el derecho a compartir en internet es uno de los pilares de esta
podemos ver como corporaciones codiciosas como Sony Playstation y Microsoft Xbox abusan de los usuarios cobrando precios exagerados a los jugadores de estas consolas mas de 60 Dolares por juego,  no es extraño entonces ver que se quieran saltarse estas restricciones por lo alto del precio, veamos el mercado de la música antes que se pudiera copiar un CD los usuarios solo tenían acceso a unos pocos CD a 15 dolares c/u , estos precios eran abusivos, ahora si vemos el mercado de los libros  sobre todo 
los
libros universitarios en los 90 había que comprar libros de mas de 100 Dolares lo cual hacia de la 
educación solo accesible para una élite mientras que ahora cualquiera de nosotros tiene acceso
a libros actuales y modernos, el cierre de thepiratebay y casi inmediata rescate y apertura por isohunt 
nos da a entender que el Internet es el patio de juego de nuestra generación y por lo tanto  no se aceptan restricciones ademas de que es casi imposible evitar que los usuarios compartan  información
mas realistas son abordes del tema cobrando por publicidad como lo hace Spotify o el mismo YouTube.   definitivamente la manera de cobrar por los derechos en Internet tiene que ser modificada de alguna manera para permitir que se hagan cobros por el contenido iTunes es un ejemplo de esto, por lo cual los usuarios de poder  de Internet estamos tranquilos pues el día que censuren la red esta lejos
mas  aun nos queda claro que esto es algo casi imposible.








On Friday December 19, 2014 was closed the website thepiratebay.org
after years of being a favorite among people to share files torrent
we find that this had been removed, but was quickly rescued by isohunt
and converted into theoldpiratebay is that the right to share online is one of the pillars of this
we can see how greedy corporations like Sony Playstation and Microsoft Xbox abusing users by charging inflated prices for players of these consoles over 60 dollars per game, is not surprising then to see who want to skip these restrictions at high prices, consider the music market before it could copy a CD users only had access to a few  CD 15 Dollars c / u, these prices were abusive, now if we see the market for books on everything
the
academic books in the 90 had to buy books from over 100 Dollars which made the
education accessible only to an elite but now any of us has access
current and modern books, closing thepiratebay and almost immediate rescue and openness isohunt
gives us to understand that the Internet is the playground of our generation and therefore no restrictions are accepted plus is almost impossible to prevent users from sharing information
more realistic theme are you board charging for advertising as it does the same Spotify or YouTube. definitely the way of charging for Internet rights has to be modified in some way to allow the contents iTunes charges are made is an example of this, whereby the power of the Internet users are calm for the day censor the network is far
but we also clear that this is almost impossible.









miércoles, 19 de noviembre de 2014

Call of Duty Advanced Warfare - How to Solve- ERROR Insufficient free disk space



Después de la película de introducción para Call of Duty Modern Warfare 2, el juego muestra repentinamente este mensaje "ERROR espacio libre en disco insuficiente. Por favor libera al menos 5 Mb de espacio libre en la unidad de juego" y vuelve al menú principal.

Este error me ocurrió al instalar el juego y utilizar el crack CODEX que al parecer no va bien por lo que investigando en foros este problema se repite constantemente,
de hecho no es un problema de falta de espacio de disco duro sino del crack del juego, por lo que probamos usando el crack RELOADED que lo pueden obtener  entrando a the pirate bay y conseguir este torrent en todo caso el link esta aqui  en nuestro caso se corrige el problema copiando los tres archivos del crack reloaded y pegandolos en la carpeta del juego y problema solucionado no olvidar correr el juego como administrador click derecho y seleccionar del menu.Espero les sea de utilidad




http://thepiratebay.se/torrent/11356421/Call.of.Duty.Advanced.Warfare.Proper.Crack-RELOADED









After the introduction movie for Call of Duty Modern Warfare 2 the game suddenly displays this message "ERROR Insufficient free disk space. Please free at least 5 Mb of free space on game drive" and goes back to the main menu.
This error occurred when I install the game and use the crack CODEX apparently not going well so researching this problem on forums constantly repeated,
in fact it is not a problem of lack of disk space, but the crack of the game, so we tried using the RELOADED crack that can get entering the pirate bay and get this torrent in any case the link is here in our case solves  the problem by copying the three files and pasting  in the game folder and problem solved do not forget to run the game as administrator right click and select the menu.Hope it will be useful


http://thepiratebay.se/torrent/11356421/Call.of.Duty.Advanced.Warfare.Proper.Crack-RELOADED




please if the link is broken enter to the piratebay and serch  it there.













martes, 2 de septiembre de 2014

Prince of Tides- Final - para ti F.




Extracto de El Príncipe de las Mareas- Final



Por primera vez sentí que tenia que devolverle algo a las mujeres de mi vida
ellas lo merecían, y regrese a mi hogar surenno y a mi vida surenna  y es en presencia de 
mi mujer y mi vida donde tomo conciencia de mi vida de mi destino soy profesor 
entrenador y un hombre muy querido y eso es mas que suficiente. 
En Nueva York aprendí que necesitaba querer a mi madre y a mi padre con toda su defectuosa y escandalosa humanidad y que en las familias no hay  delitos que sobrepasen el perdón
pero es el misterio de la vida lo que ahora me intriga y miro hacia el norte y
vuelvo a pensar que ojala  repartieran dos vidas a cada hombre y a cada mujer .
al final del día atravieso en auto la ciudad de Charleston y mientras cruzo el puente que me lleva casa
noto que unas palabras me brotan de dentro, no puedo detenerlas ni se porque las digo, 
pero al llegar a lo alto del puente esas palabras llegan a mi en un susurro 
las digo como una oración,como un lamento, como una alabanza digo Lowenstein, Lowenstein.












lunes, 1 de septiembre de 2014

Joaquin Sabina - para ti d.



Bruja
Canción y letra de 
Joaquin Sabina



Bruja si aterrizas con tu escoba un dia en mi balcon 
ve con cuidado yo disparo siempre al corazon. 
En tus redes no me atraparas como a un ladron 
bruja, aunque vengas disfrazada de Marilyn Monroe. 

Estribillo: 
Piensatelo bien antes de poner tu pie en mi balcon 
no sea que tu escoba me barra la alcoba y me haga de baston. 
Que van a decir todos los que a ti bruja te llaman 
si saben que lloras, besas, te enamoras y me haces la cama. 

No habia debajo del disfraz que te ponias tu 
mas que una ninia a la espera de algun principe azul. 
Ibas para princesa pero un hechicero te dejo 
asi convertida en una pobre bruja del monton.