Friday, April 10, 2015

Bài 53

Bài 53: Hãy đếm số lượng chữ số lớn nhất của số nguyên dương n

//========================================
//Cách 1

#include <stdio.h>
#include <conio.h>
#include <math.h>

void main()
{
    int n;
    scanf("%d", &n);
    n = abs(n);
    int lc = n%10;
    int t = n;
    for(int t=n; t!=0; t=t/10)
    {
        int dv = t%10;
        if (dv > lc)
        {
            lc = dv;
        }
    }
    int dem = 0;
    for(int t=n; t!=0; t=t/10)
    {
        int dv = t%10;
        if (dv == lc)
        {
            dem++;
        }
    }
    printf("%d", dem);
}

//========================================
//Cách 2
/*
#include <stdio.h>
#include <conio.h>
#include <math.h>

int LonNhat(int);
int DemLonNhat(int,int);
void main()
{
    int n;
    scanf("%d", &n);
    int max = LonNhat(n);
    int kq = DemLonNhat(max,n);
    printf("%d", kq);
}

int LonNhat(int k)
{
    k = abs(k);
    int dv = k%10;
    int lc = dv;
    for(int t=k; t!=0; t=t/10)
    {
        dv = t%10;
        if (dv > lc)
        {
            lc = dv;
        }
    }
    return lc;
}

int DemLonNhat(int x, int k)
{
    int dem = 0;
    for (int t=k; t!=0; t=t/10)
    {
        int dv = t%10;
        if (dv == x)
        {
            dem++;
        }
    }
    return dem;
}
*/

No comments:

Post a Comment