Re: [C -code] massimo comune divisore e minimo comune multiplo

Messaggioda Adrianorto » 30/09/2020, 14:12

Questo dovrebbe andre un po' meglio

Codice:
#include <stdio.h>

typedef
    struct razionale{
      int num;
      int den;
   } raz;


///k e' inizializzato ad uno numer a num
/// riduci_MCD ,anche se ancora non trova la frazione ridotta ai minimi termini , troverebbe MCD tra due interi : num e den

raz* riduci_MCD (raz* p, int k,int c,int numer)///numer dev'essere fissato una volta per tutte perche' se c'e' MCD i potra' altrimenti valere zero
{
    int n=0,d=0, i=1,fattoreMCD=1;
    n= p->num;
    d = p->den;
    i = part_int(numer/k);
   
    if (c> 0  ) { printf("\n Bene c'e un MCD diverso dall'unita' MCD vale :%d, il numero di iterazioni vale :%d \n",part_int(numer/(k-1)),k);return p;}

   if(i*i<n ){printf("\n Bene MCD vale %d il numero di iterazioni :%d\n",fattoreMCD ,k);return p; }

    if (n<=i*i )
    {

        if( n % i ==0  )

        {
            if( d % i ==0  )

            {
                n = (n /i) ; d= (d/i) ;
                p->num = n;
                p->den = d;
                c++;
                }
            if( d % k ==0  )
            {
                n = (n /k) ; d= (d/k) ;
                p->num = n;
                p->den = d;
                fattoreMCD = k * fattoreMCD ;//Allora opportunament il fattore parta da uno
            }
    }
   // else printf("\nBene proviamo con %d\n",i);
    }
    riduci_MCD ( p, k+1,c,numer );
     return p;
}
Adrianorto
Starting Member
Starting Member
 
Messaggio: 17 di 38
Iscritto il: 04/08/2014, 16:40

Re: [C -code] massimo comune divisore e minimo comune multiplo

Messaggioda vict85 » 30/09/2020, 15:08

axpgn ha scritto:@vict85
Necroposting :D


:roll: Hai ragione... non avevo notato...

@Andrianorto. Sarebbe meglio se aprissi una discussione a parte. Insomma, nel caso tu abbia domande. Infatti l'autore della discussione dubito si metterà a leggere questa discussione dopo 8 anni.
vict85
Moderatore
Moderatore
 
Messaggio: 10220 di 19253
Iscritto il: 16/01/2008, 00:13
Località: Berlin

Precedente

Torna a Informatica

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite