int main(){ int num,num2, opcao,mod,div; Lista l,l2,l3; inicLista(&l); inicLista(&l2); inicLista(&l3); printf("Entre com o primeiro numero: "); scanf("%d", &num); while(num > 0) { mod = num % 10000; num = num / 10000; //printf("Num: %d\n",num); insereFim(&l, mod); } ///exibe(&l); printf("\nEntre com o segundo numero: "); scanf("%d", &num2); while(num2 > 0) { mod = num2 % 10000; num2 = num2 / 10000; //printf("Num2: %d\n",num2); insereFim(&l2, mod); } soma(&l,&l2,&l3); //exibe(&l2); printf("\n"); printf("Lista 1: \n"); exibe(&l); printf("\n\n"); printf("Lista 2: \n"); exibe(&l2); printf("\n\n"); printf("Soma das duas Listas: \n"); exibe(&l3); printf("\n\n"); libera(&l); libera(&l2); libera(&l3); return 0; }
int main() { int N; // numero de pessoas na fila Lista l; // lista - usada para a fila dinamica int i; // contador int pessoa; // idade da pessoa que entrou na fila int a; // quantidade de pessoas que foi atendida int tam; // tamanho da fila scanf("%d", &N); while (N > 0) { inicLista(&l); // insere as pessoas na fila for (i = 0; i < N; i++) { scanf("%d", &pessoa); insereLista(&l, pessoa); } // remove da fila as pessoas que ja foram atendidas scanf("%d", &a); for (i = 0; i < a; i++) { int e; removeInicio(&l, &e); printf("%d ", e); } printf("\n"); scanf("%d", &N); libera(&l); } return 0; }
int main() { FILE *f; Dados l; char nome[30]; char rua[40]; int numero; float telefone; char cidade[20]; char estado[10]; inicLista(&l); f = fopen("arq.in", "r"); if (f == NULL) { perror("Erro ao abrir o arquivo"); return 1; } while(fscanf(f, "%[^\n]\n%[^\n]\n%d\n%f\n%[^\n]\n%[^\n]\n",nome,rua, &numero, &telefone,cidade, estado) != EOF) { insereInicio(&l,nome,rua, numero, telefone,cidade, estado); } exibe(&l); fclose(f); return 0; }
int main(){ int num, opcao; Lista l; inicLista(&l); opcao = 1; while(opcao <= 10 && opcao > 0){ printf("\n 1 - insere um numero no inicio da lista"); printf("\n 2 - insere um numero no fim da lista"); printf("\n 3 - insere um numero de maneira ordenada"); printf("\n 4 - verifica se a lista esta ordenada"); printf("\n 5 - ordena a lista"); printf("\n 6 - remove o elemento que esta no inicio da lista"); printf("\n 7 - remove o elemento que esta no fim da lista"); printf("\n 8 - remove um valor determinado"); printf("\n 9 - inverte"); printf("\n 10 - exibe a lista"); printf("\n qualquer outro numero para sair"); printf("\n\nEntre com uma das opcoes acima: "); scanf("%d", &opcao); switch (opcao){ case 1: printf("\n\nEntre com o numero a ser inserido: "); scanf("%d", &num); insereInicio(&l, num); break; case 2: printf("\n\nEntre com o numero a ser inserido: "); scanf("%d", &num); insereFim(&l, num); break; case 3: printf("\n\nEntre com o numero a ser inserido: "); scanf("%d", &num); insereOrdenado(&l, num); break; case 4: if (ordenada(&l)) printf("\nLista ordenada\n"); else printf("\nLista desordenada\n"); break; case 5: ordena(&l); break; case 6: if (removeInicio(&l, &num)) printf("\nNumero removido: %d\n", num); else printf("\nLista vazia"); break; case 7: if (removeFim(&l, &num)) printf("\nNumero removido: %d\n", num); else printf("\nLista vazia"); break; case 8: printf("\n\nEntre com o numero a ser removido: "); scanf("%d", &num); if (!removeValor(&l, num)) printf("Numero nao encontrado"); break; case 9: inverte(&l); break; case 10: exibe(&l); break; } exibe(&l); printf("\n\n"); } // libera(&l); return 0; }
Lista suspended(Store store, int id) /*--------------------------------------------------------------- DESCRIPCION: Implementacion de la funcion suspended, la cual retorna una lista de las posiciones dentro de la variable global indexicals de los indexical's que dependen de la variable representada por id. PARAMETROS: id es el identificador de la variable. store : Es el store del Sistema de Restricciones. USA: RETORNA: Lista con las posiciones de los indexical's que dependen de la varible identificada por id. PRE: POS: List = < PosIndx1/id, PosIndx2/id, ...> || List = NULL NOTAS: ---------------------------------------------------------------*/ { int v_prune_type; Lista res; Lista tempunion1, tempunion2, tempunion3; FDVariable variable; variable=getVariableStore(store, id); v_prune_type=getPruneTypeFDVariable(variable); switch(v_prune_type){ case PMIN: tempunion1 = unionLista(getChainMinFDVariable(variable), getChainMinMaxFDVariable(variable)); tempunion2 = unionLista(tempunion1, getChainDomFDVariable(variable)); res=unionLista(tempunion2,getChainValFDVariable(variable)); destruirLista(tempunion1); destruirLista(tempunion2); break; case PMAX: tempunion1 = unionLista(getChainMaxFDVariable(variable), getChainMinMaxFDVariable(variable)); tempunion2 = unionLista(tempunion1,getChainDomFDVariable(variable)); res=unionLista(tempunion2,getChainValFDVariable(variable)); destruirLista(tempunion1); destruirLista(tempunion2); break; case PDOM: res=unionLista(getChainDomFDVariable(variable),getChainValFDVariable(variable)); break; case PMINMAX: tempunion1 = unionLista( getChainMaxFDVariable(variable), getChainMinMaxFDVariable(variable)); tempunion2 = unionLista(tempunion1,getChainDomFDVariable(variable)); tempunion3 = unionLista(tempunion2,getChainValFDVariable(variable)); res=unionLista(tempunion3,getChainMinFDVariable(variable)); destruirLista(tempunion1); destruirLista(tempunion2); destruirLista(tempunion3); break; default: res=inicLista(); break; } return res; }
int main(){ No_Lista ls; No_Lista *ld; int i; inicLista(&ls); inicListaD(&ld); insereInicio(&ls, 7); insereInicio(&ls, 4); insereInicio(&ls, 5); insereInicio(&ls, 3); insereInicio(&ls, 6); exibe(&ls); printf("\n"); removeMaior1(&ls, &i); printf("\n%d\n", i); exibe(&ls); removeMaior1(&ls, &i); printf("\n%d\n", i); exibe(&ls); removeMaior1(&ls, &i); printf("\n%d\n", i); exibe(&ls); removeMaior1(&ls, &i); printf("\n%d\n", i); exibe(&ls); removeMaior1(&ls, &i); printf("\n%d\n", i); exibe(&ls); removeMaior1(&ls, &i); printf("\n%d\n", i); printf("\n\n"); insereInicioD(&ld, 7); insereInicioD(&ld, 4); insereInicioD(&ld, 5); insereInicioD(&ld, 3); insereInicioD(&ld, 6); exibe(ld); printf("\n"); imprimeRec(ld); printf("\n"); imprimeIt(ld); printf("\n"); removeMaior3(&ld, &i); printf("\n%d\n", i); exibe(ld); removeMaior3(&ld, &i); printf("\n%d\n", i); exibe(ld); removeMaior3(&ld, &i); printf("\n%d\n", i); exibe(ld); removeMaior3(&ld, &i); printf("\n%d\n", i); exibe(ld); removeMaior3(&ld, &i); printf("\n%d\n", i); exibe(ld); removeMaior3(&ld, &i); printf("\n%d\n", i); //exibe(ld); printf("\n\n"); return 0; }