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

Выяснить в каком из данных 2 чисел больше цифр - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.92
vitekfed
0 / 0 / 0
Регистрация: 19.12.2010
Сообщений: 21
20.02.2011, 14:53     Выяснить в каком из данных 2 чисел больше цифр #1
составит программу(функцию) определяющую в каком из данных 2 чисел больше цифр
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.02.2011, 14:53     Выяснить в каком из данных 2 чисел больше цифр
Посмотрите здесь:

C++ Выяснить, в каком из двух массивов больше положительных чисел
C++ Даны два натуральных числа. Выяснить в каком из них больше цифр
Определить, в каком из двух целых чисел больше цифр C++
C++ Даны два натуральных числа. Выяснить, в каком из них сумма цифр больше.
Выяснить в каком из данных натуральных чисел больше цифр C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
20.02.2011, 15:06     Выяснить в каком из данных 2 чисел больше цифр #2
C++
1
2
3
4
5
6
7
8
size_t get_num_length(int num){ 
  for(size_t cnt = 1; num /= 10; ++cnt);
  return cnt;
}
 
void func(int num_1, int num_2){
  std::cout << ( get_num_length(num_1) > get_num_length(num_2)? "First" : "Second" ) << " num large";
}
garkeP91
49 / 49 / 5
Регистрация: 24.10.2010
Сообщений: 131
23.02.2011, 13:24     Выяснить в каком из данных 2 чисел больше цифр #3
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
#include <iostream>
using namespace std;
int n=0,m=0;
void func(int x1, int x2)
{
    do
    {
        ++n;
        x1/=10;
    } while (x1>10);
    do
    {
        ++m;
        x2/=10;
    } while (x2>10);
    if (n>m)
        cout<<"B 1-M 4uCJlE 6OJlbWE ublqoP"<<endl;
    else
        cout<<"BO 2-M 4uCJlE 6OJlbWE ublqoP"<<endl;
}
int main()
{
    func(4566,457345);
    return 0;
}
Dexter
 Аватар для Dexter
284 / 144 / 16
Регистрация: 13.10.2009
Сообщений: 164
23.02.2011, 13:25     Выяснить в каком из данных 2 чисел больше цифр #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "stdafx.h"
#include <iostream>
using namespace std;
void main()
{
    int x,y,res;
    cout<<"Enter x=";
    cin>>x;
    cout<<"Enter y=";
    cin>>y;
    while(x&&y)
    {
        x/=10;
        y/=10;
    }
    if(y==0&&x!=0)cout<<"In x";
    else
    if(x==0&&y!=0)cout<<"In y";
    else
        cout<<"equally";
    system("pause");
}
IrineK
Заблокирован
20.03.2011, 19:40     Выяснить в каком из данных 2 чисел больше цифр #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <string>
using namespace std;
 
int main()
{ string cNum1,cNum2;
    cout<<"N1 = \t";
    cin>>cNum1;
    cout<<"N2 = \t";
    cin>>cNum2;
    if(cNum1.length()>cNum2.length()) cout<<"More digitals in N1";
    else if (cNum1.length()<cNum2.length()) cout<<"More digitals in N2";
    else cout<<"Equal quantity of digitals in N1 and N2";
 
    cin.sync();cin.get();
    return 0;
}
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,689
20.03.2011, 19:41     Выяснить в каком из данных 2 чисел больше цифр #6
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
#include <iostream>
 
int main (void)
{
   int A, B;
   int cnt1=0, cnt2=0;
 
   std::cin >> A >> B;
 
   while (A>0)
   {
       A/=10;
       ++cnt1;
   }
 
   while (B>0)
   {
       B/=10;
       ++cnt2;
   }
 
   if (cnt1 > cnt2) std::cout << "first";
     else if (cnt2 > cnt1) std::cout << "second";
       else std::cout << "first=second";
 
   std::cout << std::endl;
   //exit
   return 0;
}
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
20.03.2011, 21:41     Выяснить в каком из данных 2 чисел больше цифр #7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
 
int count_dig(int first)
{
    int cnt=0;
    while(first)
    {
         ++cnt;
         first/=10;
    }
    return cnt;   
}
 
int main()
{
    int first, second;
    std::cin>>first>>second;
    int fcnt=count_dig(first);
    int scnt=count_dig(second);
    std::cout<<"First is "<< ((fcnt < scnt) ? "less than second" : (fcnt > scnt) ? 
"greater than second" : "equal to second")<<'\n';
    return 0;
}
M128K145
Эксперт C++
 Аватар для M128K145
8272 / 3491 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
20.03.2011, 22:14     Выяснить в каком из данных 2 чисел больше цифр #8
Вот вариант по-медленнее, но проще в реализации
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <cmath>
 
int bigger(int first, int second)
{
    return log10(first) > log10(second) ? first : second;
}
 
int main()
{
    int first, second;
    std::cin >> first >> second;
    std::cout << bigger(first, second);
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.03.2011, 22:16     Выяснить в каком из данных 2 чисел больше цифр
Еще ссылки по теме:

Определить в каком из множеств встречается больше цифр C++
C++ Определить в каком из двух чисел больше цифр

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

Или воспользуйтесь поиском по форуму:
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
20.03.2011, 22:16     Выяснить в каком из данных 2 чисел больше цифр #9
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
#include <math.h>
 
#define MAX(a, b) ((a) > (b) ? (a) : (b))
#define MIN(a, b) ((a) < (b) ? (a) : (b))
#define DIGITS(a) (floor(log10(a)) + 1)
 
int main(void){
    int a, b;
    
    printf("first: ");
    scanf("%d", &a);
    printf("second: ");
    scanf("%d", &b);
    
    if ( DIGITS(a) == DIGITS(b) )
        printf("Both numbers have same number of digits.\n");
    else
        printf("%d have more digits then %d\n", ( MAX(DIGITS(a), DIGITS(b)) == DIGITS(a) ) ? a : b, 
            ( MIN(DIGITS(a), DIGITS(b)) == DIGITS(a) ) ? a : b);
    
    return 0;
}
опоздал
Yandex
Объявления
20.03.2011, 22:16     Выяснить в каком из данных 2 чисел больше цифр
Ответ Создать тему
Опции темы

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