Hirdetés

Új hozzászólás Aktív témák

  • DEV_NULL

    őstag

    válasz kovisoft #5995 üzenetére

    Köszi a segítséget!

    Mivel sehogy sem akart működni egy teljesen új, sokkal egyszerűbb megközelítésből oldottam meg végül:

    #include <stdio.h>
     
     
    typedef struct
    {
        unsigned int tomb[50];
        unsigned int szam, db;
        unsigned int meret, meret2;
    } Nehez;
     
     
    Nehez meret()
    {
        Nehez hazi;
        hazi.meret2=0;
        hazi.db=0;
     
        scanf("%u", &hazi.meret);
     
        return hazi;
    }
     
    Nehez beker()
    {
        Nehez hazi;
        unsigned int h, a;
     
        for(h=0; h<hazi.meret; h++)
            {
            scanf("%u", &hazi.szam);
            a=0;
            while(a<h && hazi.szam!=hazi.tomb[a])
                {
                a++;
                }
            if(a==h)
                {
                hazi.tomb[hazi.meret2]=hazi.szam;
                hazi.meret2++;
                }
            }
     
        return hazi;
    }
     
    Nehez rendez(Nehez hazi)
    {
        unsigned int h, a;
     
        for(h=0; h<hazi.meret2; h++)
            {
            for(a=h+1; a<hazi.meret2; a++)
                {
                if(hazi.tomb[h]>hazi.tomb[a])
                    {
                    hazi.szam=hazi.tomb[a];
                    hazi.tomb[a]=hazi.tomb[h];
                    hazi.tomb[h]=hazi.szam;
                    }
                }
            }
     
        return hazi;
    }
     
    Nehez szamol(Nehez hazi)
    {
        unsigned int h, a, z, i;
     
        for(h=0; h<hazi.meret2; h++)
            {
            for(a=h+1; a<hazi.meret2; a++)
                {
                for(z=a+1; z<hazi.meret2; z++)
                    {
                    for(i=z+1; i<hazi.meret2; i++)
                        {
                        if(hazi.tomb[h]+hazi.tomb[i]==hazi.tomb[a]+hazi.tomb[z])
                            {
                            hazi.db++;
                            }
                        }
                    }
                }
            }
     
        return hazi;
    }
     
    void kiir(Nehez hazi)
    {
        printf("%u", hazi.db);
    }
     
     
     
    int main()
    {
        Nehez hazi;
     
        hazi=meret();
        hazi=beker();
     
        hazi=rendez(hazi);
        hazi=szamol(hazi);
     
        kiir(hazi);
     
        return 0;
    }


Új hozzászólás Aktív témák