1. Здраво и добредојдовте на форумот на IT.mk.

    Доколку сеуште не сте дел од најголемата заедница на ИТ професионалци и ентузијасти во Македонија, можете бесплатно да се - процесот нема да ви одземе повеќе од 2-3 минути, а за полесна регистрација овозможивме и регистрирање со Facebook и Steam.
    Сокриј

Тотално различни броеви

Дискусија во форумот 'C // C++' започната од thecursedclown, 12 Јануари 2018.

  1. thecursedclown

    thecursedclown
    Intern

    43
    11
    24 ноември 2017
    Машко
    Bi sakal li nekoj da mi ja objasni logikata pozadi izdvojuvanje na cifri i sporeduvanje na istite bez koristenje na matrica ili niza? Nema dovolno info na net
    Zadaca:
    Тотално различни броеви
    Од стандарден влез се внесуваат два цели броја N и Х.

    Да се најде најблискот број помал од N коj е тотално различен од бројот Х.

    Еден број е тотално различен од друг ако и само ако во него не се појавува ниту една од цифрите на другиот број.

    Задачата да се реши без употреба на низи и матрици.\
    #include <stdio.h>
    #include <stdlib.h>
    int main() {
    int n,x,digit1=0,digit2=0,digit3=0,digit4=0,digit5=0,digit6=0,digit7=0,brojac=0;
    scanf("%d%d",&n,&x);
    digit1=n/100;
    digit4=x/100;
    digit2=n%10;
    digit5=x/10;
    digit5%=10;
    digit3=n%10;
    digit6=x%10;
    while(digit1==digit4||digit2==digit5||digit3==digit6){
    digit1=n/100;
    digit4=x/100;
    digit2=n%10;
    digit5=x/10;
    digit5%=10;
    digit3=n%10;
    digit6=x%10;
    n--;
    }
    printf("%d",n);
    return 0;
    }
     
  2. Kajsibebraat

    Kajsibebraat
    On your way to fame

    1,433
    851
    1 Април 2012
    Машко
    Се чува копија од X, и секоја цифра од X се споредува со секоја цифра од n-1, n-2... се додека не се најде број кој го задоволува условот.
    Код:
    #include <stdio.h>
    #include <stdlib.h>
    
    int main()
    {
        int n, x;
        scanf("%d %d",&n, &x);
        int kopija = x;
        int totalno;
    
        for (int i = n-1; i>0; i--)
        {
            totalno = 0;
            x = kopija;
    
            while (x>0)
            {
                int b = i;
                int cifra = x%10;
                x/=10;
                while (b>0)
                {
                    int a = b%10;
                        b /= 10;
                        if (a == cifra)
                        {
                            totalno = 1;
                        }
    
    
                }
            }
            if (totalno == 0)
            {
                printf("%d", i);
                break;
            }
        }
    
        if (totalno != 0)
                printf("0");
        return 0;
    }
    
     

Сподели

Вчитување...