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ú

Mensajes - Gaby_10

#1
jeje ya me fije habia puesto mal la direccion xD
#2
Buenas tengo el siguiente codigo que me copia en otro archivo las mayores puntuaciones, pero no em sale y no spe que linea esta mal les agradezco su ayuda! n=nombre 
Código (cpp) [Seleccionar]
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()
{
int puntos,cont=0,i,mayor=0;
FILE *archivo,*puntuaciones;
archivo= fopen("C:/Users/juan 1/Desktop/archivo.txt", "r");
char n[50] = "";
if (archivo != NULL)
{
while (!feof(archivo))
{
fscanf(archivo, "%[^  ]  %d\n", n, &puntos);
if(mayor<puntos)
mayor=puntos;
cont++;
}
}
fclose(archivo);
puntuaciones = fopen("C:/Users/juan 1/Desktop/puntuaciones.txt", "w+");
for(i=mayor;i>0;i--){
archivo = fopen("C:/Users/juan 1/Desktop/archivo.txt", "r");
while(!feof(archivo)){
fscanf(archivo, "%[^  ]  %d\n", n, &puntos);
if(puntos==i)
fprintf(puntuaciones, "%s  %d\n",n,puntos);
}
fclose(archivo);
}
fclose(puntuaciones);
getchar();
}
#3
Programación C/C++ / Re: Puntuaciones
17 Febrero 2014, 21:03 PM
digamos que en archivos.txt ya este ingresado un jugador
1     Ana     20  // numero del jugador. nombre , puntaje

lo que quiero saber es si en el programa al poner otro nombre el numero de jugador puede aumentarse se que puedo usar fgetc pero no se si al usar fgetc me lee todo hasta terminar el archivo (no logro entender bien ) presentaria asi:
1     Ana     20
2     Gabriela     30

--------------------------------------------- Este es un código que tengo hecho para ver puntaje pero no funciona y no sé en qué linea está mal .-.
Código (cpp) [Seleccionar]
#include<stdio.h>
#include<string.h>

int main(){
char nombre[60];
int puntos,i;
int puntosTemp=0;
char nombreTemp[60];
int lon;
FILE *archivo=fopen("C:/Users/juan 1/Desktop/registro.txt","r");
FILE *puntuaciones=fopen("C:/Users/juan 1/Desktop/puntuaciones.txt","w");
while(!feof(archivo)){
fscanf(archivo,"%s %i",nombre,&puntos);

if(puntosTemp>puntos){
fprintf(puntuaciones,"%s %i\n",nombreTemp,&puntosTemp);
}
else{
fprintf(puntuaciones,"%s %i\n",nombreTemp,&puntosTemp);
}
puntosTemp=puntos;
lon=strlen(nombre);
for(i=0;i<lon;i++){
nombreTemp[i]=nombre[i];
}
}
fclose(archivo);
fclose(puntuaciones);
}
#4
Programación C/C++ / Puntuaciones
17 Febrero 2014, 19:28 PM
buenas a todos! Tengo una duda, el de aqui es un programa de prueba lo que quiero saber es como puedo aumentar el jugador cuando iingreso un nombre nuevo, y si es posible ordenar las puntuaciones de mayor a menor
Código (cpp) [Seleccionar]
printf("INGRESE NOMBRE:");
gets(nombre);
system("pause");
printf("\n1)JUEGUE\n");
printf("2)REGISTRO\n");
printf("3)JELIMINAR REGRISTO\n");
printf("--------->>Ingrese opcion:");
scanf("%i",&op);
switch(op){
case 1:
FILE *archivo;
archivo=fopen("C:/Users/juan 1/Desktop/registroDeUsuario.txt","r");
printf("Ingrese numero:");
scanf("%i",a);
printf("Ingrese numero:");
scanf("%i",b);
puntos=a+b;
fprintf(archivo,"%i   %s %i ", jugador, nombre, puntos)
fclose(archivo);
#5
Lo siento amigo no sabía como poner el código y lo había escrito pero aquí te lo mando como me dijiste, ya le hice las modificaciones que me acabas de decir pero no me busca bien los números repetido en horizontal  por ejemplo (1 1 2) me la cuenta y no sé si las condiciones que puse están bien, tambien no se si la condicion que tengo cuando no haya combinaciones para generar una matriz nueva esten correctas
Código (cpp) [Seleccionar]
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <time.h>
#define MAXFIL 9
#define MAXCOL 9


void buscaVerN1(int matriz[MAXFIL][MAXCOL],int*puntosn1);
void buscaHoriN1(int matriz[MAXFIL][MAXCOL],int*puntosN1);
void tablero (int matriz[MAXFIL][MAXCOL]);

void tablero (int matriz[MAXFIL][MAXCOL]){
int i,j,e;
    printf("        1       2       3       4       5       6       7       8       9 \n");
    printf("-----------------------------------------------------------------------------");
for (i=0;i<MAXFIL;i++){
printf("\n");
printf("%i -- ", i+1);
for (j=0;j<MAXCOL;j++){

if (matriz[i][j]==1)
{
e=1;
printf("\t%c",e);
}
if (matriz[i][j]==2)
{
e=2;
printf("\t%c",e);
}
if (matriz[i][j]==3)
{
e=4;
printf("\t%c",e);
}
if (matriz[i][j]==4)
{
e=5;
printf("\t%c",e);
}
if (matriz[i][j]==5)
{
e=15;
printf("\t%c",e);
}
}
printf("\n");
}
getch();
}





void buscaVerN1(int matriz[MAXFIL][MAXCOL],int*puntosN1){
printf("\n\n------------------>> BUSQUEDA VERTICAL\n\n");
int contador=1,i,j;
for(j=0;j<MAXCOL;j++)
{
contador=1;
for (i=0;i<MAXFIL;i++)
{
if (matriz[i][j]==matriz[i+1][j])
{
contador=contador+1;
}
else{
contador=1;
*puntosN1=*puntosN1;
}

if ((contador==3 && i<=MAXFIL-3) && (matriz[i+1][j]==matriz[i+2][j]))
{
printf("\n\n ENCONTRO 4 CARAMELOS EN LA COLUMNA: %d  DESDE LA FILA %d A LA FILA %d \n",j+1,i,i+3);
srand(time(NULL));
matriz[i-1][j]=1+(rand()%5);
            matriz[i][j]=1+(rand()%5);
            matriz[i+1][j]=1+(rand()%5);
            matriz[i+2][j]=1+(rand()%5);
*puntosN1=*puntosN1+7;
}
else
{
if (contador==3 && i<=MAXFIL-2)
{
printf("\n\n ENCONTRO 3 CARAMELOS EN LA COLUMNA: %d  DESDE LA FILA %d A LA FILA %d \n",j+1,i,i+2);
srand(time(NULL));
                    matriz[i-1][j]=1+(rand()%5);
            matriz[i][j]=1+(rand()%5);
            matriz[i+1][j]=1+(rand()%5);
*puntosN1=*puntosN1+5;
}
}

}
}
}


void buscaHoriN1(int matriz[MAXFIL][MAXCOL],int*puntosN1){
printf("\n\n------------------>> BUSQUEDA HORIZONTAL\n\n");
int i,j,contador=1;
for(i=0;i<MAXFIL;i++){
contador=1;
for (j=0;j<MAXCOL;j++){
if (matriz[i][j]==matriz[i][j+1])
{
contador=contador+1;
}
else{
contador=1;
*puntosN1=*puntosN1;
}

if ((contador==3 && j<=MAXCOL-3) && (matriz[i][j+1]==matriz[i][j+2]))
{
printf("\n\n ENCONTRO 4 CARAMELOS EN LA COLUMNA: %d  HASTA LA COLUMNA %d EN LA FILA %d \n",j,j+3,i+1);
srand(time(NULL));
matriz[i][j-1]=1+(rand()%5);
matriz[i][j]=1+(rand()%5);
            matriz[i][j+1]=1+(rand()%5);
            matriz[i][j+2]=1+(rand()%5);
           
*puntosN1=*puntosN1+7;
}
else
{
if (contador==3 && j<MAXCOL-2)
{
printf("\n\n ENCONTRO 3 CARAMELOS EN LA COLUMNA: %d  HASTA LA COLUMNA %d EN LA FILA %d \n",j,j+2,i+1);
srand(time(NULL));
matriz[i][j-1]=1+(rand()%5);
                    matriz[i][j]=1+(rand()%5);
            matriz[i][j+1]=1+(rand()%5);
*puntosN1=*puntosN1+5;
}
}

}
}
}





int main(){
system ("COLOR A" );
printf("\n\n==================|| INICIANDO JUEGO ||==================\n\n");
printf(":::::::::::::::::::::::DIVIERTASE:::::::::::::::::::::::\n\n");
system("pause");
system("cls");
int finalJuego=0;
int turnoN1=0;
while (finalJuego!=1){
system ("COLOR F5" );
printf("\n\n\t\t.....|| Cargando Colores ||....\n\n\n\n");
int i,j;
srand(time(NULL));
int matriz[MAXFIL][MAXCOL]={0};
for(i=0;i<MAXFIL;i++){
for(j=0;j<MAXCOL;j++){
matriz[i][j]=1+(rand()%5);
}
}
tablero matriz);
while(turnoN1!=40){
int *puntosN1=0;
int puntos=0;
int valor;  //para comapra el valor de puntaje viejo con el actual
while (turnoN1!=40){
printf("\n\n=============================================================================\n\n\n");
printf("\n\n\t\t.....|| BUSQUEDA DE COLORES ||....\n\n\n\n");
valor=puntos;
buscaVerN1(matriz,&puntos);
buscaHoriN1(matriz,&puntos);
printf("\n\n------------------>>USTED TIENE %i PUNTOS \n\n",puntos);
printf("\n\n------------------>>USTED SE ENCUENTRA EN EL TURNO %i\n\n",turnoN1+1);
turnoN1++;
printf("\n\n=============================================================================\n\n\n");
printf("\n\n\t\t.....|| BAJANDO DE COLORES ||....\n\n\n\n");
tablero (matriz);
if (valor==puntos){ //para generar valores nuevos en caso de no ahber combinaciones
printf("\n\n\t\t.....|| NO HAY COMBIANCIONES POSIBLES||....\n\n\n\n");
for(i=0;i<MAXFIL;i++){
for(j=0;j<MAXCOL;j++){
matriz[i][j]=1+(rand()%5);
}
}
tablero matriz);
}
}



}

finalJuego=0;
printf("TERMINO JUEGO")
}


return 0;


}
#6
viendo lo que te pase me acabo de dar cuenta que llamo mal los putnos ahora lo corrijo xD
#7
Programación C/C++ / .
15 Febrero 2014, 21:22 PM
.
#8
Bueno mi duda es la siguiente tengo una matriz de 9 x 9, llena de numeros aleatorios lo que no sé, es como hacer buscar tanto horizontal como vertical los valores que se repiten y cambiar los valores repetidos con valores aleatorios tomando como referencia tres valores repetidos. el programa es en dev c++


#include <stdio.h>
#define MAXFIL 9
#define MAXCOL 9


void buscarVerti(int matriz[MAXFIL][MAXCOL],int *puntos){
   int contador=1;
   int i,j;
   for (j=0;j<MAXCOL;j++){
      for (i=0;i<7;i++){
              if (matriz [i ][j]==matriz[i+1][j]){
                 contador++;      
              }
      
            else if (matriz [j] !=matriz[i+1][j]){
                  contador=1;
            }
            
            if (contador==3 && i<7 && (matriz[i+1][j]==matriz[i+2][j])){
               printf("\n\n ENCONTRO 4 CARAMELOS EN LA COLUMNA: %d  DESDE LA FILA %d A LA FILA %d \n",j+1,i,i+3);
               puntosN1=puntosN1+7;
               matriz [i ][j]=1+(rand()%5);
                 matriz[i+1][j]=1+(rand()%5);
                 matriz[i+2][j]=1+(rand()%5);
                 matriz[i+3][j]=1+(rand()%5);
               break;
              }
              
              else if (contador==3 && i<8 && (matriz[j]==matriz[i+1][j]) ){
                  printf("\n\n ENCONTRO 3 CARAMELOS EN LA COLUMNA: %d  DESDE LA FILA %d A LA FILA %d \n",j+1,i,i+2);
                  puntosN1=puntosN1+5;
                  matriz[ i] [j]=1+(rand()%5);
                 matriz[i+1][j]=1+(rand()%5);
                 matriz[i+2][j]=1+(rand()%5);
               break;
            }   
              
             
      }
   }
}


void buscarHori(int matriz[MAXFIL][MAXCOL],int *puntos){
int contador=1;
   int i,j;
   for(i=0;i<MAXFIL;i++){
      for(j=0;j<7;j++){
         if (matriz[j]== matriz[j+1])
           contador=contador+1;
           puntosN1=puntosN1;

         if (matriz[j]!=matriz[j+1])
           contador=1;
           puntosN1=puntosN1;
           
           if (contador==3 && j<7 && (matriz[j+1]==matriz[j+2])){
              printf("\n\n ENCONTRO 4 CARAMELOS DESDE LA COLUMNA: %d  HASTA LA COLUMNA %d EN LA FILA %d \n",j,j+3,i+1);
              matriz[j]=1+(rand()%5);
              matriz[j+1]=1+(rand()%5);
              matriz[j+2]=1+(rand()%5);
              matriz[j+3]=1+(rand()%5);
               puntosN1=puntosN1+7;
            break;
           }
           
           if (contador==3 && j<8 && (matriz[j]==matriz[j+1])){
              printf("\n\n ENCONTRO 3 CARAMELOS DESDE LA COLUMNA: %d  HASTA LA COLUMNA %d EN LA FILA %d \n",j,j+2,i+1);
               puntosN1=puntosN1+5;
            matriz[j]=1+(rand()%5);
              matriz[j+1]=1+(rand()%5);
              matriz[j+2]=1+(rand()%5);
            break;
           }
      }
   }
}




int main(){
int i,j;
int *puntos=0;
int matriz[MAXFIL][MAXCOL];
for (i=0;i<MAXFIL;i++){
    for(j=0;j<MAXCOL;j++){
         matriz[j]=1+rand()%5
          printf("%i",matriz[j]);
     }
printf("\n");
}
buscarCaramelosVertical (matriz,puntosN1);
buscarCaramelosHorizontal (matriz,puntosN1);
printf("Ud tiene %i puntos",puntosN1);
}
#9
Programación C/C++ / Buscar valores en matrices
15 Febrero 2014, 06:20 AM
Bueno mi duda es la siguiente tengo una matriz de 9 x 9, llena de numeros aleatorios lo que no sé como hacer es buscar tanto horizontal como vertical los valores que se repiten y cambiar los valores repetidos con valores aleatorios tomando como referencia tres valores repetidos. el programa es en dev c++


#include <stdio.h>
#define MAXFIL 9
#define MAXCOL 9

int main(){
int i,j;
int matriz[MAXFIL][MAXCOL];
for (i=0;i<MAXFIL;i++){
     for(j=0;j<MAXCOL;j++){
          matriz[j]=1+rand()%5
           printf("%i",matriz[j]);