Pagini recente » Cod sursa (job #881587) | Cod sursa (job #2380205) | Cod sursa (job #1052670) | Cod sursa (job #2668029) | Cod sursa (job #732795)
Cod sursa(job #732795)
//Beiland Arnold
#include <fstream>
#include <cctype>
using namespace std;
short usz(const short x);
int main(){
ifstream fin("cifra.in");
ofstream fout("cifra.out");
short T;
fin>>T;
for(short i=0;i<T;i++){
char penult='0', ult='0',c;
fin>>ult;
fin.get(c);
while(isalnum(c)){
penult=ult;
ult=c;
fin.get(c);
}
if(penult!='0') fout<<usz((penult-48)*10+ult-48)<<'\n';
else fout<<usz(ult-48)<<'\n';
}
fout.close();
fin.close();
return 0;
}
short usz(const short x){
short retval=0;
static const short par[]={0, 1, 4, 7, 6, 5, 6, 3, 6, 9}; //penultima cifra
static const short impar[]={0, 1, 6, 3, 6, 5, 6, 7, 4, 9};
for(short i=1;i<=x;i++){
if(i>10&&i/10%2) retval+=impar[i%10];
else retval+=par[i%10];
retval%=10;
}
return retval;
}