segunda-feira, 25 de maio de 2020

C++ Builder - Relógio digital

Já que criamos um relógio digital
em eletrônica com proteus,
outro em Linguagem C,
com saída no console do windows, 
outro com a biblioteca graphics.h,
outro usando linguagem java,
e outro usando o JavaFx, o que poderia impedir
de criarmos um usando o C++ Builder?
Aqui está funcionando no vídeo 
um relógio digital criado no C++ Builder,
e em nada ficou em falta.




//---------------------------------------------------------------------------
void __fastcall TForm1::Timer1Timer ( TObject *Sender ) {
if ( horas < 10 )
Label1 -> Caption = "0";
if ( horas == 24 ) {
Label1 -> Left = 90;
horas = 0;
Label1 -> Caption = "0";
}
Label1 -> Caption = Label1 -> Caption + StrToInt ( horas );
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Timer2Timer ( TObject *Sender ) {
if ( inicia_minutos == true ) {
minutos++;
}
if ( minutos < 10 ) {
Label2 -> Caption = "0";
}
if ( minutos == 60 ) {
minutos = 0;
horas++;
Label2 -> Caption = "0";
}
if ( ( minutos >= 10 && minutos < 60 ) )
Label2 -> Caption = StrToInt ( minutos );

if ( ( minutos >= 20 && minutos < 60 ) ){
Label2 -> Caption = StrToInt ( minutos );
Label2 -> Caption = Label2 -> Caption + " ";
}

Label2 -> Caption = Label2 -> Caption + StrToInt ( minutos );
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Timer3Timer ( TObject *Sender ) {
if ( inicia_segundos == true ) {
segundos++;
}
if ( segundos < 10 ) {
Label3 -> Caption = "0";
}
if ( segundos == 60 ) {
segundos = 0;
        minutos++;
Label3 -> Caption = "0";
}
if ( ( segundos >= 10 && segundos < 60 ) )
Label3 -> Caption = StrToInt ( segundos );

if ( ( segundos >= 20 && segundos < 60 ) ){
Label3 -> Caption = StrToInt ( segundos );
Label3 -> Caption = Label3 -> Caption + " ";
}

Label3 -> Caption = Label3 -> Caption + StrToInt ( segundos );
}
//---------------------------------------------------------------------------



quarta-feira, 6 de maio de 2020

Juros compostos - pesquisando o tempo necessário

Para pesquisar o tempo em uma aplicação de juros compostos,
precisamos entrar com três parâmetros:

1º) Valor do capital
2º) Taxa de juros
3º) Montante

Com estas informações e uma fórmula bem aplicada,
já somos capazes de descobrir o tempo em que
um certo Capital, aplicado com tal Taxa de Juros,
alcance o determinado Montante.
Mas não foi fácil criar esta fórmula.
Quando aprendemos a resolver isto no papel,
usávamos logaritmo para complementar a fórmula,
e agora quando fui passar a fórmula para
linguagem de programação, fui por um caminho
complicado e duvidoso, mas pesquisando sobre
a biblioteca math.h do C, encontrei a função  log ();
e com esta solução o código ficou resumido e funcional.

Assista o programa funcionando no vídeo abaixo:



Veja abaixo a principal função do programa:

//---------------------------------------------------------------------------
void __fastcall TForm5::SpeedButton2Click ( TObject *Sender ) {
              double Capital = 0.00, Juros, Tx_juros = 0.00, Tempo = 0.00, Montante, Aux = 0.00;

              Capital  = StrToFloat ( Edit1 -> Text );
              Tx_juros = StrToFloat ( Edit2 -> Text );
              Montante = StrToFloat ( Edit3 -> Text );

              Montante = Montante / Capital;
              Tx_juros = Tx_juros / 100;
              Aux = ( 1 + Tx_juros );

              Montante = log10 ( Montante );
              Aux = log10 ( Aux );

              Montante =  Montante / Aux;
              Montante = Montante * 12;

              Label1 -> Caption = FloatToStrF ( Montante , ffFixed, 8, 2 );
              Label1 -> Caption = Label1 -> Caption + " Meses";

              //Informe ( Sender );
 }
//---------------------------------------------------------------------------

Juros compostos - pesquisando a taxa de juros

Para pesquisar a taxa de juros em uma aplicação
de juros compostos, precisamos entrar com três parâmetros:
1º) Valor do capital
2º) Valor do juros
3º) Tempo - que em nosso caso estamos entrando
com o tempo em meses, que pode ser facilmente
convertido para bimestre, trimestre, semestre ou ano.
Assista o programa funcionando no vídeo abaixo:



Abaixo a principal função do programa:

//---------------------------------------------------------------------------
void __fastcall TForm4::SpeedButton2Click ( TObject *Sender ) {
              double Capital = 0.00, Val_juros = 0.00, Tx_juros = 0.00, Tempo = 0.00, Montante;

              Capital = StrToFloat ( Edit1 -> Text );
              Val_juros = StrToFloat ( Edit2 -> Text );
              Tempo = StrToFloat ( Edit3 -> Text );

              Tempo = Tempo / 12;

              Montante = Capital + Val_juros;
              Montante = Montante / Capital;
              Montante = pow ( Montante, 1.0 / Tempo );
              Montante = Montante - 1;
              Montante = Montante * 100;
              Label1 -> Caption = FloatToStrF ( Montante , ffFixed, 8, 2 );
              Label1 -> Caption = Label1 -> Caption + " %";

              Informe ( Sender );
}
//---------------------------------------------------------------------------

Juros compostos - pesquisando o valor do juros

Para calcular o valor do juros em uma aplicação
de juros compostos, precisamos entrar com três parâmetros:


1º) Valor do capital
2º) Taxa de juros
3º) Tempo - que em nosso caso estamos entrando
com o tempo em meses, que pode ser facilmente
convertido para bimestre, trimestre, semestre ou ano.


Assista o programa funcionando no vídeo abaixo:





Veja abaixo a principal função do programa:

//---------------------------------------------------------------------------
void __fastcall TForm4::SpeedButton2Click ( TObject *Sender ) {
             double Capital = 0.00, Juros, Tx_juros = 0.00,
             Val_juros = 0.00, Tempo = 0.00, Montante;

              Capital = StrToFloat ( Edit1 -> Text );
              Tx_juros = StrToFloat ( Edit2 -> Text );
              Tempo = StrToFloat ( Edit3 -> Text );

              Tx_juros = Tx_juros / 100;
              Tx_juros = Tx_juros + ( 1 );
              Tempo = Tempo / 12;

              Montante = pow ( Tx_juros, Tempo );
              Montante = Montante * Capital;
              Val_juros = Montante - Capital;
              Label1 -> Caption = FloatToStrF ( Val_juros, ffFixed, 8, 2 );

              //Informe ( Sender );
}
//---------------------------------------------------------------------------

Juros compostos - pesquisando o valor do montante

Juros compostos são muito utilizados
em transações comerciais e financeiras
em todas as partes do mundo.
Compra de casas ou apartamentos a longo prazo,
investimentos em conta bancárias,
aquisição de empréstimos consignados,
e outros negócios onde estes cálculos são necessários.
Revendo nossos conhecimentos em matemática financeira,
criamos quatro programas baseado em juros compostos,
que são os seguintes: Pesquisando o valor do montante,
que é este agora apresentado,
Pesquisando o valor do juros,
Pesquisando a taxa de juros, e,
Pesquisando tempo necessário.
Acompanhem seu funcionamento no vídeo abaixo:





Veja abaixo a principal função do código:

//---------------------------------------------------------------------------
void __fastcall TForm2::SpeedButton2Click ( TObject *Sender ) {

             double Capital = 0.00, Juros, Tx_juros = 0.00, Tempo = 0.00, Montante;

              Capital = StrToFloat ( Edit1 -> Text );
              Tx_juros = StrToFloat ( Edit2 -> Text );
              Tempo = StrToFloat ( Edit3 -> Text );

              Tx_juros = Tx_juros / 100;
              Tx_juros = Tx_juros + ( 1 );
              Tempo = Tempo / 12;

              Montante = pow ( Tx_juros, Tempo );
              Montante = Montante * Capital;

             Label1 -> Caption = FloatToStrF ( Montante , ffFixed, 8, 2 );

             //Informe ( Sender );
}
//---------------------------------------------------------------------------