Pular para o conteúdo

Validador de cartão de crédito

Um validador simples de cartão de crédito em pouquíssimas linhas.
Djames Suhanko DjamesSuhanko
Hits: 13.865 Categoria: Python Subcategoria: Miscelânea
  • Download
  • Nova versão
  • Indicar
  • Denunciar

Descrição

Um validador simples de cartão de crédito em pouquíssimas linhas.
Download cartao_credito.py Enviar nova versão

Esconder código-fonte

#!/usr/bin/env python
import sys
total=0
s = raw_input('Numero do cartao (sem sinais) -->')
if (len(s) != 16):
 print "Numero errado. faca de novo"
 exit()
for i in range(0,16,2):
 acum=int(s[i])*2
 if (acum > 9):
  acum=acum-9
 total=total+acum
for i in range(1,17,2):
 total=total+int(s[i])
if ((total%10) != 0 or total > 150):
 print "Cartao invalido"
 exit()
print "Cartao valido: %s" % s

Genius - jogo de memória

Probabilidade de Jogos - Poker Texas Hold

Memory info em python

Cálculo de um número binomial

Conversor de dólares em reais e vice-versa

#1 Comentário enviado por msiqueira553 em 19/03/2014 - 11:20h
Uma explicação de como o código funciona viria a calhar!
#2 Comentário enviado por Tadzio em 09/05/2014 - 19:18h
tem alguns modos mais fáceis de fazer isso.
primeiro limpe a variavel s:
s = s.replace(' ','').replace('-','')
assim você pode digitar tanto com espaços quanto com -

mas a parte boa:
s1=''.join([str(int(x)*2) for x in s[:16:2]]) # índices pares dobrados
s2 = s[1:17:2] #índices impares

total = sum(map(int,s1+s2))

if ((total%10) != 0:
.print "Cartao invalido"
.exit()
print "Cartao valido: %s" % s

Contribuir com comentário

Entre na sua conta para comentar.