Ir para conteúdo
Fórum Script Brasil

nara

Membros
  • Total de itens

    4
  • Registro em

  • Última visita

Sobre nara

  • Data de Nascimento 31/08/1985

Contatos

  • MSN
    hedica@msn.com
  • Website URL
    http://
  • ICQ
    0

Perfil

  • Location
    campinas

nara's Achievements

0

Reputação

  1. nara

    Me Ajudem!

    realmente e esse o erro q o compilador aponta ,pra eu consiguir deletar ter q ser ponteiro.criei uma vareavel aux do tipo ponteriro para quardar o alemento da list a e deletar mas ainda não deu certo!!! #include <iostream.h> typedef int elemento_lista; struct no { elemento_lista info; int link; }; const MAXLISTA =6; no local[MAXLISTA]; int pri,disp; void criar_vazia (no local [], int & pri, int & disp, int maxlista) { int i =0; for (i = 0; i < maxlista - 1; i ++) { local.link = i+1; } local [maxlista-1].link = -1; pri = -1; disp=0; } int novo_no (no local[], int& disp) { int n; if (disp == -1) { return -1; } n = disp; disp=local[n].link; return n; } int inserir_inicio_lista (no local [], int & pri, int &disp, elemento_lista v) { int aux; aux = novo_no(local, disp); if (aux ==-1) return -1; local[aux].info = v; local[aux].link = pri; pri = aux; return 1; } void retira(no local[],int * aux,int pri,elemento_lista v) { for(*aux=pri;*aux!= -1;*aux ++) { if(local*[aux].info==v) delete local[*aux].info; } } void imprimir_lista (no local [], int & pri) { int aux; aux = pri; if (aux == -1) cout<<"Lista Vazia!"<<endl; cout << "Lista: "; while (aux !=-1) { cout << local[aux].info<< " "<<endl; cout<< local[aux].link<<" "<<endl; aux = local[aux].link; } cout << endl; } void main () { int pri, disp,opcao,aux; elemento_lista v; no local[MAXLISTA]; criar_vazia(local,pri,disp,MAXLISTA); do { cout<<" MENU!!"<<endl<<endl<<endl; cout<<"<1> INSERIR NO INICIO DA LISTA"<<endl <<"<2> MOSTRAR ELEMENTOS DA LISTA"<<endl <<"<3> Retirar"<<endl <<"<0> SAIR"<<endl; cin>>opcao; switch(opcao) { case 1: cout<<"Digite um valor a ser inserido: "<<flush; cin>>v; if(inserir_inicio_lista (local , pri, disp, v)== -1) { cout<<"lista cheia"; } break; case 2: imprimir_lista (local, pri); break; case 3:cout<<"digite um numero para ser retirado da lista"<<endl; cin>>aux; retira(local,&aux,pri,v); break; case 0: break; default: cout<<"valor invalido "<<endl; } } while (opcao !=0); }
  2. nara

    Me Ajudem!

    essa função que deve encontrar e deletetar o elemento_lista v ,mas o compilalor aponta erro na hora de deletar o que esta errado? void retira(no local[],int pri,elemento_lista v) { int aux; for(aux=pri;aux!= -1;aux ++) { if(local[aux].info==v) delete local[aux].info; } }
  3. não sei onde esta o erro mas na hora de imprimir entra em looping e só imprime o ultimo elemento , #include <iostream.h> typedef int elemento_lista; struct no { elemento_lista info; int link; }; const MAXILISTA =3; void criar_vazia (no local [], int & pri, int & disp, int MAXILISTA) { int i =0; for (i = 0; i < MAXILISTA - 1; i ++) { local.link = i+1; } local [MAXILISTA].link = -1; disp = 0; pri = 1; } int novo_no (no local[], int& disp) { int n; if (disp == -1) return -1; n = disp; return n; } int inserir_inicio_lista (no local [], int & pri, int &disp, elemento_lista v) { int aux; aux = novo_no(local, disp); if (aux ==-1) return -1; local[aux].info = v; local[aux].link = pri; pri = aux; return 1; } void imprimir_lista (no local [], int & pri) { int aux; aux = pri; if (aux == -1)// essa não e a condição de parada? cout<<"Lista Vazia!"; while (aux !=-1 ) { cout << local[aux].info; aux = local[aux].link; } } void main () { int pri =0, disp,v, opcao, variavel; no local[MAXILISTA]; criar_vazia(local,pri, disp, MAXILISTA); do { cout<<" MENU!!"<<endl<<endl<<endl; cout<<"<1> INSERIR NO INICIO DA LISTA"<<endl <<"<2> MOSTRAR ELEMENTOS DA LISTA"<<endl <<"<3> SAIR"<<endl; cin>>opcao; switch(opcao) { case 1: novo_no (local, disp); cout<<"Digite um valor a ser inserido: "<<flush; cin>>v; variavel = inserir_inicio_lista (local , pri, disp, v); break; case 2: imprimir_lista (local, pri); break; case 3: break; default: cout<<"valor invalido "<<endl; } } while (opcao !=3); }
  4. nara

    Me Ajudem!

    estou com problemas nesse programa na função eliminar que deve procurar um determinado no na lista,estou tentando fazer a procura por comparar a informação do determinado no com o restante da lista mas não ta muito certo o q eu fiz !!! me ajudem!!! #include <iostream.h> struct lat_long{ float lat; float lon; }; typedef lat_long elemento_lista; struct no{ lat_long info; no *link; }; no* criarotavazia() { return NULL; } void ler(elemento_lista *v) { cout<<"lat?";cin>>v->lat; cout<<"lon?";cin>>v->lon; } void inserir_inicio_lista (no ** p, elemento_lista v ) { no * novo; novo = new no; novo->info = v; novo->link = *p; *p = novo; } void eliminar(no ** pri, elemento_lista * v) { no * s, *ant; s = *pri; while( s->link!=NULL && s->info !=*v) { ant = s; s = s->link; } if(s == *pri) *pri = s->link; else ant->link = s->link; delete s; } void imprimir_lista(no* pri) { no*p; p=pri; while(p!= NULL) { cout<<p->info.lat; cout<<p->info.lon; p=p->link; } } void main() { no*pri,p; pri=criarotavazia(); elemento_lista v; int pos; int opc; do{ cout<<"\n MENU\n"; cout<<"\n1- Inserir no inicio \n"; cout<<"\n2 - Listar \n"; cout<<"\n3- eliminar \n"; cout<<"\n0 - Sair \n"; cin>>opc; switch(opc) { case 1:ler(&v); inserir_inicio_lista(&pri,v); break; case 2:imprimir_lista(pri); break; case 3:ler(&v); eliminar(&pri,&v); break; case 0:break; default:cout<<" Numero invalido"; } }while(opc!=0); }
×
×
  • Criar Novo...