Jump to content

Programa dando resposta errada


Lucivaldo Barbosa

Recommended Posts

Este programa deveria mostrar os juros até que fosse inserido um capital igual a -1 mas n é isso que acontece, pq?

#include <stdio.h>
#include <locale.h>
 
int main(){
    setlocale(LC_ALL, "");
    int dias;
    float taxa, capital, juros;
    printf("Esse programa recebe capital, taxa de juros, prazo e mostra o valor dos juros\n\n");
    while(capital != -1){
        juros = capital * taxa * dias / 365;
        printf("Insira o valor do capital (-1 para finalizar):\n");
        scanf("%f", &capital);
        printf("\nInsira a taxa de juros no formato .xx:\n");
        scanf("%f", &taxa);
        printf("\nInsira o prazo em dias:\n");
        scanf("%d", &dias);    
        printf("\nO juros é: %.1f\n", juros);
        
    }    

    return 0;
}
Link to comment
Share on other sites

Viva,

Tens 2 problemas:

1) estas a calcular os "juros" com as variáveis "capital", "taxa" e "dias" ANTES de perguntar o valor das mesmas ao operador.
(a primeira vez que corre os juros são ZERO, na segunda e seguintes vais ver os juros do cálculo anterior)

2) ao contrário do que dizes o programa termina com -1, mas como fazes sempre as 3 (tres) perguntas "capital?", "taxa?", "dias?" independentemente de o operador introduzir -1 no capital, "dá a impressão" de que o programa continua a correr até ao fim das 3 perguntas.

aconselhava a reveres o fluxo do programa, para o cálculo ser correcto e a experiência com o operador ser a mais natural possível.

cps,

  • Vote 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.