<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Matheus Bratfisch &#187; Ponteiro</title>
	<atom:link href="http://www.matbra.com/tag/ponteiro/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.matbra.com</link>
	<description>&#34;Cogito ergo sum&#34;</description>
	<lastBuildDate>Fri, 03 Sep 2010 14:17:12 +0000</lastBuildDate>
	<language>pt</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Lista encadeada, Estrutura de dados.</title>
		<link>http://www.matbra.com/2009/05/06/lista-encadeada-estrutura-de-dados/</link>
		<comments>http://www.matbra.com/2009/05/06/lista-encadeada-estrutura-de-dados/#comments</comments>
		<pubDate>Wed, 06 May 2009 04:15:20 +0000</pubDate>
		<dc:creator>Matheus (X-warrior) Bratfisch</dc:creator>
				<category><![CDATA[Aprendendo]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[Estrutura de Dados]]></category>
		<category><![CDATA[encadeada]]></category>
		<category><![CDATA[exercicios]]></category>
		<category><![CDATA[lista]]></category>
		<category><![CDATA[Ponteiro]]></category>
		<category><![CDATA[ponteiros]]></category>
		<category><![CDATA[programação]]></category>

		<guid isPermaLink="false">http://www.matbra.com/?p=152</guid>
		<description><![CDATA[Saudações, Para não perder o costume, irei postar outro exercicio resolvido em uma aula. Dessa vez o exercicio é o seguinte: - Implemenetar o sistema de contabilidade de um mafioso. (outros detalhes continue lendo o post) O enunciado do mesmo se encontra no &#8220;read the rest of this entry&#8221; para não deixar o post muito [...]]]></description>
			<content:encoded><![CDATA[<p>Saudações, </p>
<p>Para não perder o costume, irei postar outro exercicio resolvido em uma aula. Dessa vez o exercicio é o seguinte:<br />
- Implemenetar o sistema de contabilidade de um mafioso. (outros detalhes continue lendo o post)</p>
<p>O enunciado do mesmo se encontra no &#8220;read the rest of this entry&#8221; para não deixar o post muito extenso devido ao longo enunciado. </p>
<p>A resolução do mesmo você pode baixar <a href="http://www.matbra.com/?attachment_id=155" target="_blank">aqui</a>.</p>
<p><span id="more-152"></span></p>
<blockquote><p>Você é um Mafioso informatizado.<br />
Você vai criar um sistema para gerenciar os seus débitos e também as pessoas que devem a você.<br />
Este sistema será baseado em duas listas encadeadas:</p>
<p><a href="http://www.matbra.com/wp-content/uploads/mafia.jpg" target="_blank">(Imagem de exemplo)</a></p>
<p>    * Para isso você vai fazer um programa que manipula mais de uma lista;</p>
<p>    * o programa fará isto com um único conjunto de funções e passagem das diversas listas como parâmetros;<br />
    * como aplicação imaginemos um sistema de contabilidade simples;<br />
    * você vai ter um Plano de Contas constituído por duas listas: débitos e créditos;<br />
    * o mesmo conjunto de funções (que você já implementou) vai poder ser utilizado para isso: você somente precisa ampliar o conjunto de parâmetros da função para passar por referência também a lista que você quer alterar.</p>
<p>A passagem de parâmetro da lista deve ser por referência porque você deseja que as alterações sejam persistentes.</p>
<p>Cada lista de débitos ou créditos é constituída por lançamentos. Cada lançamento possui:</p>
<p>    * um valor real (positivo);<br />
    * um nome. Por exemplo, “Pagar proteção à Mafia”</p>
<p>Estrutura:<br />
tipo tLançamento {<br />
caracter *nome;<br />
real valor;<br />
};</p>
<p>A lista encadeada que conterá os lançamentos terá um elemento de lista definido da seguinte forma:<br />
Estrutura:<br />
tipo tLista {<br />
tLancamento* info;<br />
tLista* proximo;<br />
};<br />
A cabeça de lista de cada lista será uma variável global contendo uma estrutura como abaixo:<br />
tipo cLista {<br />
tLista* lista;<br />
inteiro ultimo;<br />
};</p>
<p>No programa principal você vai definir se vai realizar uma operação de débito ou de crédito e vai chamar as operações sobre listas necessárias, passando a lista correta como parâmetro (por referência) para a função que realiza a operação.</p>
<p>Além das operações básicas que a lIsta vai oferecer, você deve implementar uma operação adicional: totalização. Essa operação funciona assim:</p>
<p>    * percorre a lista, escrevendo o nome e o valor correspondente a cada item (débito ou crédito)<br />
    * soma o valor em uma variável auxiliar<br />
    * escreve ao final o total de débitos ou de créditos, dependendo de qual lista você mandou totalizar.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.matbra.com/2009/05/06/lista-encadeada-estrutura-de-dados/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pilha, com ponteiros, Estrutura de Dados.</title>
		<link>http://www.matbra.com/2009/04/28/pilha-com-ponteiros-estrutura-de-dados/</link>
		<comments>http://www.matbra.com/2009/04/28/pilha-com-ponteiros-estrutura-de-dados/#comments</comments>
		<pubDate>Wed, 29 Apr 2009 02:49:40 +0000</pubDate>
		<dc:creator>Matheus (X-warrior) Bratfisch</dc:creator>
				<category><![CDATA[Aprendendo]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[Estrutura de Dados]]></category>
		<category><![CDATA[exercicios]]></category>
		<category><![CDATA[pilha]]></category>
		<category><![CDATA[Ponteiro]]></category>
		<category><![CDATA[resolvidos]]></category>
		<category><![CDATA[Vetor]]></category>

		<guid isPermaLink="false">http://www.matbra.com/?p=128</guid>
		<description><![CDATA[Então, hoje vou demonstrar um dos outros exercicios que fizemos na aula de estrutura de dados, lembrando mais uma vez que estes são exercicios que eu faço rapidamente e não me importo muito com várias coisas pela falta de tempo. O que irei mostrar hoje é uma Pilha com vetores porém em vez de ele [...]]]></description>
			<content:encoded><![CDATA[<p>Então, hoje vou demonstrar um dos outros exercicios que fizemos na aula de estrutura de dados, lembrando mais uma vez que estes são exercicios que eu faço rapidamente e não me importo muito com várias coisas pela falta de tempo. O que irei mostrar hoje é uma Pilha com vetores porém em vez de ele ter um inteiro indicando o ultimo elemento, o ultimo será um ponteiro para o ultimo elemento da pilha. </p>
<p>Para  ver o enunciado inteiro continue lendo (enunciado grande). </p>
<p>Para baixar o arquivo, <a href="http://www.matbra.com/?attachment_id=130">clique aqui</a>! </p>
<p><span id="more-128"></span></p>
<blockquote><p>Reimplemente o seu programa de pilha com vetor de números inteiros usando como TOPO um ponteiro para inteiro, que você incrementa, decrementa e testa<br />
para saber se a pilha está cheia ou vazia;<br />
• para resolver:<br />
– modifique a estrutura tPilha da seguinte forma:<br />
constantes MAXPILHA = 100;<br />
tipo tPilha {<br />
inteiro dados[MAXPILHA];<br />
inteiro *topo;<br />
};</p>
<p>• Modifique os algoritmos de manipulação da pilha de forma que se utilize ponteiros para inteiro para referenciar os elementos da pilha.<br />
• Exemplo:<br />
Inteiro FUNÇÃO empilha(inteiro dado)<br />
início<br />
SE (pilhaCheia) ENTÃO<br />
RETORNE(ErroPilhaCheia)<br />
SENÃO<br />
// Se houver espaço, incremento o<br />
// ponteiro topo e faço o valor<br />
// apontado por topo receber o novo<br />
// dado.<br />
aPilha.topo <- aPilha.topo + 1;<br />
*(aPilha.topo) <- dado;<br />
RETORNE(aPilha.topo);<br />
FIM SE<br />
fim;</p>
<p>• Lembre-se de adaptar a inicialização da pilha e também os testes de pilha cheia e vazia. Exemplos:</p>
<p>FUNÇÃO inicializaPilha()<br />
início<br />
// Fazemos o topo apontar para um endereço de memória<br />
// anterior ao início do vetor dados para simbolizar<br />
// que a pilha está vazia.<br />
aPilha.topo <- aPilha.dados - 1;<br />
fim;<br />
Booleano FUNÇÃO pilhaVazia()<br />
início<br />
SE (aPilha.topo < aPilha.dados) ENTÃO<br />
// O topo está apontando para um endereço de<br />
// memória anterior ao próprio início da<br />
// pilha. Segundo a nossa definição, isto<br />
// significa que a pilha está vazia.<br />
RETORNE(Verdadeiro)<br />
SENÃO<br />
RETORNE(Falso);<br />
fim;</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.matbra.com/2009/04/28/pilha-com-ponteiros-estrutura-de-dados/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
