Care este cifra de pe pozitia K , daca se aseaza unul dupa altul numerele 1, 2, ....
Exemplu:Cifra de pe pozitia 20 este 1 (1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15)
Cifra de pe pozitia 2131 este 6 (ultima cifra din numarul 746)
Răspunsuri la întrebare
Răspuns:
#include <iostream>
using namespace std;
int rasturnat(int n){
int rs = 0;
while (n) {
rs = rs * 10 + n % 10;
n /= 10;
}
return rs;
}
int main(){
int a[1000000];
int k;
int i = 1;
int n = 0;
cout << "k=";
cin >> k;
while (n < k*2){
int nr = rasturnat(i);
if (i % 10 != 0){
while (nr){
a[n] = nr % 10;
n++;
nr /= 10;
}
} else {
int m = 0;
int num = i;
while (nr){
a[n] = nr % 10;
n++;
nr /= 10;
}
while (num % 10 == 0){
m++;
num /= 10;
}
int f = 0;
while (f < m){
a[n] = 0;
n++;
f++;
}
}
i++;
}
cout << "Cifra de pe pozitia " << k << " este " << a[k-1] << endl;
return 0;
}
Explicație: