
kaslane
(usa Outra)
Enviado em 19/01/2010 - 17:27h
Caros colegas, sou iniciante em linguagem c. Sou estudante de Biologia. Quero resolver o seguinte problema:
Implementar um verificador de dígito de controle para os números de contas de um banco, até o momento, vi apenas problemas com números inteiros e o uso de: if, for e while. Alguém poderia me explicar como posso implementar esse algoritimo? O esquema é o seguinte:
Caso o primeiro algarismos diferente de zero da esquerda para a direita seja par,
o dígito de controle é o resto da divisão por dez da soma ponderada dos algarismos do número pela posição ocupada, contando da esquerda para a direita. Por exemplo, se o número for 4325, o dígito de controle é dado por:
(4*1+3*2+2*3+5*4)%10 = 6.
E quando primeiro dígito não zero da esquerda para a direita for ímpar, o dígito de controle é dado pelo resto da divisão por dez da soma ponderada dos algarismos do número pela posição ocupada, contando da direita para a esquerda. Ex: n. da conta for 325, o dígito de controle é dado por:
(3*3+2*2+5*1)%10 = 8.
O número da conta não precisa ter quantro algarismos significativos diferentes de zero.
Fazer um programa que receba uma sequência de números de contas corrente, dados pelo número da conta mais o dígito de controle, e verifica, para cada conta, se o dígito de controle está ou não correto. As sequencias de números de contas corrente deve ser finalizada por zero.
Agradeço a ajuda!!