Um joguinho em C

Fiz quando estava entediado na faculdade só para matar o tempo na aula. Não tem menu, muito menos um botão para sair, para jogar é só utilizar as setas e a letra "x" para atirar. Para sair: Ctrl + c. :) Bom proveito. Para compilar utilize: $ gcc nomedoarquivo.c -o saida -lncurses

Por: omega


C split

Função parecida com a split() do JavaScript. $ gcc -o split split.c $ ./split Pode-se excluir a função main desse fonte, e usá-lo como "include" em outros projetos: $ gcc -c split.c $ gcc split.o meu_programa.o -o meu_programa No 'meu_programa' basta chamar a função.

Por: Enzo de Brito Ferber


Validador de CPF

Exemplo simples de um validador de CPF. O script recebe um número de CPF e retorna se o número está correto ou qual sequência de dígitos verificadores eram esperados.

Por: Marcos


Árvore binária

O objetivo é falar da forma mais clara e resumida sobre árvores binárias de busca, e com isso auxiliar outros aspirantes a programadores (assim com eu) a conseguirem dar mais um passo nessa difícil jornada. Perceba que a definição é recursiva e, devido a isso, muitas operações sobre árvores binárias utilizam recursão. É o tipo de árvore mais utilizado na computação. A principal utilização de árvores binárias são as árvores de busca binária. Uma grande vantagem de uma árvore binária é que ela propicia pesquisas muito rápidas. Grande vantagem: flexibilidade e eficiência quando usadas em programas de gerenciamento de banco de dados. O código que utilizo como exemplo apenas captura as informações fornecidas pelo usuário e as armazena numa árvore binária e na sequência percorre a árvore das três formas possíveis exibindo os valores armazenados. Cada árvore possui: • Raiz ou nó e várias subárvores • As subárvores também são um árvore • Os nós que não possuem nenhum filho, são chamados de folha • O grau de uma árvore diz respeito ao número de máximo de subárvore em cada nós da árvore • A altura ou tamanho da árvore diz respeito a quantidade de níveis da árvore Numa árvore binária cada nó tem no máximo 2 filhos Em cada nó temos a informação que será a raiz e dois ponteiros, um para o filho esquerdo e outro para o filho direito A implementação de uma árvore binária é baseado no conceito de listas encadeadas. Uma árvore binária com raiz R é uma árvore binária de busca (ABB) se: 1. Se a chave de cada nó da subárvore a esquerda de R é menor do que a chave do nó R; 2. A chave de cada nó da subárvore a direita for maior do que a chave do nó R; 3. As subárvores esquerda e direita também devem ser abb's. Etapas de uma implementação: a. Uma struct que será o molde da nossa árvore b. Criar um ponteiro do tipo desta struct recém criada e uma variável do tipo inteiro que armazenará a quantidade de elementos inseridos na árvore (devem ser variáveis globais) c. Um método construtor (onde o ponteiro receberá NULL e o contador receberá zero) d. Método destrutor (devemos liberar a memória alocada) e. Método que verifica se abb está vazia (essa condição é satisfeita quando a raiz apontar para NULL) f. Método que verifica a quantidade de elementos inseridos g. Método de inserção h. Método de pesquisa i. Método de busca: i. Em ordem:subarvore esquerda, raiz, subarvore direita ii. Pré-ordem: raiz, subarvore esquerda, subarvore direita iii. Pós-ordem: subarvore esquerda, subarvore direita, raiz j. Método de exclusão Aguardo sugestões.

Por: Marcos


C join

Função que junta um array char** em apenas uma string, todos os elementos separados por um token. join( {"Enzo", "Ferber"}, ':'); // só demostração! Retorna: "Enzo:Ferber:" ;) O arquivo que estou enviando tem o split.c e o join.c Pra compilar, $ gcc -c split.c $ gcc -c join.c $ gcc -c joinsplit.c $ gcc -o joinsplit joinsplit.o split.o join.o $ ./joinsplit Viva o Linux : :)

Por: Enzo de Brito Ferber


Quadrado Mágico

Comentei bastante o código e coloquei as regras de construção do quadrado no cabeçalho inicial. Como ficou extenso, não vou postar na descrição. O código está disponível para visualização no browser.

Por: Enzo de Brito Ferber






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts