Даны целое число k (1amp;lt;=kamp;lt;=252) и последовательность цифр 505152....250, в которой

Даны целое число k (1lt;=klt;=252) и последовательность цифр 505152....250, в которой выписаны попорядку все натуральные числа от 50 до 250. Необходимо.найти k-ую цифру.помогите перевести с языка Си ++ на СИ
include "stdafx.h"
include
include

using namespace std;

int _tmain(int argc, _TCHAR* argv[])

setlocale(LC_ALL, "RUS");
const int NumSize = 201;
int nums[NumSize] = 0;
bool q = false;
cout lt;lt; "Введите число k от 1 до 252: ";
int k;
cin gt;gt; k;

for(int i = 0; i lt; NumSize; ++i)
nums[i] = 50+i;

cout lt;lt; "Последовательность: \n";
for(int i = 0; i lt; NumSize; ++i)
cout lt;lt; nums[i] lt;lt; ' ';
for(int i = 0; i lt; NumSize; ++i)

if(k == nums[i])

cout lt;lt; "\nЧисло k подходит числу с номером " lt;lt; i + 1 lt;lt; " в последовательности." lt;lt; endl;
q = true;



if(!q)
cout lt;lt; "\nЧисло k в последовательности не найдено." lt;lt; endl;
system("pause");
return 0;

Задать свой вопрос
Милена Рахмедова
Для вас необходимо отыскать ЦИФРУ, а не число, потому, эта программка написана не верно.
1 ответ
includelt;stdio.hgt;
includelt;conio.hgt;

int main()
    int n=0,i=50,k,dgt=0;
    printf("k = ");  
    scanf("%i",amp;k); 
    while (nlt;k)  
    if (igt;=100) n+=3;
    else n+=2;
    i++;
   
    i--;
    if (n==k) dgt=i % 10; 
    else
       if (n-1==k) dgt=(i/10) % 10;
       if (n-2==k) dgt=i/100;
    ;    
    printf("\n digit = %i",dgt);
    printf("\n number = %i",i);

    getch();
    return(0);


Валентина Млиник
тут последовательность не ограничивается числом 250 подскажите как это сделать
Алексей Таврин
До 999 (т.е. трехзначных чисел) программка будет работать без конфигураций в программке.
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт