An open API service indexing awesome lists of open source software.

https://github.com/theduardomaciel/cc-md

Repository with all source files developed during the Discrete Math (MD) subject of my undergraduate course in Computer Science (CC).
https://github.com/theduardomaciel/cc-md

c criptografia criptografia-rsa criptography gcc rsa-cryptography

Last synced: about 1 month ago
JSON representation

Repository with all source files developed during the Discrete Math (MD) subject of my undergraduate course in Computer Science (CC).

Awesome Lists containing this project

README

        

# Matemática Discreta

Repositório contendo todos os arquivos fonte em C desenvolvidos durante a matéria Matemática Discreta (MD) do curso de Graduação em Ciência da Computação (CC) na Universidade Federal de Alagoas (UFAL).

## Links úteis

#### Números primos

##### Crivo de Atkin
- [Implementação em C++](https://github.com/fylux/SieveOfAtkin)
- [Artigo explicando o Crivo de Atkin de maneira simplificada](https://fylux.github.io/2017/03/16/Sieve-Of-Atkin/)
- [Artigo na Wikipédia conceituando o Crivo de Atkin](https://en.wikipedia.org/wiki/Sieve_of_Atkin)
- [Implementação otimizada do crivo em C](http://cr.yp.to/primegen.html)
- [Artigo original dos desenvolvedores do Crivo de Atkin](https://www.ams.org/journals/mcom/2004-73-246/S0025-5718-03-01501-1/S0025-5718-03-01501-1.pdf)

##### Crivo de Erastótenes
- [Artigo explicando o Crivo de Erastótenes de maneira simplificada](https://www.keil.com/benchmarks/sieve.asp)
- [Artigo na Wikipédia conceituando o Crivo de Erastótenes](https://en.wikipedia.org/wiki/Sieve_of_Eratosthenes)
- [Biblioteca incrivelmente otimizada que utiliza o Crivo de Erastótenes](https://github.com/kimwalisch/primesieve)
- [Site explicando como um algoritmo de crivo segmentado foi realizado](https://sites.google.com/site/bbuhrow/home/cuda-sieve-of-eratosthenes)~
- [Outro site explicando o conceito do crivo e implementando em Java e C++](https://www.algolist.net/Algorithms/Number_theoretic/Sieve_of_Eratosthenes)
- [Artigo explicando o crivo de maneira incremental](https://www.codevamping.com/2019/01/incremental-sieve-of-eratosthenes/)

###### Códigos de exemplo
- [Código utilizado como benchmark](http://www.cs.nthu.edu.tw/~tingting/Archi_07/benchmark/sieve.c)
- [Código que implementa alguns métodos de otimização](http://wwwhomes.uni-bielefeld.de/achim/prime_sieve.c)

> [Resposta no Stack Overflow comparando os Crivos de Atkin e Erastótenes](https://stackoverflow.com/questions/19388106/the-sieve-of-atkin/22161595#22161595)

##### Provar primalidade
- [Artigo (em inglês) mostrando como encontrar primos e provar que o são](https://t5k.org/prove/prove2_3.html)
- [Artigo (em inglês) sobre a prova de primalidade](https://en.wikipedia.org/wiki/Primality_test)

#### Combinação Linear
- [Resposta acerca de como realizar uma combinação linear](https://math.stackexchange.com/questions/1258117/coefficients-of-a-linear-combination)
- [Algoritmo para encontrar os coeficientes de um MDC como combinação linear](https://math.stackexchange.com/questions/981773/algorithm-to-find-the-coefficient-of-gcd-linear-combination)
- [Calculadora de MDC como combinação linear](https://mathcenter.oxford.emory.edu/site/math125/toolGcdAsLinearCombination/index.php)
- [Competição para encontrar os coeficientes de um MMC como combinação linear](https://www.codewars.com/kata/63304cd2c68f640016b5d162)
- [Artigo explicando como realizar o Algoritmo de Euclides extendido](https://www.geeksforgeeks.org/euclidean-algorithms-basic-and-extended/)

#### Inversos Modulares
- [Artigo explicando o que são e como calcular os inversos modulares](https://www.khanacademy.org/computing/computer-science/cryptography/modarithmetic/a/modular-inverses)
- [Artigo com exemplos de código mostrando como calcular inversos modulares](https://www.geeksforgeeks.org/multiplicative-inverse-under-modulo-m/)

#### Site geral que realiza os mais diversos tipos de cálculo matemático: https://www.dcode.fr/extended-gcd
#### Site que explica o funcionamento do algoritmo RSA passo a passo: https://www.cryptool.org/en/cto/rsa-step-by-step