Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.09.2015, 17:46   #1
Анатолий666
Пользователь
 
Регистрация: 27.11.2014
Сообщений: 10
По умолчанию Удалить из записи числа все вхождения последней цифры

Дано натуральное число n. Удалить из записи числа все вхождения последней цифры. Подсчитать количество оставившихся цифр в изображении числа. Например, для числа 354733 результат - 547
Код:
#include <stdio.h>
int main()
{
    int  n,kl,c,w=0,p,f;
    for(;;){
    printf("Введите натуральное число:\n");
    scanf("%d", &n);
        if(n<=0) break;
        kl=0;
        f=n%10;
        for (c=0,p=1; n>0; n/=10, p*=10) {
            w=n%10;
            kl++;
            if(w!=f)
                c+=w*p;
        }
        printf("Удаление из списка числа:\n%d\n",c);
        printf("Количество оставшиеся цифр:\n%d\n", kl);
    }
    return 0;
}
Ребят, подскажите, что нужно добавить или поменять?
Анатолий666 вне форума Ответить с цитированием
Старый 16.09.2015, 18:31   #2
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,088
По умолчанию

Бесконечный for мне непонятен вообще, я бы выкинул его.
Строку
Код:
kl++;
нужно засунуть в тело
Код:
if(w!=f)
{
  c+=w*p;
  kl++;
}
а то сейчас считает просто количество чисел.
В остальном на первый взгляд всё нормально.
pu4koff вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Необходимо найти самое длинное слово и удалить все его вхождения Julia1 Помощь студентам 3 30.06.2014 22:40
C++: Удалить из слова предыдущие вхождения последней буквы Solidera Помощь студентам 1 22.10.2013 08:25
С++ Получить все четырехзначные числа, в записи которых встречаются только цифры 0,2,3,7. Anya She Помощь студентам 1 18.12.2012 21:14
VisualBasic.Исключить из числа цифры, стоящие между первой и последней цифрой числа. ride013 Помощь студентам 0 03.05.2011 21:20
Удалить из строкового значения все вхождения заданного символа. Delphi Saka Помощь студентам 10 08.03.2010 01:22