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

Найти количество цифр в натуральном числе N, вводимом с клавиатуры. Borland C++ - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.81
mustang01
1 / 1 / 0
Регистрация: 10.05.2012
Сообщений: 9
11.05.2012, 03:27     Найти количество цифр в натуральном числе N, вводимом с клавиатуры. Borland C++ #1
Нужна помощь! Максимальная длинна числа при котором правильно считает 10.
Как сделать так, чтоб программа считала количество цифр больше 10???
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
/*       Задание 3.100
Найти количество цифр в натуральном числе N, вводимом с клавиатуры.*/
 
#include <stdio.h>
#include <conio.h>
 
void main()
 
{
 clrscr();
 long int n;// число N
 unsigned k=0;// количество цифр
 printf("Введите число: ");// подсказка для ввода
 scanf("%ld",&n);// запись N
 if(n==0)// 0 тоже цифра
 k=1;
 while(n)// считаем сколько раз поделиться на 10
    {
     n/=10;
     k++;
    }
 printf("В этом числе %u цифр",k);// выводим количество цифр
 printf("\n=Нажмите любую клавишу=");
 getch();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.05.2012, 03:27     Найти количество цифр в натуральном числе N, вводимом с клавиатуры. Borland C++
Посмотрите здесь:

C++ С++. Подсчитать количество цифр в натуральном числе.
C++ Определить кол-во различных цифр в натуральном числе!
Найти количество и сумму цифр в введенном натуральном числе C++
C++ Определить количество и сумму цифр в введенном натуральном числе. Введенное натуральное число представляется как единственное число, расположив цифры
C++ Подсчитать количество цифр в заданном натуральном числе.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
11.05.2012, 03:30     Найти количество цифр в натуральном числе N, вводимом с клавиатуры. Borland C++ #2
C++
1
2
3
4
unsigned int k = 1; //1 потому что в числе хотя бы одна цифра
 
while ( number /= 10 )
   k++;
mustang01
1 / 1 / 0
Регистрация: 10.05.2012
Сообщений: 9
11.05.2012, 03:35  [ТС]     Найти количество цифр в натуральном числе N, вводимом с клавиатуры. Borland C++ #3
Цитата Сообщение от Toshkarik Посмотреть сообщение
C++
1
unsigned int k = 1; //1 потому что в числе хотя бы одна цифра
Если так, то подсчет цифр на одну больше... Пробовал.
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
11.05.2012, 03:39     Найти количество цифр в натуральном числе N, вводимом с клавиатуры. Borland C++ #4
В моем коде все подсчитывается правильно.
mustang01
1 / 1 / 0
Регистрация: 10.05.2012
Сообщений: 9
11.05.2012, 03:42  [ТС]     Найти количество цифр в натуральном числе N, вводимом с клавиатуры. Borland C++ #5
Цитата Сообщение от Toshkarik Посмотреть сообщение
В моем коде все подсчитывается правильно.
Да проверил по твоему все считает верно. НО! не более 10 цифр
123456789012345 пишет 10 цифр в числе...
http://liveworkspace.org/code/5d2e38...7148818e51c405
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
11.05.2012, 03:57     Найти количество цифр в натуральном числе N, вводимом с клавиатуры. Borland C++ #6
C
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
#include <string.h>
 
int main() {
   char str[ 256 ];
   
   scanf( "%s", str );
      
   printf( "%d", strlen( str ));
   
   return 0;
}
Добавлено через 1 минуту
Читайте о размере основных типов. В частности для Вашего компилятора. Это пример со строкой.
mustang01
1 / 1 / 0
Регистрация: 10.05.2012
Сообщений: 9
11.05.2012, 04:10  [ТС]     Найти количество цифр в натуральном числе N, вводимом с клавиатуры. Borland C++ #7
Голова!!! Все работает на УРА!!! Только чуток подправил. Не работала на Return...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
#include <string.h>
#include <conio.h> 
void main()
 
{
   clrscr();
   char str[ 256 ];
   printf( "Введите число:");
   scanf( "%s", str );
      
   printf( "В этом числе %d цифр.", strlen( str ));
   
   getch();
   
}
Infinity3000
 Аватар для Infinity3000
1057 / 576 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
11.05.2012, 04:12     Найти количество цифр в натуральном числе N, вводимом с клавиатуры. Borland C++ #8
Цитата Сообщение от mustang01 Посмотреть сообщение
Не работала на Return...
потому что главная функция у Вас void, что вообще не логично!
Соответсвенно она не чего не возвращает!
C++
1
2
3
4
int main()
{
    return 0;
}
mustang01
1 / 1 / 0
Регистрация: 10.05.2012
Сообщений: 9
11.05.2012, 04:16  [ТС]     Найти количество цифр в натуральном числе N, вводимом с клавиатуры. Borland C++ #9
Цитата Сообщение от Infinity3000 Посмотреть сообщение
потому что главная функция у Вас void, что вообще не логично!
Соответсвенно она не чего не возвращает!
C++
1
2
3
4
int main()
{
    return 0;
}
нет void это я подправил. До этого было int main().
Все разобрался спасибо за помощь!
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
11.05.2012, 04:18     Найти количество цифр в натуральном числе N, вводимом с клавиатуры. Borland C++ #10
int main() и должно быть.
Infinity3000
 Аватар для Infinity3000
1057 / 576 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
11.05.2012, 04:22     Найти количество цифр в натуральном числе N, вводимом с клавиатуры. Borland C++ #11
Цитата Сообщение от mustang01 Посмотреть сообщение
нет void это я подправил. До этого было int main().
Все разобрался спасибо за помощь!

Стандарт C++ требует, чтобы функция main() возвращала тип int. Программа, которая имеет другой тип возвращаемого значения функции main(), не соответствует стандарту C++.

Стандарт не говорит о том, что на самом деле означает возвращаемое значение функции main(). Традиционно оно интерпретируется как код возврата программы. Стандарт гарантирует, что возвращение 0 из функции main() показывает, что программа была завершена успешно.

Завершение программы на C++ с ошибкой традиционно обозначается путём возврата ненулевого значения.
mustang01
1 / 1 / 0
Регистрация: 10.05.2012
Сообщений: 9
11.05.2012, 04:23  [ТС]     Найти количество цифр в натуральном числе N, вводимом с клавиатуры. Borland C++ #12
Цитата Сообщение от Toshkarik Посмотреть сообщение
int main() и должно быть.
Вся беда, что надо было окно результата сохранить.
Не мог функцию getch() подключить.
Infinity3000
 Аватар для Infinity3000
1057 / 576 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
11.05.2012, 04:27     Найти количество цифр в натуральном числе N, вводимом с клавиатуры. Borland C++ #13
Цитата Сообщение от mustang01 Посмотреть сообщение
Вся беда, что надо было окно результата сохранить.
Не мог функцию getch() подключить.
для нее нужна библиотека

C++
1
#include <conio.h>
Добавлено через 1 минуту
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>
#include <string.h>
#include <conio.h> 
int main()
{
   
   char str[ 256 ];
   printf( "Введите число:");
   scanf( "%s", str );
      
   printf( "В этом числе %d цифр.", strlen( str ));
   
   getch();
   return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.05.2012, 04:35     Найти количество цифр в натуральном числе N, вводимом с клавиатуры. Borland C++
Еще ссылки по теме:

Количество четных цифр в натуральном числе C++
C++ Напишите функцию, которая вычисляет сумму цифр в заданном натуральном числе
Найти количество цифр в заданном натуральном числе C++

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

Или воспользуйтесь поиском по форуму:
mustang01
1 / 1 / 0
Регистрация: 10.05.2012
Сообщений: 9
11.05.2012, 04:35  [ТС]     Найти количество цифр в натуральном числе N, вводимом с клавиатуры. Borland C++ #14
Цитата Сообщение от Infinity3000 Посмотреть сообщение
для нее нужна библиотека

C++
1
#include <conio.h>
Да, это я уже спать хочу... полчетвертого однако...
ЗЫ Хороший у вас форум... Я в шоке если честно от того как люди помогают...
Yandex
Объявления
11.05.2012, 04:35     Найти количество цифр в натуральном числе N, вводимом с клавиатуры. Borland C++
Ответ Создать тему
Опции темы

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