Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/35: Рейтинг темы: голосов - 35, средняя оценка - 4.60
2 / 2 / 2
Регистрация: 17.12.2013
Сообщений: 148

Удалить из записи целого числа цифры 0 и 5

04.09.2014, 11:20. Показов 6737. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
не получается справиться с одной задачей

Дано натуральное число n (n<=9999). Выбросить из записи целого числа n цифры 0 и 5, оставив прежним порядок остальных цифр. Если все цифры числа подлежат отбрасыванию, тогда заменить его на -1. Например, из числа 5905 должно получиться 9, из числа 5055 должно получиться -1.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
#include <stdio.h>
#include <math.h>
#include <cstdlib>
#include <iostream.h>
#include <conio.h>
#pragma argsused
int main()
     {
int n,a=0,b=5,c;
cout<<"eto ne 4johznachnoe chislo.Povtorite vvod n.";
cin>>n;
if (n<=9999)
while (n>=1000 && n<=9999);
do
 n=n/10;
   (b==b+n*a)
a=a*10;
n=n / 10;
while (n=0);
cin>>b;
{
        return 0;
}}
//---------------------------------------------------------------------------
подскажите плиз что да как и где исправить...
PS я плохо разбираюсь в данном языке...
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.09.2014, 11:20
Ответы с готовыми решениями:

Из целого числа удалить все цифры 3 и 6.
Пользователь вводит любое целое число. Необходимо из этого целого числа удалить все цифры 3 и 6 и вывести обратно на экран.

Циклы: из целого числа удалить все цифры 3 и 6
Задание 3: Пользователь вводит любое целое число. Необходимо из этого целого числа удалить все цифры 3 и 6 и вывести обратно на экран.

Из заданного целого числа удалить цифры 3 и 6 и вывести обратно на экран
Добрый день! Помогите ,пожалуйста, разобраться с задачей / След условие : Пользователь вводит любое целое число. Необходимо из этого целого...

5
Котовчанин
942 / 482 / 200
Регистрация: 16.02.2010
Сообщений: 3,338
Записей в блоге: 35
04.09.2014, 11:36
Лучший ответ Сообщение было отмечено wolf0022 как решение

Решение

Много ошибок. Для начала
C++
1
2
cout<<"eto ne 4johznachnoe chislo.Povtorite vvod n.";
cin>>n;
Вы сначала пишете, что это не четырёхзначное число, а потом только считываете его... Не надо так.

Добавлено через 11 минут
Ладно, проще по новой написать.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <iostream>
#include <string>
#include <sstream>
 
int enter_num(int num)
{
    if (num > 10000 || num < 1000)
    {
        std::cout<<"Это не четырёхзначное число. Потворите ввод.\n";
        std::cin>>num;
        enter_num(num);
    }
    else return num;
}
 
int main()
{
    setlocale(LC_ALL, "Russian");
    
    int n;
    std::cin>>n;
    n = enter_num(n);
 
    std::stringstream ss;
    ss << n;
    std::string str = ss.str();
    std::string res;
    for (int i = 0; i < str.size(); ++i)
        if (str[i] != '0' && str[i] != '5')
            res.push_back(str[i]);
 
    std::cout << std::endl;
    
    if (res.size() == 0) std::cout << "-1";
    else
        for (int i = 0; i < res.size(); ++i)
            std::cout << res[i];
 
 
    system("pause>>null");
}
1
2 / 2 / 2
Регистрация: 17.12.2013
Сообщений: 148
04.09.2014, 13:26  [ТС]
спасибо )
0
Котовчанин
942 / 482 / 200
Регистрация: 16.02.2010
Сообщений: 3,338
Записей в блоге: 35
04.09.2014, 14:01
Цитата Сообщение от wolf0022 Посмотреть сообщение
спасибо )
0
 Аватар для worldown
189 / 177 / 111
Регистрация: 22.06.2009
Сообщений: 533
04.09.2014, 18:04
А еще так можно, без перевода в строку, и с рекурсией..
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <iostream>
using namespace std;
 
 
void num(int n, int* d, int &i);
 
int main() {
    int n;
    int* d = new int;
    int i = 0;
    do {
    cout<<"Enter a number from 1 to 9999: ";
    cin>>n;
    system("cls");
    }while(n < 0 || n > 9999);
    num(n,d,i);
    if (i == 0) {
    cout << -1;
    }
    else
    while (i--) {
        cout<<d[i];
    }
    cout<<endl;
    system("pause");
    return 0;
}
void num(int n, int* d, int &i) {
    if(n == 0) return ;
    int c = n - ((n / 10)*10);
    if( c != 5 && c != 0) {
    *d = c;
    i++;
    d++;
    }
    num(n / 10, d,i);
}
0
2 / 2 / 2
Регистрация: 17.12.2013
Сообщений: 148
07.09.2014, 17:23  [ТС]
не смогу это объяснить училки)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.09.2014, 17:23
Помогаю со студенческими работами здесь

Напечатать в обратном порядке цифры десятичной записи целого не минусового числа N.
Помогите с программой Рекурсивно описать процедуру RevPrint (N), которая печатает в обратном порядке цифры десятичной записи целого не...

Удалить из записи десятичного числа цифры 3 и 7
Пусть дано натуральное число N. Удалите из записи этого числа цифры 3 и 7, оставив прежним порядок остальных цифр. Например, из числа 3 171...

В десятичной записи числа удалить цифры повторяющиеся нечетное количество раз
Удаляет в записи числа цифры, повторяющиеся нечетное количество раз, получая новое число; В Си ++ третий день,помогите пожалуйста.

Функция: удалить из записи числа цифры 3 и 7, оставляя порядок оставшихся цифр прежним
Разработать функцию, которая преобразует целое число по правилу: удаляет из записи этого числа цифры 3 и 7, оставляя порядок оставшихся...

Дано четырехзначное натуральное число. Удалить из записи этого числа все чётные цифры и цифру 0
Дано четырехзначное натуральное число. Удалить из записи этого числа все чётные цифры и цифру 0. По возможности не решать задачу а...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru