Skip to content

Repository files navigation

csharp_Assessment_AT1

Linguagem C#

AT1

Implemente um programa semelhante a um sistema de tarifas bancárias. Esse programa deve ler um arquivo existente contendo dados financeiros de vários clientes. O seu programa deve também gerar um arquivo para cada cliente contendo o total do saldo (em reais) e o total da tarifa. Siga os requisitos abaixo:

Formato do arquivo: CPF | Nome | Conta Corrente | Conta Internacional | Conta Cripto

Exemplo de um arquivo abaixo:

69814034045|Julio Guimaraes|500,50|150,05|115,50

82479274039|Lucca Nicassio|700,50|250,05|215,50

44182620089|Geovanni Fedalto|800,50|350,05|315,50

Requisitos:

O banco oferece apenas três tipos de produto (conta corrente, conta internacional e conta cripto);

Obtenha do arquivo já existente, os dados de cada cliente;

O saldo de conta corrente no arquivo existente é armazenado em reais;

O saldo de conta internacional no arquivo existente é armazenado em dólar;

O saldo de conta cripto no arquivo existente é armazenado em dólar;

O saldo em conta corrente e conta internacional devem ser tarifados em 1,5% e 2.5% respectivamente;

O saldo em conta cripto não é tarifado;

Calcule o somatório dos saldos de cada tipo de conta (em real) para cada cliente;

Calcule o somatório das tarifas de cada tipo de conta para cada cliente;

Gere um arquivo para cada cliente, cujo nome do arquivo deve ser o número do CPF do cliente;

O arquivo do cliente (item anterior) deve conter em uma única linha o somatório dos saldos das contas do cliente e o somatório das tarifas das contas do cliente, delimitado pelo caracter pipe “|”.

Para arquivo de cliente gerado, exiba uma mensagem para o usuário, sinalizando que um arquivo foi gerado para um determinado número de cpf (exemplo: Arquivo gerado para o cpf 99999999999).

Requisitos técnicos:

Considere todos os requisitos técnicos documentados no TP3, adaptando para o contexto de leitura e escrita de arquivos (change request);

Crie uma classe para representar os dados (cinco informações em cada linha) do arquivo;

Crie um método para calcular o somatório dos saldos e das tarifas de cada cliente, na classe que representa o sistema de tarifas. Este método deve receber como parâmetros: uma coleção com os dados do arquivo e um delegate (personalizado ou Action) de callback;

Crie um evento para notificar a conclusão do somatório dos saldos e das tarifas de cada cliente, na classe que representa o sistema de tarifas;

No programa principal, faça a leitura do arquivo, criando uma coleção com os dados do arquivo;

No programa principal, instancie um objeto da classe que representa o sistema de tarifas, usando o construtor padrão;

No programa principal, crie um método para escrever os dados do arquivo de cada cliente. Este método deve ser compatível (assinatura do método) com o evento que notifica o somatório de saldo e tarifa. Ainda no programa principal, assine o evento do objeto que representa o sistema de tarifas;

No programa principal, acione o método para calcular o somatório dos saldos e das tarifas dos clientes, fornecendo como parâmetros: uma coleção com os dados do arquivo e um método (callback) para exibir no console uma mensagem de cada arquivo gerado;

O método responsável por calcular o somatório de saldo e tarifa de cada cliente deve, ao final de cada somatório, disparar o método callback (parâmetro: cpf) e o evento (parâmetro: cpf, saldo, tarifa).

Utilize o recurso de lambda expression em alguma parte do seu programa;

Releases

Packages

Used by

Contributors

Languages