Forum
  
    >> 
    
      Programmazione Python
    
  
    >> 
    
      Calcolo scientifico
    
  
  >>
  
    Fattorizzazione numero
  
  
  
  
  
  
  
   
  
    
    
    
      
      
  
Pagina: 1
  
Esegui il login per scrivere una risposta.
      
  
      
    Pagina: 1
| 
          
Scritto da leopoldoleo  | 
        
          
 2016-01-15 18:38:23 - Fattorizzazione numero 
  
 | 
      
| 
          
          
             Ciao a tutti,
 
          
          
            
          
          
        Sto cercando di scrivere un programma semplicissimo, usando un ciclo while e senza liste, che fattorizzi un numero dato es: >>>fattorizzazione(20) 2 2 5 Idee?  | 
      |
| 
          
Scritto da Daniele aka Palmux ![]()  | 
        
          
 2016-02-05 18:55:29 - Re: Fattorizzazione numero 
  
 | 
      
| 
          
          
             Puoi provare con una cosa simile:
 
          
          
            
          
          
        def prime_factors(n):
    i = 2
    factors = []
    while i * i <= n:
        if n % i:
            i += 1
        else:
            n //= i
            factors.append(i)
    if n > 1:
        factors.append(n)
    return factors
Ciao.
Daniele P.S. Il codice non è mio, viene da qui. --- Ultima modifica di Daniele aka Palmux in data 2016-02-05 18:57:00 ---  | 
      |
| 
          
Scritto da Orsogrizzly ![]()  | 
        
          
 2016-02-06 00:13:44 - Re: Fattorizzazione numero 
  
 | 
      
| 
          
          
             senza liste   
          
          
            
          
          
        può andare così: N=input("Dammi il valore di N:")
fattore=str(N)+"=1"
d=2
while N>=d:
	if N%d == 0:
		fattore=fattore+'*'+str(d)
		N=N/d
	else:
		d=d+1
	
print fattore
 | 
      
Pagina: 1
Esegui il login per scrivere una risposta.
  

