C++
Кто их программистов может помочь написать задачу на C++ :
Дано число. Отбросить в нем все цифры, стоящие левее самой правой единицы.
Кто первый напишет, код правильный, тому 10 усд скину на пс или на Нетеллер.
Спасибо
Кто их программистов может помочь написать задачу на C++ :
Дано число. Отбросить в нем все цифры, стоящие левее самой правой единицы.
Кто первый напишет, код правильный, тому 10 усд скину на пс или на Нетеллер.
Спасибо
Все комментарии - 9
Sanchez
ну как то так, писал в спешке, оптимируй сам если нужно
#include <iostream>
#include <cstdlib>
#include <string>
#include <math.h>
#include <stdlib.h>
using namespace std;
int main()
{
int i;
int n;
int c;
int z = 1;
int res;
cout << «Please enter an integer value: «;
cin >> i;
c = i;
while (c > 9)
{
n = fmod(c, 10);
c = c / 10;
z*= 10;
if (n == 1)
{
res = i — c*z;
break;
}
}
cout << res << endl;
system(«pause»);
return 0;
}
Alexx1965
Мне просто нужен имено такой код , по которому написал я .
Sanchez
Результат то будет тот же, что по твоему, что по моему )
Alexx1965
Надо по другому. Вводишь в консоле число к прмеру 54132 программа прогоняет его так : делит число 54132 на 10 видит остаток 2 не является 1 ,следовательно дальше гонит уже число 5413 делит его на 10 остаток 3 не является 1 , 541 на 10 остаток 1 = 1 программа выводит 132.
Без библиотек просто do while if else
Sanchez
Вот проверил, держи
Вариант выше, включает в себя самую правую еденицу, если надо без нее, делай так:
PPL
Хренасе программисты зарабатывают за пару минут!
Sanchez
CString s;
s.formatAppend(«%u», numVar);
s.substring(s.lastIndexOf(«1»));
как то так, проверить не на чем в данный момент
Alexx1965
Без массива надо, просто в цикле. Задача легкая. Просто не знаю как её записать правильно по синтексесу с++
najs
Конвертишь в символьный массив, дальше фором проходишь по нему пока не найдешь единицу, дальше конвертишь часть массива начиная от единицы обратно в интеджер.
Что сложного не могу понять?