domingo, 24 de mayo de 2015

 Este programa hace que solo seleccione la parte izquierda de una regla de producción utilizado archivos de texto.


Código implementado en c++

#include <iostream>
#include <string>
#include <stdlib.h>
#include <iomanip>
#include <fstream>
FILE *doc;
using namespace std;

void recuperarDeArchivo();
void insertar(char *,char *,char *,int pos);
void mosDatos();
const int num=1000;

struct pj{
          char no[100];
            char ori[100];
            char de[100];
};
pj pas[num];


int main(int argc, char** argv) {
      string nox[100];
      recuperarDeArchivo();
      mosDatos ();
}
     
void recuperarDeArchivo(){
            ifstream lecturaArchivo("producciones.txt", ios::in);// aqui es donde estan almacenadas las producciones.
            if(!lecturaArchivo){
                  cerr<<"No se pudo abrir el archivo"<<endl;
                  exit(1);
            }
            char nox[100];
            char orix[100];
            char dex[100];
            int i=0;
            while(lecturaArchivo>>nox>>orix>>dex){
                        insertar(nox,orix,dex,i);
                        i++;
            }
}

void insertar(char *nx,char *ox,char *dx, int pos){
      if(pos==-1){
            cout<<"Ya no hay lugar"<<endl;
            return;
      }
      strcpy (pas[pos].no,  nx);  
}

void mosDatos(){
      ofstream salidaArchivo("salidaa.txt", ios::out);// aqui se guarda la parte izquierda de la regla
      if(!salidaArchivo){
            cerr<<"No se pudo abrir el archivo"<<endl;
            exit(1);
      }
     
      cout<<endl;
      cout<<"\t\t\t\tREALIZADO POR:"<<endl;
      cout<<"\t\t\tALBERTO ALEXIS ALVA MARTINEZ"<<endl;
      cout<<"\t\t\tCARLOS LOPEZ IBARRA\n"<<endl;
      cout<<setw(1)<<"REGLAS DE PRODUCCION: "<<endl;
     
      for(int i=0; i<num;i++){
            if(strcmp(pas[i].no,"")!=0){
                  cout<<"\n"<<setw(1)<<pas[i].no<<endl;
                  salidaArchivo<<"\n"<<pas[i].no<<endl;         
            }
      }
     

}

PANTALLA DE SALIDA


0 comentarios :

Publicar un comentario