Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- typedef struct{
- lnodo *head;
- lnodo *curr;
- lnodo *tail;
- unsigned int listsize;
- unsigned int currpos;
- }tlist;
- typedef struct{
- cnodo *head;
- cnodo *tail;
- unsigned int listsize;
- }tcola;
- typedef struct{
- tcola *ids;
- lnodo *next;
- lnodo *prev;
- int stock;
- int precio;
- char* prod = (char*)malloc(20 * sizeof(char));
- char* id_p = (char*)malloc(10 * sizeof(char));
- }lnodo;
- typedef struct{
- cnodo *prev;
- cnodo *next;
- char* id_u = (char*)malloc(10 * sizeof(char));
- }cnodo;
- //implementacion de funciones de listas y colas
- int main(){
- tlist *L;
- initlista(L);
- FILE *input;
- input=fopen("input.dat","r");
- char pala[100], opcion, opcion1, pala1[100], nombrep[40], precio[20], idt[20], idu[20];
- int ind=0, ind1=0, dia=0;
- while((opcion=fgetc(input))==1){
- pala[ind]=opcion;
- ind++
- if (opcion=="-"){
- if (pala=="inicio"){
- FILE *inicial;
- inicial=fopen("inicial.dat","r");
- while ((opcion1=fgetc(inicial))==1){
- if (opcion1=='\"'){
- fseek(inicial,-1,SEEK_CUR);
- fscanf(inicial,"%s %s %s %s\n", nombrep, idt, idu, precio);
- /*Creamos un lnodo en la lista, lo llenamos con la informacion, creamos una cola dentro del nodo y llenamos el cnodo con el idu*/
- }
- else if (opcion1=="\n"){
- continue;
- }
- else{
- fseek(inicial,-1,SEEK_CUR);
- fscanf(inicial, "%s %s\n", idt, idu);
- /*buscamos el lnodo que corresponde al idt en la lista y creamos un cnodo en la cola correspondiente*/
- }
- }
- fclose(inicial);
- dia++
- }
- else if (pala=="dia"){
- fscanf(input, "siguiente\n");
- dia++;
- }
- else if (pala=="ingreso "){
- fscanf(input,"nombre %s -idt %s -idu %s -precio %s\n", nombrep, idt, idu, precio);
- /*Creamos un lnodo en la lista, lo llenamos con la informacion, creamos una cola dentro del nodo y llenamos el cnodo con el idu*/
- }
- else if (pala=="egreso "){
- fscanf(input, "idt %s -idu %s\n",idt,idu);
- /*buscamos el lnodo que corresponde al idt en la lista y creamos un cnodo en la cola correspondiente*/
- }
- ind=0;
- //vaciar arreglo
- }
- else if (opcion=="\n"){
- ind=0;
- //vaciar arreglo
- continue;
- }
- if (dia==6){
- FILE *proveedor;
- proveedor=fopen("proveedor.dat","r");
- //agrega items, similar a inicial.dat
- //no entiendo la manera de implementar los * del texto
- fclose(proveedor);}
- if (dia==7){
- FILE *output;
- output=fopen("output.dat","w");
- //esta parte aun no la pienso muy bien xDD
- fclose(output);
- dia=0;}
- }
- fclose(input);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment