Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Êxodo Pereira

linguagem C

Recommended Posts

Foi me passado uma atividade em estruturas de dados no qual não conseguir resolver de forma alguma, por isso vim até aqui!

Crie uma função denominada de esvazie que receba uma pilha dinâmica como parâmetro e descarte todos os elementos. Ou seja, após a chamada da função esvazie se fizermos a chamada da função empty o resultado deverá ser true. A função esvazie não deverá permitir o vazamento de memória.

Grato se alguém puder me ajudar!

Compartilhar este post


Link para o post
Compartilhar em outros sites

O enunciado parece deixar implícito que a implementação deve utilizar objetos de duração "alocada" (allocated), ou o que a maioria dos cursos no Brasil chamam, infelizmente, de "dinâmica".

 

Qual sua dúvida?

Compartilhar este post


Link para o post
Compartilhar em outros sites

"Todas"? Por que saiu da aula sem entender nada? O fórum não serve pra troca de trabalho.

 

Se você não sabe nada da linguagem e nada de estrutura de dados, não vai conseguir fazer o trabalho até quarta. Sugiro que estude bastante pra conseguir passar na matéria sem esses acréscimos de nota.

 

Um conselho: algoritmos e estruturas de dados são muito importantes em cursos como informática, engenharia da computação e ciência da computação. Se você não gosta de estudar isso, reconsidere a escolha do curso. Melhor sair agora enquanto está numa matéria básica.

Compartilhar este post


Link para o post
Compartilhar em outros sites

"Todas"? Por que saiu da aula sem entender nada? O fórum não serve pra troca de trabalho.

 

Se você não sabe nada da linguagem e nada de estrutura de dados, não vai conseguir fazer o trabalho até quarta. Sugiro que estude bastante pra conseguir passar na matéria sem esses acréscimos de nota.

 

Um conselho: algoritmos e estruturas de dados são muito importantes em cursos como informática, engenharia da computação e ciência da computação. Se você não gosta de estudar isso, reconsidere a escolha do curso. Melhor sair agora enquanto está numa matéria básica.

Conseguir criar esse código, é não sei o que tenho que fazer, tem algo que eu possa fazer tbm para deixa-lo menor?!

 

#include <stdio.h>#include <stdlib.h>typedef struct ELEMENTO_PILHA{	int info;	struct ELEMENTO_PILHA *prox;};typedef struct {	ELEMENTO_PILHA *topo;	}PILHA;		void init(PILHA *ps){		ps->topo=NULL;	}		int empty (PILHA *ps){		if(ps->topo==NULL)		return 1; 		else		return 0; 	}		void push(PILHA *ps, int elemento){		ELEMENTO_PILHA *P = (ELEMENTO_PILHA*)		malloc(sizeof(ELEMENTO_PILHA));		P->info=elemento;		P->prox=ps->topo;		ps->topo=P;	}		int pop(PILHA *ps){		int valorTopo;		if(empty(ps)){			printf("%s","\n True - Pilha Vazia! \n");			exit(1);		}else{			valorTopo = ps->topo->info;			ELEMENTO_PILHA *aux=ps->topo;			ps->topo=ps->topo->prox;			free(aux);			return valorTopo;		}	}		int stacktop(PILHA *ps){		if (empty(ps)){			printf("%s", "\n underflow! \n");			exit(1);		}else{			return ps->topo->info;		}	}void showStack(PILHA *ps){int i=0;if (empty (ps)==1){}}int main() {	PILHA pilha;	init(&pilha);	int cont = 0;	int num;			do{		printf("Informe o numero n %d: \n",cont+1);		scanf("%d",&num);		push(&pilha,num);		cont++;	}while(cont < 10);		for(;cont>-1;cont--){		printf("\n esvazie %d",pop(&pilha));			}}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.