ayuda en c++
por favor sera que alguien podria ayudarme a realizar un programa sencillo en c++ que simule o haga las opciones de mensajes de un celular... osea guarde, envie y elimine los mensajes de textos recibidos por fecha de llegada.. solo guarde 20 y si llega uno nuevo o lo creo, borre el mas viejo... gracias por favor ayudenme
Te recomiendo la siguiente estructura de datos :
una lista de char pointers, para almacenar los dados, en lo que en ingles se llama queue, con dos operanciones : insert al princio de la lista y delete, al final, en reginen de fifo (first in - first out).
Para mas sencilles la lista puede implementarse con
char *p[20] y dos pointers, al principio y final de la misma.
A medida que llegan los mensajes, se introducen en la lista hasta que esta se llena. Desde ese momento, por cada mensaje nuevo a insertar al principio de la lista, es necesario eliminar uno al final de la misma.
Espero no haberte causado un dolor de cabeza, pensandolo un poco veras que la solucion no es complicada. Suerte ! ! !
una lista de char pointers, para almacenar los dados, en lo que en ingles se llama queue, con dos operanciones : insert al princio de la lista y delete, al final, en reginen de fifo (first in - first out).
Para mas sencilles la lista puede implementarse con
char *p[20] y dos pointers, al principio y final de la misma.
A medida que llegan los mensajes, se introducen en la lista hasta que esta se llena. Desde ese momento, por cada mensaje nuevo a insertar al principio de la lista, es necesario eliminar uno al final de la misma.
Espero no haberte causado un dolor de cabeza, pensandolo un poco veras que la solucion no es complicada. Suerte ! ! !
amigo la verdad estoy algo corto de tiempo y no he podido dar con eso ... el profe no nos explica bien y no estoy bien documentado con c++,... se programar solo con visual basic... que podrias hacer por mi ... ayudame por favor
Este es el programa prometido:
// programa celular.cpp
// written in Borland CPP ver 4.5
#include <iostream.h>
#include <stdio.h>
#include <string.h>
#include <conio.h>
const int N = 20; // para probar el programa conviene cambiar a N = 4
void Show(char **p)
{
for(int i = 0;i < N;i++)
if(p[i])
cout << p[i] << endl;
cout << endl;
} // SHOW
int Input(char **p,int index)
{
char str[80];
cout << "entre un mensage, fin para salir --> ";
gets(str);
if(!strcmp(str,"fin"))
return 0;
p[index] = new char[strlen(str)];
strcpy(p[index],str);
return 1;
} // INPUT
int GetChoice()
{
cout << "mostrar lista <Y/N> ";
char choice = getche();
cout << endl;
if(choice == 'y' || choice == 'Y')
return 1;
return 0;
} // GET CHOICE
void Process()
{
char *p[N] = {NULL};
int index = 0;
while(Input(p,index))
{
if(++index == N)
index = 0;
if(GetChoice())
Show(p);
}
for(int i = 0;i < N;i++)
if(p[i])
delete p[i];
} // PROCESS
void main()
{
Process();
cout << "end of program - good bye ! ! ! " << endl;
} // MAIN
// programa celular.cpp
// written in Borland CPP ver 4.5
#include <iostream.h>
#include <stdio.h>
#include <string.h>
#include <conio.h>
const int N = 20; // para probar el programa conviene cambiar a N = 4
void Show(char **p)
{
for(int i = 0;i < N;i++)
if(p[i])
cout << p[i] << endl;
cout << endl;
} // SHOW
int Input(char **p,int index)
{
char str[80];
cout << "entre un mensage, fin para salir --> ";
gets(str);
if(!strcmp(str,"fin"))
return 0;
p[index] = new char[strlen(str)];
strcpy(p[index],str);
return 1;
} // INPUT
int GetChoice()
{
cout << "mostrar lista <Y/N> ";
char choice = getche();
cout << endl;
if(choice == 'y' || choice == 'Y')
return 1;
return 0;
} // GET CHOICE
void Process()
{
char *p[N] = {NULL};
int index = 0;
while(Input(p,index))
{
if(++index == N)
index = 0;
if(GetChoice())
Show(p);
}
for(int i = 0;i < N;i++)
if(p[i])
delete p[i];
} // PROCESS
void main()
{
Process();
cout << "end of program - good bye ! ! ! " << endl;
} // MAIN
