|
|
|
| Помогите решить новичку задачку, пожалуйста!
Нужно удалить из введенного числавсе цифры, равные N (N вводится с клавиатуры). | |
|
|
|
|
|
|
|
для: molodzo
(28.06.2007 в 20:49)
| | типа 4556924
-> 4
55692 | |
|
|
|
|
|
|
|
для: bronenos
(29.06.2007 в 11:46)
| | Я конечно не сильно силён, даже можно сказать слабо. Но чтобы исключить из числа, число N, нужно узнать каждую цифру того числа. Правильно?
А как её узнать?
1. Записать числа в строку char и работать как бы с массивом
2. Нужно заранее знать сколько в числе цифр. | |
|
|
|
|
|
|
|
для: Fddd
(29.06.2007 в 12:33)
| | Если делать так, как понял bronenos (и я), то вот что выйдет:
#include <iostream>
#include <string>
using namespace std;
void main()
{
string number;
string erase;
size_t offset;
cout << "Введите число:";
cin >> number;
cout << "Введите цифру, которую нужно удалить:";
// ! ОСТОРОЖНО !
// Пользователь может ввести не цифру, а число или,
// что еще хуже, букву, хотя прога не рухнет
cin >> erase;
while( (offset = number.find(erase)) != -1)
{
number.erase(offset,1);
}
cout << "Итог: " << number << endl;
return;
}
|
| |
|
|
|