Problemas com while
Olá pessoal to fazendo um programa e colocarei o enunciado do exercicio, e nao consigo resolver, é o seguinte:
Faça um programa que peça o salário do cliente, o valor desejado do empréstimo e responda qual o menor tempo em anos para o pagamento e o valor da parcela, usando as seguintes diretivas:
- O valor da parcela não pode ultrapassar 30¬ do valor do salário;
- Use o juro de 2¬ ao mês;
- Cálculo do Juro: Capital x Taxa x Tempo / 100;
- Cálculo do Montante: Capital + Juro;
- Cálculo da Parcela: Montante / Tempo;
- Taxa e Tempo tem que ser compatíveis: Mês/Mês, Ano/Ano;
- Use tempos de 1 a 20 anos;
- Caso o cliente nao possua renda necessária para o valor do emprestimo, o sistema deve dar uma mensagem avisando;
É o seguinte, no caso do Tempo, o tempo do cálculo do juro, nao é o mesmo do calculo da parcela, pelo seguinte motivo, nao sei pq o professor quer que seja calculado o juro somente até 4 anos, e depois nao aumente mais o juro e o outro tempo é o tempo que levará pra pagar o emprestimo, em até 20 anos (240 meses) pode ser o tempo é claro, eu colocarei aqui o código fonte, só que to com 1 problema num while e algumas permissoes que nao funcionam;
--------------------------------------------------------------------------------------
As duvidas sao as seguintes:
Como fazer o delphi dizer q quando a parcela for igual ou menor que os 30¬ do salario, ele pare o while de calcular e mostre 1 mensagem na tela ou num edit o valor da parcela?
Não consigo também fazer parar de calcular quando chega em 20 anos, no código tinha tentado por no while que tem > 48 por tb <=240 mas nao deu certo
como verifico se após 20 anos o programa mostre mensagem caso nao possa pagar o emprestimo, ouseja a parcela seja maior que 30¬ do salário, com o código pode ser que me ajudem, obrigado, o calculo ta OK, mas nao consigo por as permissoes do programa.
Desde já agradeço a ajuda.
Faça um programa que peça o salário do cliente, o valor desejado do empréstimo e responda qual o menor tempo em anos para o pagamento e o valor da parcela, usando as seguintes diretivas:
- O valor da parcela não pode ultrapassar 30¬ do valor do salário;
- Use o juro de 2¬ ao mês;
- Cálculo do Juro: Capital x Taxa x Tempo / 100;
- Cálculo do Montante: Capital + Juro;
- Cálculo da Parcela: Montante / Tempo;
- Taxa e Tempo tem que ser compatíveis: Mês/Mês, Ano/Ano;
- Use tempos de 1 a 20 anos;
- Caso o cliente nao possua renda necessária para o valor do emprestimo, o sistema deve dar uma mensagem avisando;
É o seguinte, no caso do Tempo, o tempo do cálculo do juro, nao é o mesmo do calculo da parcela, pelo seguinte motivo, nao sei pq o professor quer que seja calculado o juro somente até 4 anos, e depois nao aumente mais o juro e o outro tempo é o tempo que levará pra pagar o emprestimo, em até 20 anos (240 meses) pode ser o tempo é claro, eu colocarei aqui o código fonte, só que to com 1 problema num while e algumas permissoes que nao funcionam;
--------------------------------------------------------------------------------------
var
Form1: TForm1;
salario, emprestimo, cont_tempo1, cont_tempo2, taxa, calc_juro, calc_montante, calc_parcela, calc_porcentagem : real;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
begin
salario := StrToFloat(Edit1.Text);
emprestimo := StrToFloat(Edit2.Text);
cont_tempo1 := 12;
cont_tempo2 := 12;
calc_porcentagem := salario * 0.30;
while (cont_tempo1 <= 48) and (cont_tempo2 <= 48) do
begin
calc_juro := emprestimo * 2 * cont_tempo1 / 100;
calc_montante := emprestimo + calc_juro;
calc_parcela := calc_montante / cont_tempo2;
cont_tempo1 := cont_tempo1 + 12;
cont_tempo2 := cont_tempo2 + 12;
end;
while (calc_parcela >= calc_porcentagem) do
begin
while (cont_tempo2 > 48) do
begin
calc_montante := emprestimo + calc_juro;
calc_parcela := calc_montante / cont_tempo2;
cont_tempo2 := cont_tempo2 + 12;
end;
end;
edit3.text := FloatToStr(calc_parcela);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
edit1.clear;
edit2.clear;
edit3.clear;
edit4.clear;
edit1.setfocus;
end;
end.As duvidas sao as seguintes:
Como fazer o delphi dizer q quando a parcela for igual ou menor que os 30¬ do salario, ele pare o while de calcular e mostre 1 mensagem na tela ou num edit o valor da parcela?
Não consigo também fazer parar de calcular quando chega em 20 anos, no código tinha tentado por no while que tem > 48 por tb <=240 mas nao deu certo
como verifico se após 20 anos o programa mostre mensagem caso nao possa pagar o emprestimo, ouseja a parcela seja maior que 30¬ do salário, com o código pode ser que me ajudem, obrigado, o calculo ta OK, mas nao consigo por as permissoes do programa.
Desde já agradeço a ajuda.
Diegobarcelos
Curtidas 0
Respostas
Aroldo Zanela
07/05/2004
Colega,
Os testes condicionais devem ser feitos por IFs ao invés de criar novos laços while..do. Não entendi se é para capitalizar (juros compostos) ou se é juros simples (parece que sim)?
Outra coisa, como você é aluno de graduação, não seria mais adequado desenvolver OO?
Os testes condicionais devem ser feitos por IFs ao invés de criar novos laços while..do. Não entendi se é para capitalizar (juros compostos) ou se é juros simples (parece que sim)?
Outra coisa, como você é aluno de graduação, não seria mais adequado desenvolver OO?
GOSTEI 0