Mini Analisador Léxico que conta palavras numa string

Neste programa está um código bem pequeno para contar palavras numa string. Com ele, você pode inclusive adaptar e contar palavras num arquivo txt, desde que não se use pontuações ou outros caracteres como \n e \t. Eu fiz ele bem simples para apenas alguém se interessar pelo estudo de compiladores. Sugiro a leitura dos livros: - compiladores princípios técnicas e ferramentas (ótimo livro, muito prático) - linguagens formais e autômatos do autor Paulo Blauth Menezes (muito teórico este livro) Instruções: - modifique a string 'str' para ver como se comporta o lexer - leia os comentários para mais instruções

Por: Samuel Leonardo


Validação de emails em C/C++

Estudando regex para validação de datas fiquei interessado em saber como validar emails usando a mesma, então elaborei um script em C++ usando orientação a objetos, e outro em c. Para compilar o script email.cxx basta fazer: $ g++ -oemail email.cxx -std=c++11 Para compilar o script email.c basta fazer: $ gcc -oemail email.c $ ./email Espero que o mesmo seja útil.

Por: Jean César


Fila com Lista Encadeada Descritor/Cabeçalho

Este script é uma sequencia de fila simples com listas encadeadas, seguem-se os conceitos de fila e alocação dinâmica de memória, também conta com um cabeçalho de implementação fila.h.

Por: Mauricio Moccelin


Retirar caracteres de uma frase

Este programa retira qualquer letra de uma e string, sendo possível retirar mais de uma, aceitando espaçamento na frase.

Por: Celso Sousa


Bom treino, muito completo: classificação de atletas

Foi um trabalho escolar que realizei há algum tempo. Partilho para quem pretender praticar criando algo semelhante. Objetivo: - Definir o número de atletas e juízes que participarão no evento; - Inserir a pontuação de cada juiz para cada atleta; - Mostrar a nota média por aletas; - Mostrar os atletas que têm a nota mais alta e a mais baixa; - No total, qual a porcentagem de notas máximas (9); - Para cada um dos atletas, mostrar o número do juiz que lhe atribuiu a melhor nota. No caso da nota mais alta de determinado atleta ser 6, por exemplo, e se essa foi dada por mais de um juiz, mostrar o número desses juízes; - Mostrar todos os atletas e as suas pontuações. Exemplo descritivo (com repetição do objectivo acima): Haverá um concurso de patinagem artística onde participarão 5 concorrentes. Esses concorrentes serão avaliados por 3 juízes e a apresentação será única e sequencial. Quero um programa que me auxilie no registo das avaliações. Para isso terá de recolher o nome do atleta e a avaliação dos juízes, que também é dada em sequência. No final quero poder consultar a nota média de cada atleta, ver quais foram as notas mais altas e as mais baixas, bem como os atletas correspondentes; Mostrar a porcentagem de notas máximas; Quais foram os juízes que atribuíram as melhores notas para cada um dos atletas. Por fim, quero ver a listagem completa, ou seja, todos os atletas e as suas pontuações. Ah! Eu pretendo utilizar essa aplicação para o mesmo evento nos anos seguintes e o número de atletas/juízes pode variar. Não investi tempo em filtrar o que o utilizador introduz. Você poderá fazer isso para que o seu código fique completo. Por isso ao executá-lo, quando pedir um número, introduza um número e quando pedir um nome, introduza apenas letras sem caracteres especiais (inclui acentos, espaços e "ç"). Terminando este desafio eu acredito que você terá a base sólida a nível básico da linguagem e o raciocínio lógico necessário para aplicações mais avançadas. Partilho também Workflow que certamente ajudará o pessoal a compreender todo o pensamento lógico por detrás do código. Workflow de cada função disponível no meu flickr: https://www.flickr.com/gp/[email protected]/P73i52 Altere o código, faça da sua maneira o que é pedido, acrescente novas funções e partilhe o código nos comentários. Espero ter ajudado, Lucas [email protected]

Por: Lucas Reis


Sequência de Fibonacci

Escrever um programa que apresente os valores da sequência numérica de Fibonacci até o décimo quinto termo. A sequência de Fibonacci é formada por 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377 etc., obtendo-se o próximo termo a partir da soma do termo atual com o anterior sucessivamente até o infinito, se a sequência não for interrompida.

Por: Celso Sousa