Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - shibu

#1
Programación C/C++ / Duda c y c++
16 Junio 2012, 16:55 PM
Hola amigos, tengo un codigo fuente de un sudoku, compila y funciona, pero quisiera que me expliquen la siguiente parte que esta en c, y si pudieran, traducirlo a c++

cabe aclarar que en este sistema los niveles de dificultad son del 1 al 8, siendo el 1 el mas dificil y el 8 el mas facil, pero necesito saber como funciona el sistema de dificultad como tal que necesito explicarlo, por ejemplo lo de %c%c%c que me confunde, expliquenme por favor

cout<<"Seleccione el nivel de dificultad desde 1 hasta 8\n\n                  -->   ";
       int Seguir=0,Faltan=1,Nivel,Aciertos=0,Coorde_Verti=0,Coorde_Hori=0,N_Ingresado=0,Sol_Aleatoria=(rand()%5),C[5][9][9]={{8,4,6,1,5,7,3,2,9,7,2,3,4,8,9,1,6,5,1,9,5,2,6,3,7,8,4,5,3,1,7,9,2,6,4,8,4,6,2,3,1,8,9,5,7,9,7,8,6,4,5,2,3,1,6,8,9,5,3,1,4,7,2,3,1,7,8,2,4,5,9,6,2,5,4,9,7,6,8,1,3},{1,6,7,5,3,8,9,4,2,2,5,8,7,9,4,6,3,1,9,3,4,1,6,2,5,8,7,7,1,6,3,4,5,2,9,8,3,4,2,6,8,9,1,7,5,5,8,9,2,1,7,4,6,3,4,9,3,8,5,1,7,2,6,6,7,1,9,2,3,8,5,4,8,2,5,4,7,6,3,1,9},{1,4,9,3,8,6,5,2,7,3,7,2,1,5,4,6,8,9,6,5,8,9,2,7,4,3,1,7,6,4,2,1,5,8,9,3,2,3,5,6,9,8,7,1,4,9,8,1,4,7,3,2,5,6,8,9,6,5,4,1,3,7,2,5,1,3,7,6,2,9,4,8,4,2,7,8,3,9,1,6,5},{6,9,4,3,2,5,7,8,1,8,2,5,9,1,7,3,4,6,7,3,1,6,4,8,2,9,5,1,7,8,2,5,4,9,6,3,9,5,6,1,8,3,4,2,7,3,4,2,7,6,9,1,5,8,2,6,9,5,7,1,8,3,4,4,1,3,8,9,6,5,7,2,5,8,7,4,3,2,6,1,9},{2,4,6,1,3,5,8,7,9,1,3,5,8,7,9,2,4,6,8,7,9,2,4,6,1,3,5,5,6,3,4,1,2,7,9,8,4,1,2,7,9,8,5,6,3,7,9,8,5,6,3,4,1,2,6,5,4,3,2,1,9,8,7,3,2,1,9,8,7,6,5,4,9,8,7,6,5,4,3,2,1}};
       while(1!=Nivel && 2!=Nivel && 3!=Nivel && 4!=Nivel && 5!=Nivel && 6!=Nivel && 7!=Nivel && 8!=Nivel)
       cin>>Nivel;
       time (&start);
       for(int z=0;z<Nivel;z++)
       for(int i=0,f=0;i<3;i++,f++)
       for(int h=0,g=0,x=Casillero()+f*3,y=Casillero()+g*3;h<3;h++,g++)
       {
             while(Numero[x][y]!=0)
             x=Casillero()+f*3, y=Casillero()+g*3;
             Numero[x][y]=C[Sol_Aleatoria][x][y];
       }
       while(Aciertos!=81)
       {
             printf("\n           1   2   3   4   5   6   7   8   9\n\n         %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c\n      1  ",201,205,205,205,203,205,205,205,203,205,205,205,203,205,205,205,203,205,205,205,203,205,205,205,203,205,205,205,203,205,205,205,203,205,205,205,187);
             for(int i=0;i<9;i++)
             for(int j=0;j<9;j++)
             {
                   if(Numero[i][j]==0)
                   printf("º   ");
                   if(Numero[i][j]!=0)
                   printf("º %d ",Numero[i][j]);
                   if(i!=8&&j==8)
                   printf("º\n         %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c\n      %d  ",204,205,205,205,206,205,205,205,206,205,205,205,206,205,205,205,206,205,205,205,206,205,205,205,206,205,205,205,206,205,205,205,206,205,205,205,185,i+2);   
             }
             printf("º\n         %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c\n\n           Solo Numeros En El Rango De 1 A 9 Permitidos\n\n\n              Elija la columna : ",200,205,205,205,202,205,205,205,202,205,205,205,202,205,205,205,202,205,205,205,202,205,205,205,202,205,205,205,202,205,205,205,202,205,205,205,188);
             while(1!=Coorde_Hori && 2!=Coorde_Hori && 3!=Coorde_Hori && 4!=Coorde_Hori && 5!=Coorde_Hori && 6!=Coorde_Hori && 7!=Coorde_Hori && 8!=Coorde_Hori && 9!=Coorde_Hori)
             cin>>Coorde_Hori;
             cout<<"\n\n              Elija la fila : ";
             while(1!=Coorde_Verti && 2!=Coorde_Verti && 3!=Coorde_Verti && 4!=Coorde_Verti && 5!=Coorde_Verti && 6!=Coorde_Verti && 7!=Coorde_Verti && 8!=Coorde_Verti && 9!=Coorde_Verti)
             cin>>Coorde_Verti;
             cout<<"\n\n               Ingrese Numero : ";
             while(1!=N_Ingresado && 2!=N_Ingresado && 3!=N_Ingresado && 4!=N_Ingresado && 5!=N_Ingresado && 6!=N_Ingresado && 7!=N_Ingresado && 8!=N_Ingresado && 9!=N_Ingresado)
             cin>>N_Ingresado;
             Numero[Coorde_Verti-1][Coorde_Hori-1]=N_Ingresado,Aciertos=0,Faltan=0;
             for(int i=0;i<9;i++)
             for(int j=0;j<9;j++)
             {
             if(Numero[i][j]==C[Sol_Aleatoria][i][j])
             Aciertos++,N_Ingresado=0,Coorde_Hori=0,Coorde_Verti=0,Seguir=0;
             if(Numero[i][j]==0)
             Faltan++;
             }
             if(Faltan==0 && Aciertos!=81)
             {
             cout<<"\n\nPerdiste, quieres volver a emprezar?\n1) SI \n\n2) NO\n\n";
             while(1!=Seguir && 2!=Seguir)
             cin>>Seguir;
             if(Seguir==2)
             return 0;
             }
             system("cls");
       }
       cout<<"\n\n\n                      Felicidades!!!\n\n          Has terminado el Sudoku\n\n\n\n             ";
     time (&end);
dif = difftime (end,start);
cout<<"te tomo "<< dif<<"  segundos en resolverlo";
}
else
if (opcion==2)
{
for (fi=0; fi<9; fi=fi+1)
        for (co= 0; co<9; co++)
            juego[fi][co]=95; 
    llenado_matriz();
}
getch();
return 0;
#2
Hola amigos, estoy dearrollando un sudoku en dev c++, viene con 8 niveles de dificultad, y en el momento que el usuario digita el numero, el juego empieza,ya lo tengo listo, pero necesito una funcion que no se usar bien, necesito que la consola pueda leer cualquier sudoku de un blog de notas y, no se, que venga o con la opcion de uno desarrollarlo o que el programa lo desarrolle, y, por ejemplo cuando uno tenga un sudoku desarrollado, haya la opcion de imprimir ese sudoku en otro blog de notas

Y si me pueden decir si en la consola se puede agregar un contabilizador de tiempo desde que uno escoge el nivel empieze a contabilizar hasta que uno finalize el sudoku, si necesitan el codigo fuente me avisan
#3
Estaba haciendo el pseudocodigo del el siguiente ejercicio:

"Leer 20 números y encontrar el mayor y el menor valor leídos"

Lo estaba haciendo asii

a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,r,s,t,u: enteros
mayor: entero
menor: entero

leer (a)
leer (b)
leer (c)
leer (d)
.
.
.
.
.
leer (u)

Luego los condicionales

si a>=(b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,r,s,t,u) entonces
mayor=a
si no
   si a>=(b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,r,s,t,u) entonces
mayor= b
.
.
.
asi hasta u,

y asi pero con menor igual para hallar el menor,

pero me dicen que hay una funcion llamada switch para muchos condicionales, he leido pero no entiendo muy bien,
¿como se haria ese pseudocodigo usando la funcion switch para hallar el mayor y el menor?
Estoy confundido, no logro definirlo bien  :-(
#4
Hola amigos.

Estoy empezando en esto de la programacion y el c++ con la universidad, he hecho varios ejercicios pero me quede perdido con estos si pueden colaborenme:

En este momento los hacemos en C++, pero me faltan los siguientes ejercicios, ha que hacer las pruebas de escritorio, debo entregarlo a mano:


* Calcular el factorial de un número N (siendo N un número que se lee).

* Calcular el factorial de 10 números diferentes cuyos valores se leen.

* Leer 20 números y encontrar el mayor y el menor valor leídos.

* Leer un dato y almacenarlo en la variable n. Calcular el valor de 2 elevado a la potencia n

* Leer un dato y almacenarlo en la variable n, leer otro dato y almacenarlo en la variable
x. Calcular el valor de x elevado a la potencia n.

* Leer un dato que representa la longitud de algo expresado en una unidad de medida
cualquiera y expresarlo en metros. Por ejemplo, si se lee 1 millas imprima "1 milla equivale
a 1609,344 metros"

*. Imprimir secuencialmente el símbolo * combinado con + de tal manera que se logre
para obtener la siguiente figura:
+
+ + *
+ + +
+ + + + *
+ + + + +
+ + + + + + *
+ + + + + + +
+ + + + + + + + *
Posteriormente imprima la secuencia inversa, es decir, la figura debe iniciar desde la línea que
tiene más caracteres.

* Imprimir el triángulo de Pascal para determinar los coeficientes del polinomio (x+1)100


Les agradezco de antemano colaborarme con los que puedan


MOD: No se hacen tareas.