Ir para conteúdo
Fórum Script Brasil

andersonwxavier

Membros
  • Total de itens

    4
  • Registro em

  • Última visita

Sobre andersonwxavier

andersonwxavier's Achievements

0

Reputação

  1. alguém? eu entendo teoricamente, porem não consigo implementar em codigo, alguém pode dar uma luz?
  2. Galera, peço para alguém se possivel me explicar de uma maneira clara como faço para fazer esse exercicio abaixo, Estou tendo muita dificuldade com estrutura de dados, eu entendo a parte teorica porem não consigo implementar, espero que alguém possa me ajudar desde já obrigado a todos ! 1. Um programa que usa uma estrutura de lista encadeada tem a seguinte declaração de tipos: typedef struct NOH { int CHAVE; struct NOH *PROX; } NODE typedef NODE *PONTEIRO; As inserções de dados deste programa são realizadas por meio do procedimento abaixo: void insere (PONTEIRO *PRIM; int i) { PONTEIRO ATUAL, SEG, NOVO; NOVO = (NODE*) malloc (sizeof (NODE)); NOVO->CHAVE = i; if (*PRIM == NULL) || (*PRIM->CHAVE > i) { NOVO->PROX = *PRIM; *PRIM = NOVO; } else { ATUAL = *PRIM; SEG = *PRIM->PROX; while (SEG != NULL && SEG->CHAVE > i) do { ATUAL = SEG; SEG = SEG->PROX; } NOVO->PROX = SEG; ATUAL->PROX = NOVO; } } Considere que o PONTEIRO que aponta para o início da lista (INICIO) é iniciado com valor NULL: I N I 1) Represente graficamente o estado da lista após a seguinte sequência de C chamadas (mostre a lista após cada chamada): I O Insere ( &INICIO, 6); Insere ( &INICIO, 3); Insere ( &INICIO, 5); Insere ( &INICIO, 7); 2) Altere o programa para que a lista fique sempre em ordem decrescente de valores
  3. Bom dia, Galera meu primeiro tópico no forum, comecei o curso de CC recentemente. e estou tendo muita dificuldade em uma materia chamada Estrutura de dados, peço a ajuda de vocês, desde já muito obrigado a todos. Eu quero entender o programa abaixo o professor passou esse codigo e quer, que seja criado estruturas que estão faltando no programa, quero que alguém me explique como faço para criar essas estruturas o conteudo que está comentado são as estruturas que precisa ser criadas Obs(quero apenas uma explicação dizendo como fazer) Muito Obrigado a todos!!! Segue programa. #include <iostream> #include <string.h> using namespace std; #define tam_max 10 typedef int LISTA[tam_max]; /*int acessar (LISTA l, int pos, int fim, int &valor); int alterar (LISTA l, int pos, int fim, int nvalor);*/ int inserir_antes (LISTA l, int tam, int pos, int &fim, int valor); //int remover (LISTA l, int pos, int &fim, int &valor); void mostrar_lista (LISTA l, int fim); int main() { LISTA minhalista; int valor, final = 0, posicao,r; char op; do { mostrar_lista (minhalista, final); puts ("\n\nMenu principal"); puts ("\n\nEscolha a operacao que deseja realizar:"); puts ("\n\n1- Inserir valor\n\n2- Acessar valor de uma posicao\n\n3- Alterar valor de uma posicao"); puts ("\n4- Remover posicao\n\n5- Sair\n\nDigite a opcao:"); op = getchar(); switch (op) { case '1': puts ("\n\nDigite o valor (inteiro) a inserir: "); scanf ("%d",&valor); fflush(stdin); puts ("\n\nDigite a posicao em que deseja inserir: "); scanf ("%d",&posicao); fflush(stdin); r=inserir_antes(minhalista, tam_max, posicao-1, final, valor); if (r==1) puts ("\n\nValor inserido com sucesso!"); else puts ("\n\nERRO NA INSERCAO!"); getchar(); break; } } while (op!='5'); } void mostrar_lista (LISTA l, int fim) { puts ("\n\nSITUACAO DA LISTA\n\n"); for (int i = 0; i < fim; i++) printf ("%d ", l); if (fim == 0) puts ("Lista Vazia"); puts ("\n\n"); } int inserir_antes (LISTA l, int tam, int pos, int &fim, int valor) { int ret, i; if (fim < tam){ if (pos < 0 || pos > fim) { puts ("\n\nPosicao Invalida para a insercao\n\n"); ret=0; } else { for (i=fim; i<pos; i--) l=l[i-1]; l[pos]=valor; fim++; ret =1; } } else { puts ("\n\nLista Cheia\n\n"); ret = 0; }; return (ret); }
×
×
  • Criar Novo...