@Override public StringBuilder encode(String mensagemAscii) { StringBuilder mensagemEmBinario = Utilidades.converteAsciiParaBinario(mensagemAscii); String auxiliar = StringUtils.rightPad("", polinomio.length() - 1, "0"); StringBuilder restoDivisao = Utilidades.retornaRestoDivisaoBits( new StringBuilder(mensagemEmBinario + auxiliar), polinomio); return mensagemEmBinario.append(restoDivisao.substring(1, polinomio.length())); }
@Override public String verificaErro(StringBuilder mensagemCodificada) { StringBuilder restoDivisao = Utilidades.retornaRestoDivisaoBits(new StringBuilder(mensagemCodificada), polinomio); int resultadoRestoDivisao = Integer.valueOf(restoDivisao.toString()); if (resultadoRestoDivisao != 0) { return "Mensagem transmitida com erro"; } else { return "Mensagem transmitida sem erro"; } }