Alfabeto


Código:
#include <iostream>
#include <string.h>
#include <cstdlib>
#include <fstream>
#include <conio.h>
using namespace std;
FILE *doc;
FILE *docaux;

/*Las gramaticas son modelos utiles en el diseno de software que sirve para procesar datos con una estructura
recursiva.  El  ejemplo  mas  conocido  es  el  de  un  analizador  sintactico ( parser ), el componente de
un  compilador  que  se  ocupa  de  las  funciones anidadas recursivamente de los lenguajes de programacion
tipicos, tales como expresiones aritmeticas, condicionales, etc.*/
void alfabetoTexto (){
//            doc=fopen("ArchivoAuxiliar.txt","a+");
//            ofstream gen("Alfabeto.txt",ios::out);
//            const string informacionAlf="ArchivoAuxiliar.txt";
//            char cadena[1000];
//            ifstream infAlf;
//            infAlf.open(informacionAlf.c_str());
//            if (!infAlf.fail()){
//                           infAlf.getline(cadena,1000,'\n');
//                           while(!infAlf.eof()){
//                                           cout << infAlf.getline(cadena,1000,'\n');
//                                           int cantidad=0;
//                                           char alfabeto[100]={};
//                                           infAlf.getline(cadena,1000,'\n');
//                                           int i=0, j=0;
//                                           while(!strchr(alfabeto,cadena[i])){
//                                                           alfabeto[j++]=cadena[i];
//                                                           i++;
//                                           }
//                                           alfabeto[j]='\0';
//                                           cout << alfabeto;
//                           }
//                           infAlf.close();
//            }
}

int main (int argv, char** argc){
                system("title String");
                system("color F5");
                doc=fopen("Alfabeto.dat","a+");
                fclose(doc);
                system("del Alfabeto.dat");
                doc=fopen("Alfabeto.dat","a+");
                docaux=fopen("ArchivoAuxiliar.txt","a+");
                cout << "Longitud\t   El texto de tu archivo Texto.txt es\n" << endl;
                const string informacion="Texto.txt";
                char cadena[1000];
                ifstream inf;
                inf.open(informacion.c_str());
                if (!inf.fail()){
                               inf.getline(cadena,1000,'\n');
                               while(!inf.eof()){
                                               int cantidad=0;
                                               string c=cadena;
                                               fprintf(docaux,"%s",cadena);
                                               for(int i=0; i<c.length(); i++){
                                                               cantidad ++;
                                               }
                                               cout << cantidad << "\t " << cadena << endl;
                                               inf.getline(cadena,1000,'\n');
                               }
                               inf.close();
                }
                cout << "\nPresiona una tecla para generar alfabeto en un archivo .txt";getch();
                alfabetoTexto();
                fclose(docaux);
                ifstream entrada("ArchivoAuxiliar.txt");
                char linea [1000];
    while(!entrada.eof()){
        entrada.getline(linea,1000);
        string cadena(linea);
        char alfabeto[1000]={}; 
        int i=0,j=0;
        while(cadena[i]){
           if(!strchr(alfabeto,cadena[i]))
               alfabeto[j++]=cadena[i];
               i++;
        }
        alfabeto[j]='\0';
        fprintf(doc,"%s", alfabeto);
    }
    fclose(doc);
    fclose(docaux);
                system("del ArchivoAuxiliar.txt"); 
}
                              
 Pantalla de salida:











                                                                                                                         

No hay comentarios:

Publicar un comentario