RSS Feed

Syndicate content

Il miglioramento del codice.

Submitted by Flavio Bertamini on Wed, 10/06/2009 - 10:26

 Si vuole mostrare in questo articolo come spesso il codice può essere migliorato.

Si sono apportati due miglioramenti: uno logico e uno di scrittura. Analizziamoli brevemente.
             Il primo consiste in una chiusura “logica” relativamente al problema dei numeri piuttosto grandi: la scrittura del codice è molto semplice e consiste nel seguente:

'-------------------------------------------------

'un primo miglioramento

'-------------------------------------------------

If i = 5000 Then

ScomponiinFattoriPrimi2 = "E' un numero troppo grande. Calcolo non riuscito"

Exit Function

End If
Il  codice tiene conto in questo modo della possibilità che si impegni il programma con numeri troppo elevati. Per comodità la function è stata riscritta come ScomponiinFattoriPrimi2.
 
Un secondo canale di miglioramento sta nel prevedere una scrittura più compatta dei fattori: questo viene ottenuto attraverso la creazione di un vettore Esp() di esponenti che inizialmente è posto a valori uguali a 1. Una ulteriore analisi del vettore Sco() permette di accumulare i fattori comuni in un unico coefficiente e di calcolare il corrispondente valore del vettore Esp().
Per comodità didattica la function è stata riscritta come ScomponiinFattoriPrimi3 e sistemata nel modulo4. Si e’ mantenuta pure la vecchia procedura in modo da permettere una rapida analisi del calcolo effettuato, passando dall’una all’altra visualizzazione.

AttachmentSize
NumeriPrimi2.zip61.42 KB

Post new comment

  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img> <style> <center> <p>
  • Lines and paragraphs break automatically.

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Copy the characters (respecting upper/lower case) from the image.

Custom Search