18.08.2013 Views

Dalla A alla Z passando per C - Robotica

Dalla A alla Z passando per C - Robotica

Dalla A alla Z passando per C - Robotica

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

2.5.1 Prodotto di matrici<br />

Problema: calcolare il prodotto di due matrici A e B di dimensione rispettivamente m × n e<br />

n × p.<br />

Dati di ingresso: gli m·n valori che compongono A, che saranno indicati con aij; gli n·p valori<br />

che compongono B, che saranno indicati con bij.<br />

Pre-condizione: deve essere verificato che il numero di colonne di A deve essere uguale al<br />

numero di righe di B.<br />

Dati di uscita: una matrice C di dimensione m × p.<br />

Specifica dell’algoritmo:<br />

• l’elemento cij della matrice C viene calcolato come<br />

cij =<br />

n<br />

aikbkj = ai1b1j + ai2b2j + . . . + ainbnj<br />

k=1<br />

2.5.2 Calcolo del massimo comune divisore<br />

Problema: calcolare il massimo comune divisore di due numeri interi.<br />

Dati di ingresso: due numeri interi a e b.<br />

Pre-condizione: a = 0, b = 0.<br />

Dati di uscita: il più alto numero intero c che divide sia a che b.<br />

Specifica dell’algoritmo:<br />

1. assegna ad r il resto della divisione a/b<br />

2. se r = 0 allora l’MCD è pari a b<br />

3. altrimenti assegna a = b e b = r e ripeti dal punto 1<br />

L’algoritmo utilizzato è noto come algoritmo di Euclide.<br />

2.6 Il programma<br />

Un programma è l’implementazione di un algoritmo in un linguaggio adatto a essere eseguito da<br />

un computer, o da un qualsiasi sistema automatico che interpreti le istruzioni di cui il programma<br />

è composto.<br />

Il termine programma è spesso usato in modo intercambiabile con altri termini, come software<br />

o applicazione. Tale interpretazione può essere considerata errata in quanto, <strong>per</strong> esempio, una<br />

applicazione è talvolta composta da diversi programmi.<br />

Le o<strong>per</strong>azioni base <strong>per</strong> l’implementazione di un programma sono 4:<br />

1. trasferimento di informazioni: acquisizione dati, visualizzazione risultati intermedi, scrittura<br />

risultati finali<br />

2. esecuzione di calcoli<br />

3. assunzione di decisioni: scelta della successiva o<strong>per</strong>azione da compiere sulla base di risultati<br />

intermedi<br />

4. esecuzione di iterazioni: ripetizione di sequenze di o<strong>per</strong>azioni<br />

26

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!