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 - SirLancelot53

#1
Muchas gracias, era lo que necesitaba.
#2
Programación C/C++ / Reiniciar menú en c++
26 Enero 2014, 01:05 AM
Hola, he estado haciendo un menú pero quiero que si se ingresa una opción no válida el default haga que vuelva a aparecer el menú, pero no sé como hacerlo; estoy usando un switch. ¿Alguna sugerencia o ejemplo? ¿de pronto con un ciclo?.
Agradezco su ayuda!
#3
Gracias, ahora ya entiendo pensé que no eran necesarios los ciclos; muchas gracias.
#4
Pero entonces ¿como podría imprimir la matriz o modificarla dentro de la función main? Porque intento hacerlo así:

cout << M;

En main() pero el programa corre y luego sale error aún destruyendo la función al final de main().
#5
Pero cuando intento imprimir en pantalla la matriz dentro de la función main, me compila pero despues aparece error.
#6
Que pena, dentro de la función main() va:
cout << crear_mundo (M, f, c, a, i, j);
#7
Si tengo una matriz que saco de un archivo y quiero retornarla ¿como lo hago? ya que el return quedaría dentro de los ciclos for terminando la función antes de tiempo. así:

Código (cpp) [Seleccionar]
char crear_mundo (char**M, int f, int c, istream& a, int i, int j)
{
   for (i = 0; i < f; i++)
   {
       for (j = 0; j < c; j++)
       {
            a>>M[i][j];
       }
   }
   delete [] M;
}

int main()
{
    int i,j,f,c;
    ifstream a("archivo.txt");
    a>>f;
    a>>c;
    char **M = new char* [f];
    for (i = 0; i < f; i++)
    {
        M[i] = new char[c];
    }
    crear_mundo (M, f, c, a, i, j);
    return 0;
}


Porque si la retorno dentro del ciclo solo imprimiria el primer caracter del archivo, y lo que ocurre es que después debo modificar la matriz (cosa que no puedo hacer si está dentro del ciclo). Agradezco su ayuda y estoy atento a respuestas!!!!!!
#8
Hola, tengo que hacer el juego de un laberinto en c++ usando una matriz en un archivo de texto, hasta ahora he podido cargar la matriz y delimitarla (es con caracteres especiales en donde " ? " son las barreras, 0 el inicio, @ la llegada, < el personaje  y - el camino), aun no he podido implementar las funciones que permiten que el personaje gire o se mueva hacia adelante.
Este es el código que llevo:
Código (cpp) [Seleccionar]
#include<iostream>
#include<fstream>
using namespace std;

char nombre_archivo (char a[200])
{
    cout <<"Digite el nombre del archivo" << endl;
    cin.getline(a,200);
    return a[200];
}

void ver_mundo (char** M, int f, int c)
{
    M[0][0]='>';
    cout<<M[f][c]<<" ";
}

void crear_mundo (char**M, int f, int c, istream& a, int i, int j)
{
    for (i=0; i<f+3 ; i++)
    {
      cout<<"?" << " ";
    }
    cout << endl;
   for (i = 0; i < f; i++)
   {
       cout<<"?" << " ";
       for (j = 0; j < c; j++)
       {
            a>>M[i][j];
           ver_mundo(M, i, j);
       }
       cout << "?" << endl;
   }
   for (i=0; i<f+3 ; i++)
    {
      cout<<"?" << " ";
    }
   delete [] M;
}

int main()
{
    int i,j,f,c;
    char archivo[200];
    nombre_archivo(archivo);
    ifstream a(archivo);
    a>>f;
    a>>c;
    char **M = new char* [f];
    for (i = 0; i < f; i++)
    {
        M[i] = new char[c];
    }
    crear_mundo (M, f, c, a, i, j);
    return 0;
}

¿Como podria implementar las funciones mencionadas? Agradezco sus sugerencias y su ayuda.
#9
Gracias, me es de gran ayuda ahora estoy intentando delimitarlo por arriba y abajo, vuelvo y reitero, muchas gracias.
#10
Hola, he estado haciendo un programa en donde tengo que leer una matriz (solo con caracteres) de un archivo .txt (que se encuentra en la misma carpeta del programa) e imprimirla en pantalla; pero además de eso tengo que delimitar esa matriz con signos de interrogación (¿) cosa que no he podido hacer. Este es el código que llevo hasta el momento (en el archivo.txt las dos primeras lineas son las filas y columnas)
Código (cpp) [Seleccionar]
#include<iostream>
#include<fstream>
using namespace std;

void crear_mundo (char**M, int f, int c, istream& a, int i, int j)
{
    for (i = 0; i < f; i++)
    {
        for (j = 0; j < c; j++)
        {
                a>>M[i][j];
        }
    }
    for (i = 0; i < f; i++)
    {
        for (j = 0; j < c; j++)
        {
            cout << M[i][j] << " ";
        }
        cout << endl;
    }
    delete [] M;
}

int main()
{
    ifstream a("mundo.txt");
    int i,j,f,c;
    a>>f;
    a>>c;
    char **M = new char* [f];
    for (i = 0; i < f; i++)
    {
        M[i] = new char[c];
    }
    crear_mundo (M, f, c, a, i, j);

    return 0;
}


¿De que manera podria hacerlo?
Agradezco su ayuda!!!!!