<?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; C</title>
	<atom:link href="http://www.matbra.com/tag/c/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>Exercicio em C++</title>
		<link>http://www.matbra.com/2009/09/25/exercicio-em-c/</link>
		<comments>http://www.matbra.com/2009/09/25/exercicio-em-c/#comments</comments>
		<pubDate>Fri, 25 Sep 2009 22:01:31 +0000</pubDate>
		<dc:creator>Matheus (X-warrior) Bratfisch</dc:creator>
				<category><![CDATA[Aprendendo]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[cpp]]></category>
		<category><![CDATA[exercicios]]></category>

		<guid isPermaLink="false">http://www.matbra.com/?p=548</guid>
		<description><![CDATA[Boa noite, Nos últimos dias uma amiga pediu ajuda para resolver dois exercícios em C++ que o professor dela havia passado. O enunciado dos mesmo são: 1. Faça um programa que leia um numero não determinado de valores inteiros e positivos. Para cada valor lido: se o numero for par, verificar quantos divisores possui e [...]]]></description>
			<content:encoded><![CDATA[<p>Boa noite, </p>
<p>Nos últimos dias uma amiga pediu ajuda para resolver dois exercícios em C++ que o professor dela havia passado. O enunciado dos mesmo são: </p>
<blockquote><p>1. Faça um programa que leia um numero não determinado de valores inteiros e positivos. Para cada valor lido: se o numero for par, verificar quantos divisores possui e escrever esta informação. Se for impar e menor que 12, escrever o seu fatorial. Se for impar e maior que 12, escrever a soma dos números de 1 até ele. </p></blockquote>
<p><a href='http://www.matbra.com/2009/09/25/exercicio-em-c/exercicio1/' rel='attachment wp-att-549'>Resolução C++ do exercicio 1. </a></p>
<blockquote><p>2. Escrever um programa que leia valores, um de cada vez, e conta quantos deles estão em cada um dos intervalos: [0,25], [25, 50], [50, 75] e [75,100].</p></blockquote>
<p><a href='http://www.matbra.com/2009/09/25/exercicio-em-c/exercicio2/' rel='attachment wp-att-550'>Resolução C++ do exercicio 2</a></p>
<p>Matheus</p>
<p>PS: Pra mim é C mas como só ajudei ela não entrei no mérito dessa questão.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matbra.com/2009/09/25/exercicio-em-c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Árvore B, Estrutura de Dados.</title>
		<link>http://www.matbra.com/2009/07/01/arvore-b-estrutura-de-dados/</link>
		<comments>http://www.matbra.com/2009/07/01/arvore-b-estrutura-de-dados/#comments</comments>
		<pubDate>Wed, 01 Jul 2009 03:35:58 +0000</pubDate>
		<dc:creator>Matheus (X-warrior) Bratfisch</dc:creator>
				<category><![CDATA[C]]></category>
		<category><![CDATA[Estrutura de Dados]]></category>
		<category><![CDATA[gráfico]]></category>
		<category><![CDATA[tempo]]></category>

		<guid isPermaLink="false">http://www.matbra.com/?p=333</guid>
		<description><![CDATA[Boa noite, Neste post vou publicar uma árvore B em C++ desenvolvida por mim e pelo meu colega Olav, como trabalho da aula de estrutura de dados. A mesma le um arquivo de ceps e insere os mesmos em uma árvore e calcula o tempo de inserção para cada item. Infelizmente, me parece que o [...]]]></description>
			<content:encoded><![CDATA[<p>Boa noite, </p>
<p>Neste post vou publicar uma árvore B em C++ desenvolvida por mim e pelo meu colega Olav, como trabalho da aula de estrutura de dados. A mesma le um arquivo de ceps e insere os mesmos em uma árvore e calcula o tempo de inserção para cada item. Infelizmente, me parece que o medidor de tempo não está correto, porém com a árvore está. </p>
<p>Caso você descubra algo errado por favor, reporte-me</p>
<p><a href="http://www.matbra.com/?attachment_id=334">Árvore B </a></p>
<p>Matheus Bratfisch</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matbra.com/2009/07/01/arvore-b-estrutura-de-dados/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<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>Lista com ponteiros, Estrutura de Dados.</title>
		<link>http://www.matbra.com/2009/04/29/lista-com-ponteiros-estrutura-de-dados/</link>
		<comments>http://www.matbra.com/2009/04/29/lista-com-ponteiros-estrutura-de-dados/#comments</comments>
		<pubDate>Wed, 29 Apr 2009 23:57:12 +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[Sistemas Digitais]]></category>
		<category><![CDATA[exercicios]]></category>
		<category><![CDATA[lista]]></category>
		<category><![CDATA[ponteiros]]></category>
		<category><![CDATA[programação]]></category>

		<guid isPermaLink="false">http://www.matbra.com/?p=136</guid>
		<description><![CDATA[Boa noite a todos, Como ainda não produzi nada muito bom hoje em casa (no lab produzi algo relaciona a xml-rpc que pretendo postar em breve), resolvi postar mais um dos 198578951 exercicios que estou tendo que fazer para estrutura de dados. O Exercicio de hoje é nada mais nada menos que uma implementação de [...]]]></description>
			<content:encoded><![CDATA[<p>Boa noite a todos, </p>
<p>Como ainda não produzi nada muito bom hoje em casa (no lab produzi algo relaciona a xml-rpc que pretendo postar em breve), resolvi postar mais um dos 198578951 exercicios que estou tendo que fazer para estrutura de dados. O Exercicio de hoje é nada mais nada menos que uma implementação de uma Lista com Ponteiros, ou seja, ela não tem limite de elementos (é claro, se a memoria for infinita). </p>
<p>Como no exercicio anterior, o enunciado fica para a pagina inteira pois é muito grande.</p>
<p>O exercicio resolvido você encontra <a href="http://www.matbra.com/?attachment_id=138">aqui.</a></p>
<p><span id="more-136"></span></p>
<blockquote><p>Uma lista ordenada pode conter Strings de qualquer comprimento < 10000;<br />
• esta lista tem um número de elementos máximo fixo (100) e é implementada como um vetor de ponteiros para Strings;<br />
– utilize as rotinas de lista com vetor que você implementou para a agenda.<br />
• Um novo String é lido primeiramente para dentro de uma variável auxiliar qualquer;<br />
– então é alocada memória para exatamente o seu tamanho e ele é copiado para esta área. Para copiar um String utilize strcpy();<br />
– por fim um lugar na lista é encontrado para ele. A posição escolhida do vetor de ponteiros da lista é instanciada através da atualização dos valores do ponteiro da posição do String na lista com o endereço do string.</p>
<p>Pseudo-código:<br />
constantes MAXLISTA = 100;<br />
tipo tLista {<br />
// Vetor de ponteiros para caracter.<br />
caracter *dados[MAXLISTA];<br />
inteiro último;<br />
};</p>
<p>• Importante: observe que criando uma variável do tipo tLista você não vai estar alocando memória para os strings a serem lidos, apenas para os ponteiros para eles.<br />
Para verificar o comprimento de um String:<br />
– utilize a função strlen();<br />
– esta função devolve o comprimento (em caracteres imprimíveis) de um string.<br />
– Protótipo: int strlen(char *p);</p>
<p>#include <stdio.h><br />
#include <stdlib.h><br />
#include <sting.h><br />
char p[90] = &#8220;Carro&#8221;;<br />
main() {<br />
printf(&#8220;%i&#8221;, strlen(p));<br />
}</p>
<p>• Imprime: 5<br />
• Para copiar um String:<br />
– utilize a função strcpy();<br />
– esta função copia o conteúdo de um string (dado por um apontador) para a posição de memória dada por outro apontador.<br />
– Protótipo: char *strcpy(char *destino, char *fonte);</p>
<p>#include <stdio.h><br />
#include <stdlib.h><br />
#include <sting.h><br />
char p[90] = &#8220;Carro&#8221;;<br />
char lata[20];<br />
main() {<br />
strcpy(lata, p));<br />
printf(&#8220;s%&#8221;, lata);<br />
}<br />
• Imprime: Carro</p>
<p>Detalhes:</p>
<p>• Como você não sabe o comprimento do String que o usuário vai digitar, use primeiro uma variável auxiliar grande (10000 posições) para guardar o que foi<br />
digitado;<br />
• todas as funções de lista ordenada implementadas anteriormente devem ser reimplementadas para utilizar estes Strings;<br />
• para a leitura de um String utilize scanf(&#8220;%s&#8221;, entrada).</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.matbra.com/2009/04/29/lista-com-ponteiros-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>
		<item>
		<title>Ubuntu com Netbeans Java e C</title>
		<link>http://www.matbra.com/2009/04/27/ubuntu-com-netbeans-java-e-c/</link>
		<comments>http://www.matbra.com/2009/04/27/ubuntu-com-netbeans-java-e-c/#comments</comments>
		<pubDate>Tue, 28 Apr 2009 00:29:22 +0000</pubDate>
		<dc:creator>Matheus (X-warrior) Bratfisch</dc:creator>
				<category><![CDATA[Aprendendo]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software Livre]]></category>
		<category><![CDATA[9.04]]></category>
		<category><![CDATA[instalação]]></category>
		<category><![CDATA[Netbeans]]></category>
		<category><![CDATA[programação]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.matbra.com/?p=116</guid>
		<description><![CDATA[Boa noite, Hoje pretendia instalar o netbeans 6.5.1 no Ubuntu 64 bits, baixei a versão que eu queria (C/C++) no site do netbeans. Tentava instalar o netbeans com o comando: $ ./netbeans-6.5.1-ml-cpp-linux.sh (PS: Tornei o mesmo executavel antes, com o comando $ chmod +x netbeans-6.5.1-ml-cpp-linux.sh) Recebia a seguinte resposta: x-warrior@x-warrior-desktop:~/Desktop$ ./netbeans-6.5.1-ml-cpp-linux.sh Configuring the installer&#8230; Searching [...]]]></description>
			<content:encoded><![CDATA[<p>Boa noite, </p>
<p>Hoje pretendia instalar o netbeans 6.5.1 no Ubuntu 64 bits, baixei a versão que eu queria (C/C++) no site do <a href="http://www.netbeans.org/index.html" target="_blank">netbeans</a>. Tentava instalar o netbeans com o comando:</p>
<p><em>$ ./netbeans-6.5.1-ml-cpp-linux.sh</em></p>
<p>(PS: Tornei o mesmo executavel antes, com o comando <em>$ chmod +x netbeans-6.5.1-ml-cpp-linux.sh</em>) </p>
<p>Recebia a seguinte resposta: </p>
<blockquote><p>x-warrior@x-warrior-desktop:~/Desktop$ ./netbeans-6.5.1-ml-cpp-linux.sh<br />
Configuring the installer&#8230;<br />
Searching for JVM on the system&#8230;<br />
Extracting installation data&#8230;<br />
Running the installer wizard&#8230;<br />
x-warrior@x-warrior-desktop:~/Desktop$ </p></blockquote>
<p>Porém a parte grafíca não acontecia. Fui olhar o log da seguinte maneira: </p>
<p><em>$ sh netbeans-6.5.1-ml-cpp-linux.sh &#8211;verbose &#8211;output out.txt</em></p>
<p>Analisando o arquivo out.txt pude ver o seguinte erro: </p>
<blockquote><p>[2009-04-27 20:56:18.173]:     	at org.netbeans.installer.Installer.main(Installer.java:78)<br />
[2009-04-27 20:56:18.174]:     &#8230; show message dialog<br />
[2009-04-27 20:56:18.174]:         title: Critical Error<br />
[2009-04-27 20:56:18.174]:         message: An unexpected exception happened in thread main<br />
[2009-04-27 20:56:18.174]:<br />
[2009-04-27 20:56:18.174]:         Exception:<br />
[2009-04-27 20:56:18.174]:           java.lang.NoClassDefFoundError:<br />
[2009-04-27 20:56:18.175]:           Could not initialize class java.awt.Toolkit</p></blockquote>
<p>Infelizmente não sabia como corrigi-lo. Pesquisei um pouco e não achei nada que funcionasse. Então tive a brilhante idéia de instalar pelo synaptic. Instalei o netbeans que estava lá, tudo ocorreu normalmente. Executei o mesmo e fui criar um novo projeto, me deparo que a versão instalada era a para Java. Me decepcionei, afinal precisava mesmo da versão para C/C++. Quando fiz a instalação pelo synaptic percebi que existiam muitas dependencias, tentei instalar novamente a versão para C e vua-la. Consegui instalar a mesma. (Meio na gambiarra eu sei, afinal fiquei com 2 versões de netbeans uma para C e outra para Java, mas sem problemas já que eu utilizo as duas.) </p>
<p>Então caso você queira instalar a versão para C/C++, instale a versão de Java, ou suas dependencias somente e em seguida instale o para C/C++ que tudo vai ocorrer bem. </p>
<p>Ah, para um melhor entendimento editei o menu (Botao direito sobre Applications &#8211; edit menu), ele é muito intuitivo então não vou entrar em mais detalhes. Mas no mesmo editei os Netbeans 6.5 e 6.5.1 para Netbeans 6.5 (Java) e Netbeans 6.5.1 (C/C++). Assim não corro o problema de esquecer e abrir a versão errada perdendo tempo. </p>
<p>Espero que essa <del datetime="2009-04-28T00:18:25+00:00">gambiarra</del> dica ajude vocês. </p>
<p>Abraços,<br />
Matheus</p>
<p>PS: Se alguem tiver a solução decente para conseguir instalar o Netbeans me avise que eu posto aqui. Ou caso eu descubra, postarei também. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.matbra.com/2009/04/27/ubuntu-com-netbeans-java-e-c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lista, Estrutura de dados</title>
		<link>http://www.matbra.com/2009/04/25/lista-estrutura-de-dados/</link>
		<comments>http://www.matbra.com/2009/04/25/lista-estrutura-de-dados/#comments</comments>
		<pubDate>Sat, 25 Apr 2009 22:00:37 +0000</pubDate>
		<dc:creator>Matheus (X-warrior) Bratfisch</dc:creator>
				<category><![CDATA[C]]></category>
		<category><![CDATA[Estrutura de Dados]]></category>
		<category><![CDATA[exercicios]]></category>
		<category><![CDATA[lista]]></category>
		<category><![CDATA[programação]]></category>

		<guid isPermaLink="false">http://www.matbra.com/?p=51</guid>
		<description><![CDATA[Boa tarde, Como estou tendo aula de estrutura de dados estou tentando colocar aqui, alguns dos conceitos que aprendemos em sala, junto ao seu exercicio e uma implementação de um exercicio (desenvolvido rapidamente, muitas vezes). A estrutura apresentada hoje é Lista, uma estrutura de dados linear. Existe também a lista ligada, ou encadeada que também [...]]]></description>
			<content:encoded><![CDATA[<p>Boa tarde,</p>
<p>Como estou tendo aula de estrutura de dados estou tentando colocar aqui, alguns dos conceitos que aprendemos em sala, junto ao seu exercicio e uma implementação de um exercicio (desenvolvido rapidamente, muitas vezes). A estrutura apresentada hoje é Lista, uma estrutura de dados linear. Existe também a lista ligada, ou encadeada que também é conhecida por linear e dinamica (fica pra outro post) e a lista duplamente ligada, ou duplamente encadeada (fica pra outro post também). A pilha e a fila são implementações especiais de listas. A Lista, não possue restrições como suas implementações especiais, e pode receber elementos em qualquer posição, remover de qualquer posição, remover especifico, adicionar em ordem entre outras. </p>
<p>O enunciado do exercicio que foi proposto para lista é o seguinte: </p>
<blockquote><p>  1.   Crie o seu tipo de dados tLista em um headerfile;<br />
   2. esta deverá ser uma lista de elementos do tipo tAgenda;<br />
   3. O tipo tAgenda é um tipo que representa um nome de 30 posições e um número de telefone;<br />
   4. crie uma função maior(a,b) que compare os nomes de duas entradas;<br />
   5. programe todas as funções documentando cada função, inclusive com dicionário de dados;<br />
   6. crie um programa principal que execute todas as funções de lista a partir de um menu. A função procurar específico deverá basear-se no nome em uma Agenda;<br />
   7. além dessas funções, o programa deverá ser capaz de listar a lista em ordem alfabética.
</p></blockquote>
<p>Resolução do mesmo <a href="http://www.matbra.com/?attachment_id=107">aqui</a>. </p>
<p>Até mais,<br />
Matheus</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matbra.com/2009/04/25/lista-estrutura-de-dados/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fila, Estrutura de dados</title>
		<link>http://www.matbra.com/2009/04/15/fila-estrutura-de-dados/</link>
		<comments>http://www.matbra.com/2009/04/15/fila-estrutura-de-dados/#comments</comments>
		<pubDate>Thu, 16 Apr 2009 04:11:41 +0000</pubDate>
		<dc:creator>Matheus (X-warrior) Bratfisch</dc:creator>
				<category><![CDATA[C]]></category>
		<category><![CDATA[Estrutura de Dados]]></category>
		<category><![CDATA[exercicios]]></category>
		<category><![CDATA[fila]]></category>
		<category><![CDATA[programação]]></category>

		<guid isPermaLink="false">http://www.matbra.com/?p=47</guid>
		<description><![CDATA[Boa Noite, Como estou tendo aula de estrutura de dados estou tentando colocar aqui, alguns dos conceitos que aprendemos em sala, junto ao seu exercicio e uma implementação de um exercicio (desenvolvido rapidamente, muitas vezes). A estrutura apresentada hoje é Fila, uma estrutura de dados baseada no principio FIFO (first in, first out) ou seja, [...]]]></description>
			<content:encoded><![CDATA[<p>Boa Noite,</p>
<p>Como estou tendo aula de estrutura de dados estou tentando colocar aqui, alguns dos conceitos que aprendemos em sala, junto ao seu exercicio e uma implementação de um exercicio (desenvolvido rapidamente, muitas vezes). A estrutura apresentada hoje é Fila, uma estrutura de dados baseada no principio FIFO (first in, first out) ou seja, primeiro a entrar é o primeiro a sair. Ela, como a pilha possui duas funções básicas, que é adiciona e remove. Uma adicionando no fim, como uma fila (sem furos, é claro!) e a outra retirando do inicio. </p>
<p>Já faz alguns dias que resolvemos esse exercicio e pra ser sincero não tenho certeza se estou postando a ultima versão que tenho do mesmo, mas acredito que sim. O enunciado do exercicio resolvido foi o seguinte: </p>
<blockquote><p>
    * Implemente todas as operações vistas sobre fila;<br />
    * implemente um programa principal que utilize a fila através de um menu com os seguintes itens: enfileirar, desenfileirar, limpar, mostrar fila, sair do programa. Use a estrutura de programação switch do &#8220;C&#8221; para isto;<br />
    * a fila possuirá tamanho máximo 100, definido como uma constante chamada MAXFILA. Utilize esta constante para a definição da estrutura de dados que será a fila;<br />
    * a fila será referenciada por uma variável global;<br />
    * para implementar a estrutura de dados defina um tipo elementoDaFila que será char[40] e defina a sua fila como um vetor de 100 elementoDaFila .
</p></blockquote>
<p><a href="http://www.matbra.com/?attachment_id=49">Aqui está a implementação da mesma que acredito ser a ultima.</a></p>
<p>Abraços,<br />
Matheus</p>
<p>PS: Com o tempo eu pretendo (não sei se consigo) fazer algumas mudanças nas mesmas assim que for aprendendo novas tecnicas e conceitos relacionados ao assunto, mas como a faculdade ta muito corrida não sei se vai ser possivel.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matbra.com/2009/04/15/fila-estrutura-de-dados/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pilha, Estrutura de dados.</title>
		<link>http://www.matbra.com/2009/04/02/pilha-estrutura-de-dados/</link>
		<comments>http://www.matbra.com/2009/04/02/pilha-estrutura-de-dados/#comments</comments>
		<pubDate>Thu, 02 Apr 2009 20:53:14 +0000</pubDate>
		<dc:creator>Matheus (X-warrior) Bratfisch</dc:creator>
				<category><![CDATA[C]]></category>
		<category><![CDATA[Estrutura de Dados]]></category>
		<category><![CDATA[exercicios]]></category>
		<category><![CDATA[pilha]]></category>
		<category><![CDATA[programação]]></category>

		<guid isPermaLink="false">http://www.matbra.com/?p=39</guid>
		<description><![CDATA[Boa Noite, Hoje vou ensinar um conceito bem básico de estrutura de dados, que vimos a algumas aulas atrás. PILHA, é uma estrutura de dados abstratos amplamente utilizada na informatica e é baseada no principio LIFO (Last in, first out), ou seja ultimo a entrar, primeiro a sair. Ela possue 2 funções que todas devem [...]]]></description>
			<content:encoded><![CDATA[<p>Boa Noite,</p>
<p>Hoje vou ensinar um conceito bem básico de estrutura de dados, que vimos a algumas aulas atrás. PILHA, é uma estrutura de dados abstratos amplamente utilizada na informatica e é baseada no principio LIFO (Last in, first out), ou seja ultimo a entrar, primeiro a sair. Ela possue 2 funções que todas devem possuir, push (adicionar) e pop (remover), outros metodos que podem existir, podem ser considerados como privados, pois só mechem na estrutura interna da pilha.</p>
<p>O enunciado do exercicio que tivemos que resolver foi o seguinte:</p>
<blockquote><p>
*  Implemente todas as operações vistas sobre pilha;<br />
* implemente um programa principal que utilize a pilha através de um menu com os seguintes itens: empilhar, desempilhar, limpar, mostrar pilha, sair do programa. Use a estrutura de programação switch do &#8220;C&#8221; para isto;<br />
* ao mostrar a pilha, o programa deve colocar embaixo de cada dado, a sua posição no vetor. Utilize as opções de definição de tamanho de campo de impressão do printf() para isto;<br />
* a pilha possuirá tamanho máximo 30, definido como uma constante chamada MAXPILHA. Utilize esta constante para a definição da estrutura de dados que será a pilha;<br />
* a pilha será referenciada por uma variável global.</p></blockquote>
<p><a href="http://www.matbra.com/?attachment_id=45">Aqui está a primeira implementação que fizemos.</a></p>
<p>Abraços,<br />
Matheus</p>
<p>PS: Com o tempo vou postar reformulações desse exercicio e os novos codigos desenvolvidos. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.matbra.com/2009/04/02/pilha-estrutura-de-dados/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Estrutura de dados, C</title>
		<link>http://www.matbra.com/2009/03/21/estrutura-de-dados-c/</link>
		<comments>http://www.matbra.com/2009/03/21/estrutura-de-dados-c/#comments</comments>
		<pubDate>Sat, 21 Mar 2009 16:35:18 +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[lista]]></category>
		<category><![CDATA[resolvidos]]></category>

		<guid isPermaLink="false">http://www.matbra.com/?p=30</guid>
		<description><![CDATA[Boa tarde galera, Então, neste semestre estou tendo aula de estrutura de dados, o meu professor Aldo von Wangenheim, resolveu utilizar C na parte inicial da aula, e posteriormente C++. Um curso para linguagem C, que ele passou para os alunos que não tinham conhecimento na linguagem é este. Na segunda ou terceira aula, também [...]]]></description>
			<content:encoded><![CDATA[<p>Boa tarde galera, </p>
<p>Então, neste semestre estou tendo aula de estrutura de dados, o meu professor Aldo von Wangenheim, resolveu utilizar C na parte inicial da aula, e posteriormente C++. Um curso para linguagem C, que ele passou para os alunos que não tinham conhecimento na linguagem é <a href="http://mtm.ufsc.br/~azeredo/cursoC/aulas-main.html">este</a>. Na segunda ou terceira aula, também já passou uma lista de 5 exercicios sobre C pra galera resolver e ir pegando a manha. Eu e o Olav, resolvemos os mesmos e vamos disponibilizar aqui, junto com a lista de exercicios. Assim você que quer pode aprender por conta propria, ou você que precisa dos trabalhos e não quer faze-los pode copiar (recomendo fazer, pra aprender). </p>
<p><a href="http://www.matbra.com/?attachment_id=32">Lista de exercicio (5) para iniciantes</a><br />
<a href="http://www.matbra.com/?attachment_id=33">Os 5 exercicios resolvidos</a></p>
<p>PS: O link levara a uma outra pagina com descrição dos arquivos, onde você deve fazer o download dos mesmos.</p>
<p>Até a próxima,<br />
Matheus</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matbra.com/2009/03/21/estrutura-de-dados-c/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
