Dalla A alla Z passando per C - Robotica
Dalla A alla Z passando per C - Robotica
Dalla A alla Z passando per C - Robotica
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