Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cmath>
- #include <conio.h>
- using namespace std;
- int numobr(int num) //Кол-во цифр перед числом плюс кол-во разрядов числа
- {
- int tekrar(0);
- int res(0);
- int numim(num);
- while (numim> 0)
- {
- if (numim > pow(10, tekrar) * 9)
- {
- numim = numim - pow(10, tekrar) * 9;
- res = res + (pow(10, tekrar) * 9)*(tekrar+1);
- }
- else
- {
- res = res + (numim*(tekrar+1));
- numim = 0;
- }
- tekrar++;
- }
- return res;
- }
- int st(int a, int b) // Возведение в степень с возвращением Int
- {
- if (b > 0)
- {
- int res(a);
- for (int i(0); i < b - 1; i++)
- {
- res = res * a;
- }
- return res;
- }
- else return 1;
- }
- int longnum(int num, int numq) // Вывод конкретной цифры числа.
- {
- int res(num);
- res = res / st(10, numq);
- res = res % 10;
- return res;
- }
- int main(void)
- {
- setlocale(0, "Russian");
- int numsumm, realnum(0);
- cout << "Введите число: ";
- cin >> numsumm;
- bool prov(false);
- while (prov == false)
- {
- realnum++;
- if (numobr(realnum) > numsumm)
- if (numobr(realnum - 1) < numsumm)
- prov = true;
- if (numobr(realnum) == numsumm) prov = true;
- }
- cout << "Находиться в числе: " << realnum << endl ;
- cout << "Цифра :" << longnum(realnum, numobr(realnum) - numsumm) << endl;
- system("pause");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement