[c] verif bancaire

Bonjour,
pour vérifier la validité d'un compte bancaire, il faut regarder si le reste de la division (modulo%97) des 10 premier chiffres est égale au deux dernier chiffres!
XXXXXXXXXX-XX

mon programme ne fonctionne pas!

#include <stdio.h>
#include<stdlib.h>

void main (void)

{
	long nonmbre1,reste;
	short nombre2;
	;

	
    
	do
{
	printf("entrez les 10 premiers chiffres de votre compte bancaire\n\t");
	scanf("%l",&nombre1);
	

	printf("entrez les deux derniers chiffres de votre compte bancaire\n\t");
	scanf("%hd",&nombre2);
	}while ( nombre1 >99999 && nombre2>9)
	
    

	
	reste= nombre1%97;
	
	if(reste == nombre2)
	{	 
		printf(" le compte bancaire est valide\n");
	}
	else
	{
		printf(" le compte bancaire est invalide\n");

	}
	
}
Configuration: Windows XP
Firefox 2.0.0.11

3 réponses

  1. long nonmbre1,reste;
    short nombre2;
    ;

    tu as un point virgule qui est en trop en dessous de la déclaration du short normalement c'est ca qui bloque
    0
    1. c'est une faute de frappe mais ce n'est pas ça qui bloque!
      #include <stdio.h>
      #include<stdlib.h>
      
      void main (void)
      
      {
      	long nombre1,reste;
      	short nombre2;
      	
      
      	
          
      	do
      	{
      	printf("entrez les 10 premiers chiffres de votre compte bancaire\n\t");
      	scanf("%l",&nombre1);
      	
      	}while ( nombre1 >99999); 
      	do
      	{
      	printf("entrez les deux derniers chiffres de votre compte bancaire\n\t");
      	scanf("%hd",&nombre2);
      	}while(nombre2>9);
      
      	
          
      
      	
      	reste= nombre1%97;
      	
      	if(reste == nombre2)
      	{	 
      		printf(" le compte bancaire est valide\n");
      	}
      	else
      	{
      		printf(" le compte bancaire est invalide\n");
      
      	}
      	
      }
      
      0
      1. Ton problème est d'un autre ordre.

        En C, un entier long est sur 32 bits. Donc en non signé, tu peux représenter des nombres de 0 à 4294967296, soient maximum 8 chiffres !

        Il te faut faire de l'arithmétique 64 bits, tout simplement !
        0