menu turbo

Iniciado por jelsir, 26 Julio 2013, 20:11 PM

0 Miembros y 1 Visitante están viendo este tema.

jelsir

Buen dia espero que me puedan ayudar

en clases realizamos las siguientes estructuras pila, listas y suma, ahora como ultimo necesito que se haga un menu en donde yo pueda eligir estas 3 operaciones que les acabo de mencionar y claro que se ejecute, los codigos de las operaciones ya los tengo pero no se como hacer el menu y como llamar a las 3 operaciones espero que me ayuden...

Gracias




AL PARECER YA CASI PERO ME MARCAR ALGUNES ERRORES:  AYUDA

#include<conio.h>
#include<iostream.h>
#include<stdio.h>

main()
{
    int opcion;


opcion=1;
while(opcion!=5)
{
   clrscr();
   printf("Menu de Vector, Pila, Matriz, Lista\n\n");
   printf("1- Vector\n");
   printf("2- Pila\n");
   printf("3- Matriz\n");
   printf("4- Lista\n");
   printf("5- SALIR\n\n");
   printf("Opcion: ");scanf("%d",&opcion);
      switch(opcion)
      {
case 1 :
clrscr();
int vector[10];

void llenarvector()
{

int inicio;
   for(inicio=0;inicio<10;inicio++)
{
printf("introduzca un valor para la posicion%d",inicio+1);
scanf("%d",&vector[inicio]);
}

}
void imprimirArreglo()
{
int posicion;
for(posicion=0;posicion<10;posicion++)
{
printf("el valor de la primera posicion %d es: %d \n", posicion,vector[posicion]);
}
}
void main()
{
clrscr();
llenarvector();
getch();
printf("imprimiendo valores");
imprimirArreglo();
getche();

getche();
break;




case 2 :

clrscr();
int opcion,tope,indice,dato,pila[5];


void imprimir()
{
clrscr();
   if (tope==-1)
   {
   gotoxy(5,10);

   printf("PILA VACIA.......");

   }
else

{
   for(indice=0;indice<=tope;indice++)

   {

   textcolor(RED);
   gotoxy(20,indice+6);
   cprintf("%d",pila[indice]);
   delay(100);

   }
   }
}


void insertar()
{

   if(tope==4)
   {
   gotoxy(25,15);
   printf("PILA LLENA:");
}
else
{
   printf("DATO:");
   scanf("%d",&dato);
   tope++;
   pila[tope]=dato;

   }
}

void eliminar()
{
   if(tope==-1)
{
   gotoxy(25,15);
   printf("PILA VACIA:");
}
else
{
   dato=pila[tope];
   printf("dato eliminado: %d",dato);
   tope--;
}
}

void menu()
{


   gotoxy(20,1);
   printf("seleccione una opcion \n");
   gotoxy(25,3);
   printf("1.- Insertar");
   gotoxy(25,4);
   printf("2.- Eliminar");
   gotoxy(25,5);
   printf("3.- Imprimir");
   gotoxy(25,6);
   printf("4.- Salir");
   gotoxy(28,8);
   printf("[[[   ]]]");
   gotoxy(33,8);
   scanf("%d",&opcion);
   switch(opcion)
{
case 1:insertar();
break;
case 2:eliminar();
break;
case 3:imprimir();
break;
case 4:abort();
}
}

void main()
{
clrscr();
tope=-1;
do
{
   menu();
   opcion=getch();
   clrscr();
}
while(opcion==13);
}

getche();
break;














case 3 :
clrscr();
int fila,columna;

int matriz[4][3];
void llenarmatriz()

{
   printf("llenando matriz.......\n");

   for(fila=0;fila<4;fila++)

   {
   for(columna=0;columna<3;columna++)

   {

   printf("\n valor para posiscion:%d,%d",fila,columna);
   scanf ("%d",&matriz[fila][columna]);

   }
   }
}

void imprimir()
{

for(fila=0;fila<4;fila++)
{
for(columna=0;columna<3;columna++)
{
printf("\n valor en posicion:%d,%d es: %d",fila,columna,matriz[fila][columna]);

}
}
}

void imprimirDos()
{

for(fila=0;fila<4;fila++)
{
for(columna=0;columna<3;columna++)
{
   gotoxy((columna+2)*3,(fila+4));
   printf("%d",matriz[fila][columna]);

}
}
}

void main()
{
clrscr();
llenarmatriz();
getch();
clrscr();
printf("imprimiendo valores:\n");
imprimirDos();
getch();
}
getche();
break;







case 4 :

clrscr();
/* LISTA SIMPLEMENTE ENLAZADA*/
int opc;
typedef struct nodo
{
int valor;
nodo *sig;
};
nodo *I, *F, *nuevo, *aux;
insertar()
{
if (I==NULL)
{
nuevo=(nodo*) malloc(sizeof(nodo));
gotoxy(20,3);printf("ELEMENTOS PARA REGISTRAR EN LA LISTA");
gotoxy(20,5);printf("TECLEA EL ELEMENTO : ");
gotoxy(20,7);scanf("%d",&nuevo->valor);
nuevo->sig=NULL;
I=F=nuevo;
}
else
{
nuevo=(nodo*)malloc(sizeof(nodo));
gotoxy(20,3);printf("ELEMENTOS PARA REGISTRAR EN LA LISTA");
gotoxy(20,5);printf("TECLEA El ELEMENTO : ");
gotoxy(20,7);scanf("%d",&nuevo->valor);
F->sig=nuevo;
nuevo->sig=NULL;
F=nuevo;
}
return 0;
}
eliminar()
{
nodo *aux;
int borrado=0,dato;
if(I==NULL)
{
gotoxy(20,5);printf("< Í { Í [ ELIMINAR ELEMENTOS DE LA LISTA ] Í > Í } ");
gotoxy(20,7);printf("< Í { Í [ LA LISTA SE ENCUENTRA VACIA ] Í > Í } ");
getch();
}
else//else1
{ gotoxy(20,5);printf("ELIMINAR ELEMENTOS DE LA LISTA");
gotoxy(20,7);printf("šQUE DATO DESEAS BORRAR?:");
gotoxy(20,9);scanf("%d",&dato);
aux=I;
while((aux->sig!=NULL)&&(borrado==0))
{
if(aux->valor==dato)
{
I=aux->sig;
borrado=1;
}
else
{
if(aux->sig->valor==dato)
{
if(aux->sig==F)
{
F=aux;
aux->sig=NULL;
borrado=1;
}//if(aux->sig==F)
else
{
aux->sig=aux->sig->sig;
borrado=1;
}//fin del else
}//if(aux->sig==F)
else
aux=aux->sig;
}//fin del else
}//fin del while
if (aux->valor==dato)
{
if ((aux==F) && (aux==I))
{
I=F=NULL;
borrado=1;
}//fin del if ((aux==F) && (aux==I))
else
{
aux->sig=NULL;
borrado=1;
}
}//fin del if (aux->valor==dato)
}//fin del else1
return 0;
}//fin de la funcion eliminar
imprimir()

{
if (I==NULL)
{
gotoxy(25,11);printf("VISUALIZAR ELEMENTOS DE LA LISTA");
gotoxy(25,13);printf("NO EXISTEN ELEMENTOS EN LA LISTA PARA MOSTRAR");
getch();
}//fin del if (I==Null
else
{
aux=I;
while(aux->sig!=NULL)
{
printf("%d\t",aux->valor);
aux=aux->sig;
}//fin del while
printf("%d\t",aux->valor);
getch();
}//fin del else
return 0;
}//fin de la funcion imprimir
Cuadro ()
{
int col,lin;
gotoxy(1,1);putchar(201);//É
gotoxy(80,1);putchar(187);//»
gotoxy(80,24);putchar(188);//Œ
gotoxy(1,24);putchar(200);//È
for (col=2; col<=79; col++)
{
gotoxy(col,1);putchar(205);
gotoxy(col,24);putchar(205);
}
for (lin=2; lin<=23; lin++)
{
gotoxy(1,lin);putchar(186);
gotoxy(80,lin);putchar(186);
}
return 0;
}
main()
{
textmode(C80);
clrscr();
int opc;
I=F=NULL;
do
{
clrscr();
Cuadro();
gotoxy(20,2);printf("SELECCIONA U N A OPCION");
gotoxy(25,4);printf("1.- INSERTAR");
gotoxy(25,6);printf("2.- ELIMINAR");
gotoxy(25,8);printf("3.- IMPRIMIR");
gotoxy(25,10);printf("4.- EXIT");
gotoxy(25,12);printf("< < [ ] > >");
gotoxy(31,12);scanf("%d",&opc);
switch (opc)
{
case 1:
{
clrscr();
Cuadro();
insertar();
}
break;
case 2:
{
clrscr();
Cuadro();
eliminar();
}
break;
case 3:
{
clrscr();
Cuadro();
gotoxy(20,5);printf("VISUALIZAR ELEMENTOS DE LA LISTA");
gotoxy(20,7);printf("DATOS EN LA LISTA SON: \n");
gotoxy(20,9);imprimir();
break;
}
case 4:
exit(0);
}
}while(opc!=4);
return 0;
}

            getche();
            break;




(`'·.¸(`'·.¸ ¸.·'´)¸.·'´)
«´¨`·...[JeLsIr] «
(¸.·'´(¸.·'´ `'·.¸)`'·.¸)

amchacon

Veo 3 mains, has puesto tres programas distintos en un mismo archivo?  :o

Solo puede haber un main por programa.
Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar

jelsir

Cita de: amchacon en 26 Julio 2013, 21:55 PM
Veo 3 mains, has puesto tres programas distintos en un mismo archivo?  :o

Solo puede haber un main por programa.

Ahhhh

me puedes ayudar????

gracias
(`'·.¸(`'·.¸ ¸.·'´)¸.·'´)
«´¨`·...[JeLsIr] «
(¸.·'´(¸.·'´ `'·.¸)`'·.¸)