Comando para gerar parcelas

Estou fazendo 1 programa para poder contrar os seus gastos mensais.
Neste programa terá uma tabela contendo as tabelas que devem ser geradas automaticas quando o cliente digitar o numero de parcelas a ser agendado, como devo fazer alguém sabe me dizer?

agendamento.setQuantidade_parcelas(Integer.parseInt(textFieldParcelas.getText()));
//Comando para gerar as parcelas.
int x = Integer.parseInt(textFieldParcelas.getText());
for (int i = x; i<=x; i++){

}

[quote=jonathatc]Estou fazendo 1 programa para poder contrar os seus gastos mensais.
Neste programa terá uma tabela contendo as tabelas que devem ser geradas automaticas quando o cliente digitar o numero de parcelas a ser agendado, como devo fazer alguém sabe me dizer?

agendamento.setQuantidade_parcelas(Integer.parseInt(textFieldParcelas.getText()));
//Comando para gerar as parcelas.
int x = Integer.parseInt(textFieldParcelas.getText());
for (int i = x; i<=x; i++){

}[/quote]

Divida de forma inteira o valor pelo numero de parcelas em forma de centavos. Adicione o resto na primeira parcela. Use BigDecimal ou BigInteger
Exemplo

[code]public BigInteger[] parcelar ( BigInteger centavos , int numeroParcelas){

BigInteger[] valores= centavos.divideAndRemainder(numeroParcelas);
// valores[0] é o quociente e valores[1] é o resto

// cria parcelas
BigInteger[] parcelas = new BigInteger[numeroParcelas];
// preenche array com o mesmo valor da parcela
Arrays.fill(parcelas, valores[0]);

//adiciona o resto na primeira
parcelas[0] = parcelas[0].add(valores[1]);

return parcelas;

}[/code]

uso

BigInteger[] parcelas = parcelar( new BigInteger(100000), 3); // 100000 centavos => 1000.00 

Bom dia amigo, estou precisando de uma forcinha para realizar um o precedimento de calcular parcelas, navegando no fórum encontrei uma participação sua o link esta logo abaixo


Esse é meu código q estou usando para efetuar o calculo ate esta funcionando o problema é q devido alguns valores possuir resto sempre fica com uma divergência na parcela como eu poderia resolver esse problema, o valor q vem do txt_vlr_crediario.getText() já dividido

[code]
case “NOTA A PRAZO”:
double vlr_crediario = Ulti.formatarValor(txt_vlr_crediario.getText());
int mes = 0;
int num = (int) js_parc_crediario.getValue();
int inter = (int) js_intervalor_crediario.getValue();
Calendar dt = new GregorianCalendar();
dt.setTime(data_venda);

                    if (vlr_crediario <= 0) {
                        Msg.mensagemAvisa(this, "valor de pagamento inválido!");
                        txt_vlr_crediario.requestFocusInWindow();
                    } else {
                        while (mes < num) {
                            dt.add(GregorianCalendar.DATE, +inter);
                            TipoPgtoModel cred = new TipoPgtoModel();
                            cred.setId_pessoa(Integer.parseInt(txt_id_cliente.getText()));
                            cred.setId_venda_cab(num_vemda);
                            cred.setFlag("V");
                            cred.setEmissao(data_venda);
                            cred.setVlr_total(subTotal);
                            cred.setVlr_des_acr(desconto);
                            cred.setVlr_apagar(vlr_crediario);
                            cred.setVencto(dt.getTime());
                            cred.setN_parcela(String.valueOf("1" + "/" + (mes + 1)));
                            cred.setVlr_parcela(vlr_crediario);
                            cred.setTipo_pgto(2);
                            cred.setForma_pgto(comboFormaPgto.getSelectedItem().toString());
                            cred.setId_usuario(id_func);
                            cred.setId_info_caixa(id_info_caixa);
                            //para exibição da tabela forma pgto
                            cred.setVlr(txt_vlr_crediario.getText());
                            cred.setData_venc(new SimpleDateFormat("dd/MM/yyyy").format(dt.getTime()));

                            listaFormaPgto.add(cred);
                            preencherTabelaFormaPgto();
                            ++mes;

// system_out_print(cred);
}

                        txt_vlr_crediario.setText(Ulti.dF.format(-restante()));

                    }
                    break;[/code]

[quote=adsadilson]Bom dia amigo, estou precisando de uma forcinha para realizar um o precedimento de calcular parcelas, navegando no fórum encontrei uma participação sua o link esta logo abaixo


Esse é meu código q estou usando para efetuar o calculo ate esta funcionando o problema é q devido alguns valores possuir resto sempre fica com uma divergência na parcela como eu poderia resolver esse problema, o valor q vem do txt_vlr_crediario.getText() já dividido ][/quote]

Suponha que tem 5 para dividir por 3. Você tem que dividir primeiro equatativamente. fica

1 1 1

depois o que sobra

1 1

e somar. fica

2 2 1

Repare que como vc lida com o resto é uma regra de negocio. Normalmente o que sobre é colocado na primeira ou na ultima parcela então 5 distribuído por 3 fica

3 , 1 , 1

ou

1, 1 , 3

Leia isto sobre o padrão money para entender melhor como funciona e como encapsular essas operações num objeto