divulgacao
desafios de programação
- qualquer linguagem de programação
- pode ser feito em grupo
- sugerimos que seja usado TDD
como
Remoto
- especificação de pelo menos 2 problemas
- incompletos
- com incompatibilidade
- testar programas
- identificar o que falta definir
- eliminar incompatibilidade
- hi! tinha erro na especificação
- corrigir programas de outro grupo
Presencial (pós programação)
- natureza do problema
- depende da sequência - diagrama de transições
- lógica não depende da sequência - tabela de decisões
- simplificar
- eliminar condições
- simplificar regras
- tabela de decisões - otimizar
- eliminar estados
- eliminar transições
Desafio 1Soluçãoc1 c2 c3
0 1 - a1
- 0 - a2
- 1 1 a3
1 1 0 a4
Problema
c1 c2 c3 c4 c5
Regras incompletas
Regras incompatíveis
Desafio 2
Solução
3 estados, 4 entradas
Problema
7 estados, 8 entradas
Estados inalcançáveis
Entradas x Estados indefinidos
Transições não-determinísticas