12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- #include <iostream>
- using namespace std;
- #include <cstring>
- #include "entierlong.h"
- #include "lit_ecrit.h"
- void AfficheEntierLong(EntierLong a)
- {
-
- int i,j;
-
-
- if (a.negatif)
- {
- cout <<"-";
- }
-
-
- i=MAXCHIFFRES-1;
- while ((a.chiffres[i]==0)&&(i>0))
- {
- i=i-1;
- }
-
- for(j=i;j>=0;j=j-1)
- {
- cout << a.chiffres[j];
- }
- cout << endl;
-
- }
- EntierLong LitEntierLong()
- {
- char Nb[MAXCHIFFRES+1];
- EntierLong a;
- int i,l;
-
- cin >> Nb;
- a.negatif = (Nb[0]=='-');
- l=strlen(Nb);
- if ((a.negatif)||(Nb[0]=='+'))
- {
-
- for(i=0;i<l;i=i+1)
- {
- Nb[i]=Nb[i+1];
- }
- l=strlen(Nb);
- }
- for (i=0;i<l;i=i+1)
- {
- a.chiffres[i] = toascii(Nb[l-1-i])-toascii('0');
- }
-
- for (i=l;i<MAXCHIFFRES;i=i+1)
- {
- a.chiffres[i]=0;
- }
- return a;
-
- }
|