int main() { LISTA lisA, lisB; int nEA, nEB, igualdad; nEA = nEB = 0; inicializaLista( &lisA ); inicializaLista( &lisB ); igualdad = capturaLista( &lisA, &lisB, &nEA, &nEB ); escribeResultado( igualdad ); system( "pause" ); }
int main() { int opcao; exibeIntroducao(); inicializaLista(); while (1) { exibeMenuPrincipal(); scanf("%d", &opcao); switch (opcao) { case 0: return EXIT_SUCCESS; break; case 1: adicionarContato(); break; case 2: retirarContato(); break; case 3: obterContato(); break; case 4: exibirContatosEmOrdem(); break; case 5: printf("Contatos armazenados: %d", aLista.ultimo + 1); break; case 6: destroiLista(); puts("Lista limpa."); break; default: puts("Opção inválida"); break; } } }
///Função Principal int main() { //declaração e inicialização de variaveis int nCursos; //quantidade de cursos int nCandidatos; //quantidade de candidatos int nMatch; //quantidade de escolhas no vetor match int nSelecionados[MAX_CURSOS][5]={0}; //quantidade de candidatos ja elecionados pra cada curso e grupo //vetores tCurso curso[MAX_CURSOS]; //vetor de cursos tCandidato candidato[MAX_CANDIDATOS]; //vetor de candidatos tMatch match[MAX_MATCH]; //vetor de classificação dos candidatos - GERAL //cor system("color 2F"); /**INFORMACOES**/ printf("PROJETO SISU\n\nInicializacao:\n\n"); /**PROCESSO DE LEITURA DE DADOS DO ARQUIVO**/ nCursos=lerCursos(curso); nCandidatos=lerCandidatos(candidato,curso); /**ORGANIZAÇÂO DE DADOS**/ nMatch = inicializaLista(match,nSelecionados,candidato,nCandidatos,nCursos); ordenaLista(match,nMatch); /**MATCH**/ fazMatch(match,nSelecionados,candidato,curso,nMatch); /**PAUSE E LIMPEZA DA TELA**/ printf("\n\n"); system("pause"); system("cls"); /**OUTPUT DOS RESULTADOS**/ menuResultados(match, nMatch, candidato, nCandidatos, curso,nCursos); //encerra o programa return 0; }
template<typename T> Lista<T>::Lista() { inicializaLista(); };
void carregarAutomatosJFLAP(ListaAutomatos **listaAutomatos) { ListaAutomatos *lAux; lAux = *listaAutomatos; while(lAux!=NULL) { printf("\n\n Arquivo do automato : %s ",lAux->automato->XML_File_Name); int lendoEstados = 0; int estadoNum = 0; int estadoInicial= 0; int estadoFinal= 0; int lendoTransicoes = 0; int from = 0; int fromNum = 0; int to = 0; int toNum = 0; int read = 0; char readTerminal[40] = "\0"; ListaEstados *listaEstados; inicializaLista(&listaEstados); char *fname = lAux->automato->XML_File_Name; //strcpy(fname,); char tag[MaxStr], contents[MaxStr], tagname[MaxStr], attrname[MaxStr], value[MaxStr]; float x1, y1, z1, x2, y2, z2, t0, t1; int linum=0; FILE *infile=0, *outfile=0; infile = fopen(fname,"r"); if (infile==0) {printf("Error: Cannot open input file '%s'.\n",fname); exit(1);} xml_parse( infile, tag, contents, MaxStr, &linum ); while (tag[0]!='\0') { xml_grab_tag_name( tag, tagname, MaxStr ); /* Get tag name. */ /* Add your application code here to accept tag-name, such as: */ //printf("Tag name = '%s'\n", tagname ); if(strcmp(tagname,"state")==0) { lendoEstados = 1; //printf("Tag name comparaao = '%s'\n", tagname ); } if((lendoEstados==1)&&(strcmp(tagname,"initial")==0)) { estadoInicial = 1; //printf("Tag name comparaao = '%s'\n", tagname ); } if((lendoEstados==1)&&(strcmp(tagname,"final")==0)) { estadoFinal = 1; //printf("Tag name comparaao = '%s'\n", tagname ); } if((lendoEstados==1)&&(strcmp(tagname,"/state")==0)) { Estado *novoEstado; inicializarEstado(&novoEstado,estadoNum,estadoFinal,estadoInicial); adicionarListaEstados(novoEstado,&listaEstados); //printf("\n Criou estado %d, estado inicial %d, estado final %d",novoEstado->estado,novoEstado->estadoInicial,novoEstado->estadoFinal); lendoEstados = 0; estadoNum = 0; estadoInicial = 0; estadoFinal = 0; //printf("Tag name comparaao = '%s'\n", tagname ); } if(strcmp(tagname,"transition")==0) { lendoTransicoes = 1; //printf("Tag name comparaao = '%s'\n", tagname ); } if((lendoTransicoes==1)&&(strcmp(tagname,"from")==0)) { from = 1; } if((lendoTransicoes==1)&&(strcmp(tagname,"/from")==0)) { from = 0; } if((lendoTransicoes==1)&&(strcmp(tagname,"to")==0)) { to = 1; } if((lendoTransicoes==1)&&(strcmp(tagname,"/to")==0)) { to = 0; } if((lendoTransicoes==1)&&(strcmp(tagname,"read")==0)) { read = 1; } if((lendoTransicoes==1)&&(strcmp(tagname,"/read")==0)) { read = 0; } if((lendoTransicoes==1)&&(strcmp(tagname,"/transition")==0)) { lendoTransicoes = 0; Estado *estadoFrom = buscarEstadoPorNumero(listaEstados,fromNum); Estado *estadoTo = buscarEstadoPorNumero(listaEstados,toNum); if(readTerminal[0]=='"') { //Cria uma transicao Transicao* transicao = (Transicao *) malloc (sizeof(Transicao)); transicao->proximoEstado = estadoTo; int i = 0; char terminalSemAspas[40] = "\0"; for(i= 1;i<strlen(readTerminal)-1;i++) { terminalSemAspas[i-1] = readTerminal[i]; } strcpy(transicao->terminal,terminalSemAspas); ListaTransicao *listaTransicao = estadoFrom->listaTransicao; adicionarListaTransicao(transicao,&listaTransicao); estadoFrom->listaTransicao = listaTransicao; //printf("\n Criou transicao from %d to %d com o terminal %s ",estadoFrom->estado,estadoTo->estado,transicao->terminal); } else { ChamadaSubMaquina* chamadaSubMaquina = (ChamadaSubMaquina *) malloc (sizeof(ChamadaSubMaquina)); Automato *automatoAux = buscarAutomatoPorID(*listaAutomatos,readTerminal); if(automatoAux!=NULL) { chamadaSubMaquina->proxAutomato = automatoAux; } chamadaSubMaquina ->estadoRetorno = estadoTo; estadoFrom->chamadaSubMaquina = chamadaSubMaquina; //printf("\n Criou chamada submaquina from %d para o automato %s com retorno em %d",estadoFrom->estado,automatoAux->ID,estadoTo->estado); //Cria uma chamada de submaquina } char readTerminal[40] = "\0"; //printf("Tag name comparaao = '%s'\n", tagname ); } xml_grab_attrib( tag, attrname, value, MaxStr ); /* Get any attributes within tag. */ while (value[0] != '\0') { /* Add application code here to accept attribute attrname and value, such as: */ //printf(" Attribute: %s = '%s'\n", attrname, value ); if((lendoEstados==1) && (strcmp(attrname,"id")==0)) { estadoNum = atoi(value); } xml_grab_attrib( tag, attrname, value, MaxStr ); /* Get next attribute, if any. */ } /* Add application code here to accept contents between tags, such as: */ //printf("\n Contents = '%s'\n", contents ); if(from == 1) { fromNum = atoi(contents); } if(to == 1) { toNum = atoi(contents); } if(read==1) { strcpy(readTerminal,contents); } xml_parse( infile, tag, contents, MaxStr, &linum ); } fclose(infile); Automato *automatoAux = buscarAutomatoPorID(*listaAutomatos,lAux->automato->ID); automatoAux->listaEstados = listaEstados; lAux = lAux->prox; } }
void criaTabelaPalavrasReservadas(noLista *palavraReservada) { inicializaLista(palavraReservada); }
void inicializa_gerencia(void) { inicioBlocos = inicializaLista(MAX_MEM); inicioBlocos->endereco = MEM; }
int main(int argc, char *argv[]){ FILE *arquivo1, *arquivo2; Parvore arvore; PLista lista, lista2, lista3, p, z, y; char carac_text, carac_dicio; char word[2000000]; char word_text[2000000]; char other_word[2000000]; int i = 0, tam = 0, j = 0, lines = 1, k; inicializaArvore(&arvore); inicializaLista(&lista); inicializaLista(&lista2); inicializaLista(&lista3); arquivo1 = fopen(argv[1], "r"); arquivo2 = fopen(argv[2], "r"); //PEGANDO TODAS AS PALAVRAS DO DICIONARIO E INSERINDO NA ARVORE TRIE while((carac_dicio = fgetc(arquivo1)) != EOF){ if(carac_dicio != '\n'){ word[i] = carac_dicio; i++; } else{ word[i] = '\0'; i = 0; inserir_palavra(&arvore, strlen(word), word); } } //LENDO E TRATANDO TODOS OS CARACTERES DO ARQUIVO2 while((carac_text = fgetc(arquivo2)) != EOF) tam++; //criando string com todo o conteudo do texto char string[tam]; rewind(arquivo2); i = 0; while((carac_text = fgetc(arquivo2)) != EOF){ string[i] = carac_text; i++; } string[i] = '\0'; //o texto todo esta nessa string i = 0; for(j = 0; j < tam; j++){ if((seekChar(separadores,string[j])) && (i == 0)){ //j++; continue; } if(seekChar(separadores, string[j])){ word_text[i] = '\0'; strcpy(other_word,word_text); i = 0; for(k = 0; k < strlen(word_text); k++) word_text[k] = tolower(word_text[k]); if(buscar_palavra(arvore, word_text) == 1){ inserir_crescente(&lista, word_text); } else{ inserir_final(&lista2, other_word); } } else{ word_text[i] = string[j]; i++; } } i = 0; for(p = lista; (p != NULL); p = p->prox){ int aux = 1; int number; printf("%s", p->palavra); for(j = 0; j < tam; j++){ if(seekChar(separadores, string[j])){ word_text[i] = '\0'; i = 0; for(k = 0; k < strlen(word_text); k++) word_text[k] = tolower(word_text[k]); if((strcmp(word_text,p->palavra)) == 0){ if (lines != number){ if(aux == 1){ printf(" %d", lines); number = lines; } else{ printf(", %d", lines); number = lines; } aux = 0; } } if(string[j] == '\n'){ lines++; number = lines-1; } } else{ word_text[i] = string[j]; i++; } } printf("\n"); lines = 1; } //imprimir(lista2); for(z = lista2; (z != NULL); z = z->prox){ printf("%s ", z->palavra); //for(y = lista3; (y != NULL); y = y->prox){ buscarMenor(arvore, z->palavra); printf("%s\n", menorpalavra); menorpalavra[0] = '\0'; menor = 100; } }