subroutine checkem ! validate these numbers do i=1,size(ccards) j=len(trim(ccards(i))) string=luhn_checksum(ccards(i)(:j-1)) write(*,'(a,1x,a,1x,l1)')ccards(i),string,ccards(i).eq.string enddo string='123456 781-234-567' write(*,*)'from ',string,' got ',luhn_checksum(string), & & ' which should be 1234567812345670' end subroutine checkem