En el archivo1.txt:
2
5
13
En el archivo2.txt:
7
14
33
40
Nota: si los archivos que se van a mezclar no estan ordenados no se podrá aplicar el método.
El archivo 3 se creará y se usará para guardar todos los números en orden mientras se realiza la mezcla.
Aqui el código:
1 /******************************************************************** 2 * Programa: ordenar numeros en un archivo por metodo de mezcla 3 * Version: 1.0 4 * Autor: Gustavo Adolfo Meza Gutierrez 5 * *******************************************************************/ 6 7 #include <iostream> 8 #include <fstream> 9 10 int main() 11 { 12 int n1,n2,i; 13 14 //Manejadores de los archivos 15 std::ifstream archivo1; 16 std::ifstream archivo2; 17 std::ofstream archivo3; //Este archivo no es necesario crearlo, Se crea solo. 18 19 //Enlace entre manejadores y los archivos 20 archivo1.open("./archivo1.txt"); 21 archivo2.open("./archivo2.txt"); 22 archivo3.open("./archivo3.txt"); 23 24 archivo1>>n1; //EL primer numero de archivo1.txt en n1 25 archivo2>>n2; //EL primer numero de archivo2.txt en n2 26 27 //Verificando si estan vacios los archivos 28 if(archivo1.fail() || archivo2.fail()){ 29 std::cout<<"Alguno de los archivos está vacio!\n"; 30 return (1); 31 } 32 33 while((!archivo1.eof()) || (!archivo2.eof())){ 34 if(n1<n2){ //Si n1 es mayor que n2 35 archivo3<<n1<<'\n'; //El valor de n1 al archivo3.txt 36 archivo1>>n1; //Se lee el siguiente numero de archivo1.txt 37 } 38 else{ //Si n2 es mayor que n1 39 archivo3<<n2<<'\n'; //El valor de n2 al archivo3.txt 40 archivo2>>n2; //Se lee el siguiente numero de archivo2.txt 41 } 42Clic aquí para seguir viendo el resto del código
0 comentarios
Publicar un comentario
Escribe aquí abajo tu comentario...