Dev - C++ - urgente colas

   
Vista:

urgente colas

Publicado por jaime (2 intervenciones) el 19/09/2007 17:44:59
por favor alguien que pueda leer un programa de colas necesito entregar un reporte de que es lo que hace detalladamente y no se conmo se hace alguien que me pueda ayudar se lo agradeceria infinitamente ya que me esta trabando el profesor
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:urgente colas

Publicado por Gabriela Flamenco (3 intervenciones) el 19/09/2007 22:10:51
#include<iostream>
#include<conio.h>

using namespace std;

class nodo{
public:
nodo(int v, nodo *sig = NULL)
{
valor = v;
siguiente = sig;
}
private:
int valor;
nodo *siguiente;

friend class cola;
};
typedef nodo *pnodo;

class cola{

public:
cola(): primero(NULL) , ultimo(NULL){}
~cola();
void Ingresar (int v);
int Leer();

private:
pnodo primero, ultimo;
};

cola::~cola()
{
while(primero)
Leer();
}

void
cola::Ingresar(int v)
{
pnodo nuevo;
nuevo =
new nodo(v);

if(ultimo) ultimo->siguiente = nuevo;
ultimo =
nuevo;

if(!primero) primero = nuevo;
}

int
cola::Leer()
{
pnodo
nodo;
int
v;
nodo
= primero;

if(!nodo) return 0;

primero = nodo->siguiente;
v =
nodo ->valor;

delete nodo;

if(!primero) ultimo = NULL;

return v;
}

int
main()
{

int
a;
cola
cola1;
int
op;

cout<<"menu de opciones"<<endl;

cout<<"1.nuevo elemento"<<endl;

cout<<"2.Quitar un elemento"<<endl;

cin>>op;


switch(op){

case 1:

cout<<"Ingresar un elemento a la cola"<<endl;

cin>>a;

cola1.Ingresar(a);


break;


case 2:

cout<<"Borrar un elemento de la cola"<<endl;

cola1.Leer();

break;

}

getch();

return 0;

}//fin del main
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:urgente colas

Publicado por Edith Rios L (4 intervenciones) el 13/10/2007 19:46:01
porfis no entiendo lo que hace tu programa ¿lo podias Explicar?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:urgente colas

Publicado por Gabriela Flamenco (3 intervenciones) el 19/09/2007 22:19:40
//te mando este haber si te sirve esta facil
#include <iostream>
#include <fstream>
using namespace std;
#include <stdlib.h>
#include <ctype.h>

class nodo{
public:
nodo(int v, nodo *sig=NULL){
valor = v;
siguiente = sig;
}
private:
int valor;
nodo *siguiente;

friend class Cola;
};

typedef nodo *pnodo;

class Cola{
public:
Cola():primero(NULL), ultimo(NULL){}
~Cola();
void anadir(int v);
int leer();
private:
pnodo primero, ultimo;
};

Cola::~Cola(){
while(primero)
leer();
}

void Cola::anadir(int v){
pnodo nuevo;
nuevo = new nodo(v);
if(ultimo)
ultimo->siguiente = nuevo;
ultimo = nuevo;
if(!primero)
primero=nuevo;
}

int Cola::leer(){
pnodo nodo;
int v;
nodo = primero;
if(!nodo)
return 0;
primero=nodo->siguiente;
v=nodo->valor;
delete nodo;
if(!primero)
ultimo=NULL;
return v;
}

void main(){
ifstream lectura;
ofstream Salida;
int opc, n, tam;
char c;
Cola cola1, cola2;
do{
cout<< "\tMENU\n"
<< "\n1. Insertar Dato"
<< "\n2. Eliminar Dato"
<< "\n3. Copiar de archivo a otro"
<< "\n4. Salir"
<< "\n\n Elija una opcion: ";
cin>> opc;
switch(opc){
case 1:
cout<< "\n\nDigite el valor entero a insertar: ";
cin>> n;
cola1.anadir(n);
break;
case 2:
cout<< "\n\nElemento eliminado: "<< cola1.leer();
break;
case 3:
cout<<"\n\nContenido del archivo 'lectura.txt': \n\n";
lectura.clear();
Salida.clear();
lectura.open("lectura.txt");
Salida.open("numeros.txt", ios::trunc);
if(!lectura || !Salida){
cerr<<"\nError al abrir el archivo\n";
break;
}
tam=0;
while(lectura.get(c)){
cout<<c;
if(isdigit(c)){
cola2.anadir(c);
tam++;
}
};
for(int i=0; i<tam; i++)
Salida.put(cola2.leer());
cout<< "\n\nContenido del archivo 'numeros.txt': \n\n";
Salida.close();
lectura.close();
lectura.clear();
lectura.open("numeros.txt");
if(!lectura)
cerr<<"\nError al abrir el archivo\n";
if(lectura.good())
while(lectura.get(c))
cout<<c;
lectura.close();
break;
case 4:
cout<< "\n\nSaliendo...\n";
break;
default:
cout<< "\n\nOpcion no valida...\n";
}
cout<<endl<< endl;
system("pause");
system("cls");
}while(opc!=4);
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:gracias me fue de mucha utilidad

Publicado por jaime cruz (2 intervenciones) el 20/09/2007 18:24:09
gracias amiga con esto creo que ya voy a poder pasar mi parcial
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar