Laboratorio de Engenharia - Leitura de Arquivo

Assuma que se tem um arquivo-texto contendo números de cartões de crédito. Cada linha
deste arquivo contem os seguintes dados, separados por ponto e vírgula: o número do
cartão, a data de expiração e o nome do titular do cartão. Elaborar um programa Java que
utilize os seguintes nomes de classes a seguir:
◦ CreditCard;
◦ VisaCC, MasterCC, AmExCC, todas subclasses de CreditCard.

Futuramente, novas classes de cartão poderão ser adicionadas. Assim, pede-se

(a) Implementar um programa Java que leia um arquivo-texto com diversos números de
cartões. O programa deverá ter as classes descritas anteriormente, além de outras que
se julgar necessárias para implementar o programa.

(b) O programa deverá ler cada informação de cartão e então identificar que cartão é este,
criando um objeto da classe correspondente na memória e o armazenando em uma
estrutura de dados conveniente na memória. Depois, o programa deverá listar na tela
os cartões identificados, agrupados por tipo (Amex, Visa etc). Tentar identificar e aplicar
um ou mais padrões de projeto para serem adaptados a este projeto – não esquecer de
escrever e justificar os nomes dos padrões na documentação a ser enviada.

NOTA: não é necessário utilizar o algoritmo exato para identificar os cartões (ISO
2894/ANSI 4.13). Utilize a tabela a seguir:

MasterCard O primeiro dígito é 5 e o segundo dígito está no intervalo [1…5].
O comprimento é de 16 dígitos.

Visa O primeiro dígito é 4. O comprimento é 13 ou 16 dígitos.

AmericanExpress O primeiro dígito é 3 e o segundo dígito é 4 ou 7. O
comprimento é de 15 dígitos.

Discover Os primeiros quatro dígitos são 6011. O comprimento é 16
dígitos.

Provável que ninguém irá fazer o trabalho pra você de graça. kkkk

Se você colocar um código e disser onde exatamente está sua dúvida, a galera colabora bastante.

1 curtida

Fala GeovaniNobel, tudo bem?

Bom é como o BlackHearth disse, pronto você não vai ter.

Onde é a duvida?

Ler o arquivo?
Orientação a Objetos?
Padrão de Projetos?

Posta o código, vai ajudar bastante :grin: