elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: (TUTORIAL) Aprende a emular Sentinel Dongle By Yapis


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Problema en creación de varios arch. de texto simultaneos
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema en creación de varios arch. de texto simultaneos  (Leído 1,208 veces)
Cero++

Desconectado Desconectado

Mensajes: 52



Ver Perfil WWW
Problema en creación de varios arch. de texto simultaneos
« en: 5 Enero 2019, 02:11 am »

Buenas gente, aquí el resumen de para qué codifique el siguiente código.
Necesitaba hacer "x" cantidades de comisiones dependiendo de la cantidad de alumnos que tengo donde el máximo es de 30 alumnos x comisión.
Mi problema, sólo me crea la primera comisión y luego, la siguiente información se pierde...
El error se debe encontrar en la función <Crear_lista> a mi parecer, pero no lo veo, debe ser de tipo lógico, llegué a esa conclusión.
Respondanme por favor.

Código
  1. #include <iostream>
  2. #include <vector>
  3. #include <sstream>
  4. #include <fstream>
  5. using namespace std;
  6. struct Alumno{
  7. string nom_ape;
  8. };
  9. istream& operator>>(istream &, Alumno&);
  10. ostream& operator<<(ostream &, Alumno&);
  11. int Cantidad_comisiones(const int _maximo,size_t _cantidad_alum);
  12. void Crear_listas(int, vector<Alumno>, int, int);
  13. int Ver_cociente(int _comision, size_t _cantidad_alum); //Medio redundante...
  14. int Alumnos_sobrantes(int _comision, size_t _cantidad_alum);
  15. int main(int argc, char *argv[]) {
  16. const int maximo=30;
  17. vector<Alumno> V; Alumno aux;
  18. ifstream lectura;
  19. lectura.open("Unidad 5 - Nro 3 - Inscriptos.txt");
  20. if(!lectura.is_open()){
  21. cerr<<"Archivo no abierto"<<endl;
  22. exit(-1);
  23. }
  24. while(lectura>>aux){
  25. V.push_back(aux);
  26. }
  27. int comisiones=Cantidad_comisiones(maximo,V.size());
  28. int cociente=Ver_cociente(comisiones,V.size());
  29. int alumnos_sobrantes=Alumnos_sobrantes(comisiones,V.size());
  30. cout<<"Total de alumnos: "<<V.size()<<endl;
  31. cout<<"Cantidad de comisiones: "<<comisiones;
  32. Crear_listas(comisiones,V,cociente,alumnos_sobrantes);
  33. return 0;
  34. }
  35. istream& operator>>(istream &i, Alumno &A){
  36. getline(i,A.nom_ape);
  37. return i;
  38. }
  39. ostream& operator<<(ostream &o, Alumno &_A){
  40. o<<_A.nom_ape<<endl;
  41. return o;
  42. }
  43. int Cantidad_comisiones(const int _maximo,size_t _cantidad_alum){
  44. int cociente=0,resto=0;
  45. cociente=_cantidad_alum/_maximo;
  46. resto=_cantidad_alum%_maximo;
  47. if(resto!=0){
  48. return cociente+1;
  49. }
  50. return cociente;
  51. }
  52. int Ver_cociente(int _comision, size_t _cantidad_alum){ //Que podria hacer para no pasar todo nuevamente?
  53. int alumno_x_comision=_cantidad_alum/_comision;
  54. return alumno_x_comision;
  55. }
  56. int Alumnos_sobrantes(int _comision, size_t _cantidad_alum){
  57. float resto=_cantidad_alum%_comision;
  58. if(resto!=0){
  59. return resto*_comision;
  60. }
  61. return resto;
  62. }
  63. void Crear_listas(int _comisiones, vector<Alumno> _V, int _cociente,int _alum_sobrantes){
  64. string nom_lista="Unidad 5 - Nro 3 - Comision"; stringstream ss;
  65. ofstream salida;
  66. for(int i=0;i<_comisiones;i++) {
  67. ss<<nom_lista<<i<<".txt";
  68. salida.open(ss.str());
  69. if(_alum_sobrantes!=0){
  70. for(int i=0;i<_cociente+1;i++) {
  71. salida<<_V[i];
  72. }
  73. }else{
  74. for(int i=0;i<_cociente;i++) {
  75. salida<<_V[i];
  76. }
  77. }
  78. }
  79. salida.close();
  80. }


« Última modificación: 5 Enero 2019, 13:59 pm por Cero++ » En línea

Código:
Ser diligente es lo ÚNICO que importa para lograr el éxito[c/ode]
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Buscar (texto) en varios archivos de texto
Dudas Generales
‭lipman 4 11,895 Último mensaje 10 Julio 2010, 18:44 pm
por ‭lipman
Problema Arch, GRUB « 1 2 »
GNU/Linux
leogtz 13 7,506 Último mensaje 23 Enero 2011, 10:21 am
por leogtz
Arch Anywhere te permite instalar Arch Linux puro y duro sin volverte loco en...
Noticias
wolfbcn 0 2,207 Último mensaje 23 Enero 2017, 21:34 pm
por wolfbcn
Creación de editor de texto en C
Programación C/C++
Jarvis_njp 0 1,739 Último mensaje 10 Julio 2017, 00:51 am
por Jarvis_njp
ayuda con creación de varios ficheros
Programación C/C++
elcout 4 3,531 Último mensaje 30 Octubre 2020, 11:44 am
por Eternal Idol
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines