private void ResolverParteInteira(decimal valor) { var numeroDaParteInteira = (long)Math.Truncate(valor); if (numeroDaParteInteira > 0) _parteInteira = ConversorDeNumeroParaClasses.Converter(numeroDaParteInteira); }
protected string LigaClasses(string ordem, Classe classeAnterior) { var conjuncao = ObterConjuncao(classeAnterior); var deveColocarConjuncao = classeAnterior.Algarismos.Take(1).First() != 0; var classeAnteriorPorExtenso = ((deveColocarConjuncao ? conjuncao : string.Empty) + classeAnterior); return ordem + (EhClasseAnteriorTudoZero ? string.Empty : classeAnteriorPorExtenso); }
protected string LigaClasses(string ordem, Classe classeAnterior) { var conjuncao = ObterConjuncao(classeAnterior); var deveColocarConjuncao = classeAnterior.Algarismos.Take(1).First() != 0; var classeAnteriorPorExtenso = ((deveColocarConjuncao ? conjuncao : string.Empty) + classeAnterior); return(ordem + (EhClasseAnteriorTudoZero ? string.Empty : classeAnteriorPorExtenso)); }
private void ResolverParteDecimal(decimal valor) { var parteDecimal = ((valor - Math.Truncate(valor)) * 100); if (parteDecimal - Math.Truncate(parteDecimal) > 0) throw new Exception(string.Format("O valor {0} tem mais de duas casas decimais", valor)); var numeroDaParteDecimal = (long)parteDecimal; if (numeroDaParteDecimal <= 0) return; numeroDaParteDecimal = ReduzirNumeroDaParteDecimal(numeroDaParteDecimal); _parteDecimal = ConversorDeNumeroParaClasses.Converter(numeroDaParteDecimal); }
public Real(decimal valor) { var numeroDaParteInteira = (long)Math.Truncate(valor); if (numeroDaParteInteira > 0) { _parteInteira = ConversorDeNumeroParaClasses.Converter(numeroDaParteInteira); _pluralidadeInteira = ObterPluralidadeDaParteInteira(numeroDaParteInteira); } var parteDecimal = ((valor - Math.Truncate(valor))*100); if (parteDecimal - Math.Truncate(parteDecimal) > 0) throw new Exception(string.Format("O valor {0} tem mais de duas casas decimais", valor)); var numeroDaParteDecimal = (long) parteDecimal; if (numeroDaParteDecimal > 0) { _parteDecimal = ConversorDeNumeroParaClasses.Converter(numeroDaParteDecimal); _pluralidadeDecimal = ObterPluralidadeDaParteDecimal(numeroDaParteDecimal); } }
public Milhar(Ordem ordem, Classe classeAnterior = null) { Ordem = ordem; ClasseAnterior = classeAnterior ?? new PrimeiraClasse(new Centena(0)); }
public Milhao(Ordem ordem, Classe classeAnterior = null) { Ordem = ordem; ClasseAnterior = classeAnterior ?? new Milhar(new Centena(0)); }
protected static string ObterConjuncao(Classe classeAnterior) { var numeroDaClasseAnterior = ConverterParaNumero(classeAnterior); var ehExcecao = numeroDaClasseAnterior % 10 == 0 || numeroDaClasseAnterior < 100; return ehExcecao ? " e " : ", "; }
protected static long ConverterParaNumero(Classe classeAnterior) { var numeroDaClasseAnterior = Convert.ToInt64(string.Join(string.Empty, classeAnterior.Algarismos.Take(3).Select(algarismo => algarismo.ToString()))); return numeroDaClasseAnterior; }
private string LigaClasses(string ordem, Classe classeAnterior) { var conjuncao = ObterConjuncao(classeAnterior); return ordem + (EhClasseAnteriorTudoZero ? string.Empty : (conjuncao + classeAnterior)); }
protected static long ConverterParaNumero(Classe classeAnterior) { var numeroDaClasseAnterior = Convert.ToInt64(string.Join(string.Empty, classeAnterior.Algarismos.Take(3).Select(algarismo => algarismo.ToString()))); return(numeroDaClasseAnterior); }