Foros del Web » Programación para mayores de 30 ;) » C/C++ »

sobre programacion c++, con respecto a los txt..

Estas en el tema de sobre programacion c++, con respecto a los txt.. en el foro de C/C++ en Foros del Web. buenas, mi nombre es anyely, pero me dicen anyi, estoy nueva aqui en el Foro, y he buscado más o menos la informacion que necesito ...
  #1 (permalink)  
Antiguo 19/03/2011, 12:02
 
Fecha de Ingreso: marzo-2011
Ubicación: Duaca
Mensajes: 6
Antigüedad: 13 años, 1 mes
Puntos: 0
Pregunta sobre programacion c++, con respecto a los txt..

buenas, mi nombre es anyely, pero me dicen anyi, estoy nueva aqui en el Foro, y he buscado más o menos la informacion que necesito pero son muchos los foros anteriores prefiero preguntar.

tengo una clase Tipo_examen.h donde se encuentra lo atributos publicos y privado y los metodos, alli #include "Tipo_examen.cpp" donde desarrollare los metodos, lo que llama el profe encapsulamiento, debo leer los datos de un txt, si deseo registrar otro examen este debe guardarse en el txt, yo use la libreria ftream, pero me dan unos errores. aaahh estoy usando lista simplemente enlazada, SOY NUEVA PROGRAMANDO En C++, he hecho lo que puedo--.. por favor si alguien me ayuda... por fa..!

aqui va el codigo:

#ifndef TIPO_EXAMEN_H
#define TIPO_EXAMEN_H

#include <string>
using namespace std;

class Tipo_examen
{
private:
string cod_examen;
string descripcion;
float costo_unitario;
string unidad_medida;
float valor_minimo;
float valor_maximo;
public:
Tipo_examen();
Tipo_examen(string exa, string des, float cu, string umed, float vmin, float vmax);
void setcod_examen(string exa);
void setdescripcion(string des);
void setcosto_unitario(float cu);
void setunidad_medida(string umed);
void setvalor_minimo(float vmin);
void setvalor_maximo(float vmax);
string getcod_examen();
string getdescripcion();
float getcosto_unitario();
string getunidad_medida();
float getvalor_minimo();
float getvalor_maximo();
};


#include "Tipo_examen.cpp"
#endif

Tipo_examen::Tipo_examen(){}
/////////////////////////////////////////////
Tipo_examen::Tipo_examen(string exa, string des, float cu,string umed, float vmin, float vmax)
{
cod_examen=exa;
descripcion=des;
costo_unitario=cu;
unidad_medida=umed;
valor_minimo=vmin;
valor_maximo=vmax;
}
//////////////////////////////////////////////////////////////////
void Tipo_examen::setcod_examen(string exa)
{cod_examen=exa;}
//////////////////////////////////////////////////////////////////////
void Tipo_examen::setdescripcion(string des)
{descripcion=des;}
/////////////////////////////////////////////////////////////////////
void Tipo_examen::setcosto_unitario(float cu)
{costo_unitario=cu;}
////////////////////////////////////////////////////////////////////
void Tipo_examen::setunidad_medida( string umed)
{ unidad_medida=umed;}
////////////////////////////////////////////////////////////////////
void Tipo_examen::setvalor_minimo(float vmin)
{valor_minimo=vmin;}
/////////////////////////////////////////////////////////////////
void Tipo_examen::setvalor_maximo(float vmax)
{valor_maximo=vmax;}
//////////////////////////////////////////////////////////////////////
string Tipo_examen::getcod_examen()
{return exa;}
////////////////////////////////////////////////////////////////
string Tipo_examen::getdescripcion()
{return des;}
////////////////////////////////////////////////////////////////////
float Tipo_examen::getcosto_unitario()
{return cu;}
///////////////////////////////////////////////////////////////////////
string Tipo_examen::getunidad_medida()
{ return umed;}
////////////////////////////////////////////////////////////////////////////
float Tipo_examen::getvalor_minimo()
{return vmin;}
///////////////////////////////////////////////////////////////////////////
float Tipo_examen::getvalor_maximo()
{return vmax;}

// este el el main ..el PRINCIPAL
#include <cstdlib>
#include <iostream>
#include"Lista.h"
#include "Tipo_examen.h"
using namespace std;

int main()
{
Lista<Tipo_examen>l;
Cargar_exa(l);
Imprimir_exa(l);
system("PAUSE");
return 0;
}

void Cargar_exa(Lista<Tipo_examen> &lis)
{


nodo<Tipo_examen> *ap;

string codigo;
string descrip,unimed;
float costou,valormax,valormin;
Tipo_examen t;

ifstream Leer("tipoexamen.txt");


if(!Leer){cout<<" Error al Abrir el Fichero "<<endl;}
else
{
while(!Leer.eof())
{
Leer>>codigo;
Leer>>descrip;
Leer>>costou;
Leer>>unimed;
Leer>>valormin;
Leer>>valormax;
t = Tipo_examen(codigo,descrip,costou,unimed,valormin, valormax);
if(lis.Vacia())
{
lis.InsComienzo(t);
ap = lis.ObtPrimero();
}
else
{
lis.InsDespues(ap,t);
ap = lis.ObtProx(ap);

}

};

}
}
void Imprimir_exa (Lista<Tipo_examen> &l)
{
nodo<Tipo_examen> *ap;
Tipo_examen tipe;
ap = l.ObtPrimero();
cout<<"**Codigo de Examen****Descripción del Examen***Costo Unitario***Unidad de Medida****Valor Minimo de Referencia****Valor Maximo de Referencia** "<<endl;

while(ap != NULL)
{
tipe = l.ObtInfo(ap);
cout<<tipe.getcod_examen()<<" "<<tipe.getdescripcion() <<" "<<tipe.getcosto_unitario()<<" "<<tipe.getunidad_medida()<<" "<<tipe.getvalor_minimo()<<" "<<tipe. getvalor_maximo()<<endl;
ap = l.ObtProx(ap);
};

};
// Y LA LISTA ES ESTA:

#ifndef Lista_H
#define Lista_H

template <class Tipo>
class Lista;

template <class Tipo>
class nodo
{
Tipo info;
nodo<Tipo>* prox;
friend class Lista<Tipo>; //La clase Lista puede acceder a sus atributos privados
};
template <class Tipo>
class Lista
{
typedef nodo<Tipo>* Apuntador;
private:
nodo<Tipo>* Primero;
public:
Lista();
nodo<Tipo>* ObtPrimero();
void AsigPrimero(nodo<Tipo>* p);
bool Vacia();
bool Llena();
bool InsComienzo(Tipo Valor);
bool EliComienzo(Tipo &Valor);
bool InsDespues(Apuntador p,Tipo Valor);
bool EliDespues(Apuntador p,Tipo &Valor);
~Lista();
nodo<Tipo>* ObtProx(Apuntador p);
void AsigProx(Apuntador p,Apuntador q);
Tipo ObtInfo(Apuntador p);
void AsigInfo(Apuntador p,Tipo Valor);
};
#include "Lista.cpp"
#endif

//IMPLEMENTACION
#include <iostream>
#include <string>
using namespace std;

template <class Tipo>
nodo<Tipo>*Lista<Tipo>::ObtPrimero()
{
return Primero;
}

template <class Tipo>
void Lista<Tipo>::AsigPrimero(nodo<Tipo>* p)
{
Primero=p;
}

template <class Tipo>
Lista<Tipo>::Lista()
{
Primero=NULL;
}

template <class Tipo>
bool Lista<Tipo>::Vacia()
{
return Primero == NULL;
}

template <class Tipo>
bool Lista<Tipo>::Llena()
{
nodo<Tipo> *p;
p=new nodo<Tipo>;
if (p==NULL)
return true;
else
{
delete p;
return false;
}
}
template <class Tipo>
bool Lista<Tipo>::InsComienzo(Tipo Valor)
{
Apuntador nuevo;
if (!Llena())
{
nuevo=new nodo<Tipo>;
nuevo->info=Valor;
nuevo->prox=Primero;
Primero=nuevo;
return true;
}
else
return false;
}

template <class Tipo>
bool Lista<Tipo>::EliComienzo(Tipo &Valor)
{
Apuntador viejo;
if (!Vacia())
{
viejo=Primero;
Valor=viejo->info;
Primero=Primero->prox;
delete viejo;
return true;
}
else
return false;
}

template <class Tipo>
bool Lista<Tipo>::InsDespues(Apuntador p,Tipo Valor)
{
Apuntador nuevo;
if (!Llena())
if (p==NULL)
return false;
else
{
nuevo=new nodo<Tipo>;
nuevo->info=Valor;
nuevo->prox=p->prox;
p->prox=nuevo;
return true;
}
else
return false;
}

template <class Tipo>
bool Lista<Tipo>::EliDespues(Apuntador p,Tipo &Valor)
{
Apuntador viejo;
if (p==NULL)
return false;
else
if (p->prox==NULL)
return false;
else
{
viejo=p->prox;
Valor=viejo->info;
p->prox=viejo->prox;
delete viejo;
return true;
}
}

template <class Tipo>
nodo<Tipo>* Lista<Tipo>::ObtProx(Apuntador p)
{
return p->prox;
}

template <class Tipo>
void Lista<Tipo>::AsigProx(Apuntador p,Apuntador q)
{
p->prox=q;
}

template <class Tipo>
Tipo Lista<Tipo>::ObtInfo(Apuntador p)
{
return p->info;
}

template <class Tipo>
void Lista<Tipo>::AsigInfo(Apuntador p,Tipo Valor)
{
p->info=Valor;
}

template <class Tipo>
Lista<Tipo>::~Lista()
{
nodo<Tipo> *p;
while (!Vacia())
{
p=Primero->prox;
delete Primero;
Primero=p;
}
}






LISTO...!! ESO ES LO QUE TENGO Y ME SALE ERROR DE COMPILACION CON LAS VARIABLES , EXA,VMIN,VMAX,.....
Y SI NO CORRIJO ESO NO PUEDO VER SI ME FUNCIONAN LAS FUNCIONES VOID QUE HICE...
GRACIAS
Y DISCULPEN LO LARGOOOO!! JEJEJEEJE
  #2 (permalink)  
Antiguo 20/03/2011, 23:45
 
Fecha de Ingreso: febrero-2011
Ubicación: Paraguay
Mensajes: 59
Antigüedad: 13 años, 2 meses
Puntos: 1
Respuesta: sobre programacion c++, con respecto a los txt..

Mejor si lo editas y usas la etiqueta code si?? Sino es imposible que te ayudemos
  #3 (permalink)  
Antiguo 23/03/2011, 14:55
Avatar de sephirot47  
Fecha de Ingreso: marzo-2011
Ubicación: BCN
Mensajes: 54
Antigüedad: 13 años, 1 mes
Puntos: 9
Respuesta: sobre programacion c++, con respecto a los txt..

Exacto pon la etiqueta code i/o pon el error que te da -.- !
__________________
Todo lo que tiene un inicio tiene un final inevitable...

¡ No olvides darme karma si te fui útil ^^ !
  #4 (permalink)  
Antiguo 24/03/2011, 09:19
 
Fecha de Ingreso: marzo-2011
Ubicación: Duaca
Mensajes: 6
Antigüedad: 13 años, 1 mes
Puntos: 0
Información Respuesta: sobre programacion c++, con respecto a los txt..

bueno estuve, revisando el proyecto, y bueno me faltaba acomodar una gets, que estaban mal llamados, y con el txt, tuve que escribir los floats con (.) y no con (,) porque no daba el resultado, y llamarlos en orde, las librerias las tuve que pegar de nuevo, y el ejercicio ya corre, uffff.. Gracias a Dios.. el prof, me pidio que agregara una pila tipo lista, ahy me toca verrrr como resuelvvooooo!! jejeje gracias por sus repsuestasssss!! fueron las unicas....
  #5 (permalink)  
Antiguo 24/03/2011, 09:23
Avatar de sephirot47  
Fecha de Ingreso: marzo-2011
Ubicación: BCN
Mensajes: 54
Antigüedad: 13 años, 1 mes
Puntos: 9
Respuesta: sobre programacion c++, con respecto a los txt..

xD, no es que te hayan ayudado mucho pero weno xD ! (Por no decir nada...)
__________________
Todo lo que tiene un inicio tiene un final inevitable...

¡ No olvides darme karma si te fui útil ^^ !
  #6 (permalink)  
Antiguo 24/03/2011, 09:51
 
Fecha de Ingreso: marzo-2011
Ubicación: Duaca
Mensajes: 6
Antigüedad: 13 años, 1 mes
Puntos: 0
Sonrisa Respuesta: sobre programacion c++, con respecto a los txt..

Cita:
Iniciado por sephirot47 Ver Mensaje
xD, no es que te hayan ayudado mucho pero weno xD ! (Por no decir nada...)




jajajajajajajajaja!!!! weno... no hay rollo..... por hay se dice que sobrevive el mas fuerte, leyes naturales, es bueno recibir ayuda, pero sinn dejar de luchar.....
  #7 (permalink)  
Antiguo 27/03/2011, 07:54
 
Fecha de Ingreso: julio-2010
Mensajes: 153
Antigüedad: 13 años, 9 meses
Puntos: 1
Respuesta: sobre programacion c++, con respecto a los txt..

eso pasa por usar windows
  #8 (permalink)  
Antiguo 27/03/2011, 21:23
 
Fecha de Ingreso: marzo-2011
Ubicación: Duaca
Mensajes: 6
Antigüedad: 13 años, 1 mes
Puntos: 0
De acuerdo Respuesta: sobre programacion c++, con respecto a los txt..

ook.. bueno .., si en cierta parte.. pero aun no acomodo la maquina... un dia de stos de colapsara... pero en fin..se que tengo pendiente.. colocar doble buteo..jeje

Etiquetas: programacion, txt
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:52.