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

Como puedo convertir un fichero a integer?

Estas en el tema de Como puedo convertir un fichero a integer? en el foro de C/C++ en Foros del Web. Hola, Mi codigo debe leer un fichero/archivo para realizar lo siguiente: "La primera línea: un entero C, que indica el número de casos de prueba. ...
  #1 (permalink)  
Antiguo 04/08/2016, 13:41
 
Fecha de Ingreso: diciembre-2011
Mensajes: 21
Antigüedad: 12 años, 4 meses
Puntos: 0
Pregunta Como puedo convertir un fichero a integer?

Hola,

Mi codigo debe leer un fichero/archivo para realizar lo siguiente:

"La primera línea: un entero C, que indica el número de casos de prueba.

La primera línea de cada caso de prueba contendrá dos enteros V, A donde V representará el número de vértices, A la cantidad de aristas en el grafo G.

Luego vienen A líneas, cada una con tres valores, los primeros dos serán los vértices que conecta esa arista seguida del peso de la arista.

Por ultimo vendrá un carácter que se considerar acomo la raíz del árbol."

Ya tengo casi todas las funciones creadas, pero no se como pasar los parametros del fichero a mis funciones. Por ahora tengo hecho:

Código:
#include <iostream>
#include <fstream>
#include <stdio.h>
#include <limits.h>
using namespace std;

int main () {
	
 ifstream ficheroEntrada;
 char letra;

 ficheroEntrada.open ("entrada.in", ios::in);
 
 if (ficheroEntrada.is_open()) {
	 
	 ficheroEntrada.get(letra);
	 
	while (! ficheroEntrada.eof() ) {
 
	cin >> V;
        Grafo g(V);
        g.addLineas(u, v, w);

 }
 
 ficheroEntrada.close();
}

 else cout << "Fichero inexistente" << endl;
 return 0;
}
Podrian por favor ayudarme?

Gracias por la ayuda!
  #2 (permalink)  
Antiguo 05/08/2016, 17:10
 
Fecha de Ingreso: octubre-2014
Ubicación: Madrid
Mensajes: 1.212
Antigüedad: 9 años, 6 meses
Puntos: 204
Respuesta: Como puedo convertir un fichero a integer?

Te dicen que lo primero que tiene el fichero es un entero y tu estas leyendo un char... Leer un char te impide leer un número de más de un dígito y te complica la lógica del programa. Lo suyo sería:

Código C++:
Ver original
  1. int letra; // por mantener el nombre de la variable, pero deberías cambiarlo

Por otro lado te dice que esa variable indica el número e csos de prueba... Y tu no le estás dando uso. Podrías hacer algo clásico tal que:

Código C++:
Ver original
  1. for(int i=0; i<letra; i++)
  2. {
  3.   // ...
  4. }

O hacer gala de tu dominio de la aritmética:

Código C++:
Ver original
  1. while(letra--)
  2. {
  3. }

Después el ejercicio te pide que, para cada caso, leas dos variables y hagas unas operaciones con ellas...

Código C++:
Ver original
  1. ficheroEntrada >> V >> A;
  2. // ...

No se por que has asumido que cin, que sirve para leer de la entrada estándar (salvo configuración especial será el teclado), te permitirá leer del fichero, pero está mal.

Un saludo
__________________
La ayuda se paga con esfuerzo o con dinero. Si no estás dispuesto a esforzarte y quieres que te hagan los deberes pide presupuesto, al menos así ahorrarás tiempo.
  #3 (permalink)  
Antiguo 06/08/2016, 13:00
 
Fecha de Ingreso: diciembre-2011
Mensajes: 21
Antigüedad: 12 años, 4 meses
Puntos: 0
Respuesta: Como puedo convertir un fichero a integer?

La verdad es que estoy leyendo manuales para c++, pues no lo domino. Tu explicacion me ayudo con mis dudas.

Muchas gracias!

Etiquetas: convert, file, integer
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 15:07.