RETOS C++

Iniciado por Stakewinner00, 20 Septiembre 2012, 18:20 PM

0 Miembros y 22 Visitantes están viendo este tema.

Stakewinner00

Os quiero proponer unos cuantos retos simples de c++ para practicar. Se puede usar de todo menos buscar el resultado por internet y copiar el resultado.

La idea es que quien quiera participar que juegue y quien no y quiera aprender que pueda tomar los codigos como ejemplos

El codigo mas corto o el codigo mas rápido ganara un bónus.

El ganador no ganara nada y el perdedor tampoco y los puntos no sirven para nada.


=======================================

1-Un programa que cuente los caracteres que tiene un texto previamente introducido por el usuario (parece más fácil de lo que es)

ejemplo de entrada: "ho la" ejemplo salida:el texto tiene 5 caracteres

1 punto
____________________________________

2- Crear programa que lea el contenido de un archivo de texto.

2 puntos
________________________________
3- Un programa que diga el numero mas grande. El usuario ha de insertar 4 numeros separados por un espacio.

3 puntos

________________________________

4- Un programa que muestre la palabra mas pequeña en el orden alfabético. El usuario insertara 4 palabras

40 puntos

__________________________

5- Un creador de diccionarios para fuerza bruta

50 puntos

____________________________

6- Un programa que te apague el pc manera larga. (el programa tendra que ir haciendo los clicks como si fuera una persona)

60 puntos

__________________________

7- Un programa que te de una lista de los procesos prescindibles que mas consumen.

70 puntos

__________________________

8- Un crackeador de md5 ( a partir de un hash buscar una palabra que tenga el mismo hash).

80 puntos


__________________________

9- Un programa que corra en background y cambie el nombre de todas las ventanas que se llamen "hola" a "adios" .

75 puntos

__________________________

10- Un programa que escriba al revés las palabras. .

Entrada: hola
Salida: aloh



15 puntos
__________________________

11- Un programa que al introducirle tu data de nacimiento te diga los días, meses y semanas que faltan para tu próximo cumpleaños  

20 puntos

__________________________

12- Un programa que haga diversos rombos de 2 * n -1 lineas como en el siguiente ejemplo  

Entrada: 4
SAlida:  
   *
 ***
*****
*******
*****
 ***
  *

25 puntos


__________________________

13- Un programa que haga lo siguiente:  decidir si lo que se le ha dado realmente es un sudoku (comprobar que realmente tenga una unica solucion y tenga el tamaño correcto) ((idea de do-while))  

35p

PD:El formato del sudoku puede ser cualquiera siempre y cuando el progrma permita al user ingresar el sudoku por algún lado ,que no sea el codigo fuente.

__________________________

14- Un programa que genere 15200 numeros aleatorios y diga el número más grande que ha generado.  

11p

__________________________

15- Un programa que haga la serie de Fibonacci ( el programa tiene que imprimir por pantalla hasta el numero 30 en la serie de Fibonacci).  + INFO SOBRE LA SERIE:http://es.wikipedia.org/wiki/N%C3%BAmero_de_Fibonacci

11p

__________________________

15-(Similar al anterior)Crear un programa que obtenga el numero fi a partir de la serie de Fibonacci (el bucle tiene que tener un minimo de 30 ciclos) .

15p
------------------------------------------------------------------------------


RANKING

1º overxfl0w13(339p)
2º do-while (275p)
3º 0xdani (137p)
4º leosansan (115p)
5º Puntoinfinito (79p)
6º za.asi (71p))
7º ankora45 (66p)
8º werever19 (46p)
9º Dato000 (5p)
10º Ecfisa (1p)

Puntoinfinito

He echo el 3ro, aun no lo he probado, supongo que algo mal estara (eso me pasa por ir siempre a lo dificil xD) Y además aun no se mucho... :)

Código (cpp) [Seleccionar]
#include <iostream>

using namespace std;

int main()
{
int a = 99999999, b= -999, x = 0, y = 0, grande = 0, var = 0, final = 0;
int i = 0, z = 0;

    cout << "Ingrese el 4 numeros por espacio" << endl;
    cin >> x;
    cin >> y;
    cin >> i;
    cin >> z;
    if ( x > y)
    {
         grande = x;
    }
    else
    {
        grande = y;
    }
    if (i > z)
    {
          var = i;
    }
       else
    {
           var = z;
    }
    if (grande > var)
    {
        grande = final;
    }
    else
    {
        var = final;
    }
    cout << "El mayor numero que has puesto es : " << final;
    cin.get();
    return 0;
}
AHORA EN SOFTONIC || CLICK HERE!!
Base64: QWNhYmFzIGRlIHBlcmRlciAxIG1pbnV0byBkZSB0dSB2aWRhLiBPbOkh



HACK AND 1337 : http://hackandleet.blogspot.com
WEBSITE: http://www.infiniterware.

x64core

propongan retos más dificiles aqui hay gente que sabe muchisimo y casi siempre se une a los retos  ::)

Stakewinner00

Cita de: RHL en 20 Septiembre 2012, 19:08 PM
propongan retos más dificiles aqui hay gente que sabe muchisimo y casi siempre se une a los retos  ::)

cuando tenga tiempo ire añadiendo estos son básicos

Puntoinfinito

#4
Para gente para mi. Estoy de acuerdo con estos retos!!. No siempre hay que poner dificiles, cuando uno esta aprendiendo estos retos son los mejores que hay!!

Pongo el código de la 3 simplificado:

Código (cpp) [Seleccionar]
#include <iostream>

using namespace std;

int main()
{
int a = 0, b = 0, c = 0, d = 0, mayor = 0;
cout << "Ingresa los 4 numeros por espacio : ";
cin >> a >> b >> c >> d;
if ((a > b) && (a > c) && (a > d))
mayor = a;
if ((b > a) && (b > c) && (b > d))
mayor = d;
if ((c > b) && (c > a) && (c > d))
mayor = c;
if ((d > b) && (d > c) && (d > a))
mayor = d;
cout << "Numero mayor : " << mayor;
cin.sync();
cin.get();
return 0;
}


Mejoró más ehh xDD

AHORA EN SOFTONIC || CLICK HERE!!
Base64: QWNhYmFzIGRlIHBlcmRlciAxIG1pbnV0byBkZSB0dSB2aWRhLiBPbOkh



HACK AND 1337 : http://hackandleet.blogspot.com
WEBSITE: http://www.infiniterware.

ecfisa

#5
Hola.

Yo voy por el más fácil: El 1  ::)

#include <stdio.h>
#include <ctype.h>

int main(int argc, char* argv[]) {
 char frase[100];
 int i=0;
 const char *num[10] = {"cero","uno","dos","tres","cuatro","cinco",
                        "seis","siete","ocho","nueve" };
 printf("Frase: ");
 fgets(&frase,100,stdin);

 while (frase[i]) {
   if (isdigit(frase[i]))
     printf("%s ",num[frase[i]-48]);
   i++;
 }

 getchar();
 return 0;
}


Edito: Disculpas, no reparé que era C++ :-(

Código (cpp) [Seleccionar]

#include <iostream>

using namespace std;

int main(int argc, char* argv[]) {
 char frase[100];
 int i=0;
 const char *num[10] = {"cero","uno","dos","tres","cuatro","cinco",
                        "seis","siete","ocho","nueve" };
 cout << "Frase: ";
 cin >> frase;

 while (frase[i]) {
   if (isdigit(frase[i]))
     cout << num[frase[i]-48] << " ";
   i++;
 }

 while(cin.get()!='\n');
 cin.get();
 return 0;
}




Saludos.

Stakewinner00

#6
Cita de: ecfisa en 20 Septiembre 2012, 19:59 PM
Hola.

Yo voy por el más fácil: El 1  ::)

#include <stdio.h>
#include <ctype.h>

int main(int argc, char* argv[]) {
 char frase[100];
 int i=0;
 const char *num[10] = {"cero","uno","dos","tres","cuatro","cinco",
                        "seis","siete","ocho","nueve" };
 printf("Frase: ");
 fgets(&frase,100,stdin);

 while (frase[i]) {
   if (isdigit(frase[i]))
     printf("%s ",num[frase[i]-48]);
   i++;
 }

 getchar();
 return 0;
}


Saludos.

teoricamente era de c++ pero bueno si peudes hazlo con c++
ademas da error
a.c: In function `main':
a.c:10: warning: passing arg 1 of `fgets' from incompatible pointer type

ecfisa

Hola Stakewinner00.

Citarteoricamente era de c++ pero bueno si peudes hazlo con c++
Si... me había percatado de la confusión (C++) ya estaba agregando el código.

Citarademas da error
En realidad es una advertencia, la inclusión de '&' fue un despiste mío :(, la línea debería ser:
fgets(frase,100,stdin);

Un Saludo. ::)

0xDani

Estos retos son muy faciles, en realidad practicamente se lleva los puntos el que lo vea primero :silbar:
I keep searching for something that I never seem to find, but maybe I won't, because I left it all behind!

I code for $$$
Hago trabajos en C/C++
Contactar por PM

Stakewinner00

Cita de: 0xDani en 20 Septiembre 2012, 20:24 PM
Estos retos son muy faciles, en realidad practicamente se lleva los puntos el que lo vea primero :silbar:
ya pero como ire colocando mas retos habra un reto que valdra 30 puntos y entonces el qeu quiera ganar tendra k hacer el 100% de los retos