Modifier and Type | Field and Description |
---|---|
static int |
DIV
Costante per determinare l'operazione di divisione.
|
protected DCell[][] |
DMatrix
Matrice di DCell formata da 4 righe e 4 colonne necessaria allo svolgimento
della moltiplicazione.
|
protected SCell[] |
down
Vettore di SCell formato da 4 elementi situato nella parte inferiore dell'abaco.
|
protected SCell[] |
left
Vettore di SCell formato da 4 elementi situato a sinistra dell'abaco.
|
static int |
MUL
Costante per determinare l'operazione di moltiplicazione.
|
protected SCell[] |
right
Vettore di SCell formato da 4 elementi situato a destra dell'abaco.
|
protected SCell[][] |
SMatrix
Matrice di SCell formata da 4 righe e 4 colonne necessaria allo svolgimento
dell'addizione, sottrazione e divisione.
|
protected java.lang.String |
str
Stringa che contiene la descrizione dello step corrente dell'operazione in corso.
|
static int |
SUB
Costante per determinare l'operazione di sottrazione.
|
static int |
SUM
Costante per determinare l'operazione di addizione.
|
protected SCell[] |
up
Vettore di SCell formato da 4 elementi situato nella parte superiore dell'abaco.
|
Modifier and Type | Method and Description |
---|---|
void |
div(int n)
Metodo da usare per lo svolgimento della divisione a step.
|
int |
getColumn(int col)
Converte gli elementi della colonna specificata da
col contenuta
in SMatrix e ritorna un intero contenente il rispettivo valore. |
int |
getOccupiedCells(SCell[] cells)
Ritorna un intero contenente il numero di celle non vuote nell'array
cells . |
int |
getResult()
Restituisce il valore del risultato.
|
int |
getRow(int row)
Converte gli elementi della riga specificata da
row contenuta
in SMatrix e ritorna un intero contenente il rispettivo valore. |
int |
getValueOf(SCell[] cells)
Converte gli elementi dell'array
cells e ritorna un intero contenente il rispettivo valore. |
void |
mul(int n)
Metodo da usare per lo svolgimento della moltiplicazione a step.
|
void |
reset()
Toglie tutti gli oggetti in ogni cella dell'intero abaco.
|
void |
resetColumn(int col)
Toglie tutti gli oggetti in ogni cella della colonna specificata
da
col contenuta in SMatrix. |
void |
resetDMatrix()
Toglie tutti gli oggetti in ogni cella di
DMatrix . |
void |
resetOperand(SCell[] cells)
Toglie tutti gli oggetti in ogni cella dell'array di SCell specificato.
|
void |
resetRow(int row)
Toglie tutti gli oggetti in ogni cella della riga specificata
da
row contenuta in SMatrix. |
void |
resetSMatrix()
Toglie tutti gli oggetti in ogni cella di
SMatrix . |
void |
setColumn(int col,
int value)
Imposta il valore di ogni cifra di
value nelle rispettive celle
della colonna specificata da col in SMatrix . |
void |
setOperand(SCell[] cells,
int value)
Imposta il valore di ogni cifra di
value nelle rispettive celle
dell'array cells . |
void |
setRow(int row,
int value)
Imposta il valore di ogni cifra di
value nelle rispettive celle
della riga specificata da row in SMatrix . |
void |
sub(int n)
Metodo da usare per lo svolgimento della sottrazione a step.
|
void |
sum(int n)
Metodo da usare per lo svolgimento dell'addizione a step.
|
public static final int SUM
public static final int SUB
public static final int MUL
public static final int DIV
protected SCell[][] SMatrix
protected DCell[][] DMatrix
protected SCell[] up
protected SCell[] right
protected SCell[] down
protected SCell[] left
down
.
protected java.lang.String str
public int getRow(int row)
row
contenuta
in SMatrix
e ritorna un intero contenente il rispettivo valore.row
- il numero di riga richiestopublic int getColumn(int col)
col
contenuta
in SMatrix
e ritorna un intero contenente il rispettivo valore.col
- il numero di colonna richiestopublic int getValueOf(SCell[] cells)
cells
e ritorna un intero contenente il rispettivo valore.cells
- array di SCell di cui interessa conoscere il valorepublic int getResult()
public int getOccupiedCells(SCell[] cells)
cells
.cells
- array di SCell da controllarepublic void resetRow(int row)
row
contenuta in SMatrix.row
- il numero di riga richiestopublic void resetColumn(int col)
col
contenuta in SMatrix.col
- il numero di colonna richiestopublic void resetOperand(SCell[] cells)
cells
- array di SCell da svuotarepublic void resetSMatrix()
SMatrix
.public void resetDMatrix()
DMatrix
.public void reset()
up
right
down
left
SMatrix
DMatrix
public void setRow(int row, int value)
value
nelle rispettive celle
della riga specificata da row
in SMatrix
.row
- il numero di riga richiestovalue
- il valore da inserire nella rigapublic void setColumn(int col, int value)
value
nelle rispettive celle
della colonna specificata da col
in SMatrix
.col
- il numero di colonna richiestovalue
- il valore da inserire nella colonnapublic void setOperand(SCell[] cells, int value)
value
nelle rispettive celle
dell'array cells
.cells
- le celle a cui impostare il valorevalue
- il valore da inserire nelle cellepublic void sum(int n)
n
il numero dello step da eseguire. Gli steps per questa operazione vanno da 0 a 5.
Per il corretto svolgimento dell'operazione, ad ogni nuovo step da eseguire
(che sia superiore o inferiore), tale metodo deve essere richiamato per tutti
gli steps precedenti ad n
partendo da 0 e proseguendo di 1
step alla volta.
Lo step 0 prepara l'abaco per lo svolgimento dell'operazione.
Lo step 1 raccoglie gli elementi degli operandi in SMatrix[3][*].
Gli steps da 2 a 5 provvedono alla somma colonna per colonna.n
- lo step da eseguirepublic void sub(int n)
n
il numero dello step da eseguire. Gli steps per questa operazione vanno da 0 a 4.
Per il corretto svolgimento dell'operazione, ad ogni nuovo step da eseguire
(che sia superiore o inferiore), tale metodo deve essere richiamato per tutti
gli steps precedenti ad n
partendo da 0 e proseguendo di 1
step alla volta.
Lo step 0 prepara l'abaco per lo svolgimento dell'operazione.
Gli steps da 1 a 4 provvedono alla sottrazione colonna per colonna.n
- lo step da eseguirepublic void mul(int n)
n
il numero dello step da eseguire. Gli steps per questa operazione vanno da 0 a 10.
Per il corretto svolgimento dell'operazione, ad ogni nuovo step da eseguire
(che sia superiore o inferiore), tale metodo deve essere richiamato per tutti
gli steps precedenti ad n
partendo da 0 e proseguendo di 1
step alla volta.
Lo step 0 prepara l'abaco per lo svolgimento dell'operazione.
Lo step 1 esegue le moltiplicazioni riga per colonna (ogni cella del moltiplicando
viene moltiplicata per ogni cella del moltiplicatore).
Gli steps da 2 a 9 provvedono a raccogliere gli oggetti di ogni diagonale.
Lo step 10 provvede alla sistemazione del risultato convertendo gli oggetti.n
- lo step da eseguirepublic void div(int n)
n
il numero dello step da eseguire. Gli steps per questa operazione vanno da 0 a 5.
Per il corretto svolgimento dell'operazione, ad ogni nuovo step da eseguire
(che sia superiore o inferiore), tale metodo deve essere richiamato per tutti
gli steps precedenti ad n
partendo da 0 e proseguendo di 1
step alla volta.
Lo step 0 prepara l'abaco per lo svolgimento dell'operazione.
Lo step 1 copia gli oggetti di down
in SMatrix[3][*].
Gli steps da 2 a 5 provvedono allo svolgimento della divisione colonna per colonna.n
- lo step da eseguire