Форум программистов, компьютерный форум CyberForum.ru

Разбить число на цифры при помощи цикла - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 46, средняя оценка - 4.72
HelloWorld56
5 / 5 / 1
Регистрация: 29.03.2012
Сообщений: 62
01.05.2012, 23:08     Разбить число на цифры при помощи цикла #1
Как разбивать число на цифры, когда заведомо не известно сколько в этом числе будет цифр. Циклом?

Задание:
Пользователь вводит с клавиатуры число - программа должна показать сколько в данном числе цифр. Число вводится целиком в одну переменную.

Примечание: Например, пользователь ввел число 12345. На экране должно появиться сообщение о том, что в числе 5 цифр.


Когда заведомо известно число цифр ( например в условии говорится, что пользователь вводит пятизначное число ) я могу разбить число на цифры. А так не знаю.

Подскажите
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.05.2012, 23:08     Разбить число на цифры при помощи цикла
Посмотрите здесь:

ввести нзначное число! Разбить на цифры и упорядочить по возрастанию. C++
В десятичной записи числа 42*4* пропущены 2 цифры. Определите эти цифры, если известно, что число кратно 72. C++
C++ Разбить число на цифры, каждую цифру записать в ячейку массива
C++ Ввести с клавиатуры трехзначное число и найти произведение первой и второй цифры. А также определить четность третей цифры
При помощи цикла показать на экран календарь текущего месяца. C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alex_x_x
бжни
 Аватар для alex_x_x
2441 / 1646 / 84
Регистрация: 14.05.2009
Сообщений: 7,163
01.05.2012, 23:22     Разбить число на цифры при помощи цикла #2
C++
1
2
3
4
5
6
7
8
9
10
#include <cstdio>
#include <cstdlib>
#include <cctype>
 
int main()
{
  size_t i;
  for (i=0 ; isdigit(getchar()) ; ++i) { }
  printf ("%d\n", i);
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <cstdlib>
 
int main() {
  int value, i;
  if (!(std::cin >> value)) {
    std::cerr << "not a number" << std::endl;
    return EXIT_FAILURE;
  }
 
  for (i=1 ; value /= 10 ; ++i) {}
 
  std::cout << "number has " << i << ((i > 1) ? " digits" : " digit") << std::endl;
}
HelloWorld56
5 / 5 / 1
Регистрация: 29.03.2012
Сообщений: 62
01.05.2012, 23:31  [ТС]     Разбить число на цифры при помощи цикла #3
Цитата Сообщение от alex_x_x Посмотреть сообщение
C++
1
  size_t i;
size_t это тип данных?
alex_x_x
бжни
 Аватар для alex_x_x
2441 / 1646 / 84
Регистрация: 14.05.2009
Сообщений: 7,163
01.05.2012, 23:34     Разбить число на цифры при помощи цикла #4
как видите
osrcproject
3 / 3 / 0
Регистрация: 01.05.2012
Сообщений: 14
01.05.2012, 23:36     Разбить число на цифры при помощи цикла #5
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include "stdio.h"
int main(int argc, char **argv)
{
    int x;
    scanf("%d",&x);
    int i;
    for(i = 1; x>=10; ++i){
        printf("%d ",x%10);
        x/=10;
    }
    printf("%d ", x%10);
    printf("\nin %d %d digit\n",x,i);
    return 0;
}
Yandex
Объявления
01.05.2012, 23:36     Разбить число на цифры при помощи цикла
Ответ Создать тему
Опции темы

Текущее время: 00:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru