comment faire un organigramme pour lambda ou java8?
Pouvez-vous m'aider et m'apprendre à créer un organigramme à partir de ce code ? Merci
public BigDecimal[][] calcMatrixHessian(BigDecimal[][] polynomialMatrix, int[] classification, double λ) {
return IntStream.range(0, polynomialMatrix.length)
.mapToObj(i -> IntStream.range(0, polynomialMatrix[i].length)
.mapToObj(j -> polynomialMatrix[i][j]
.multiply(BigDecimal.valueOf(classification[i]*classification[j]))
.add(BigDecimal.valueOf(Math.pow(λ,2))))
.toArray(BigDecimal[]::new))
.toArray(BigDecimal[][]::new);
0
Author: Eka Novita Shandra, 2018-10-02
1 answers
Les organigrammes sont utiles pour dessiner des paradigmes procéduraux/impératifs. Les flux Java sont assez fonctionnels et il n'est donc pas utile d'en dessiner un organigramme, car vous obtiendrez simplement:
start -> return IntStream.range(0, polynomialMatrix.length)
.mapToObj(i -> IntStream.range(0, polynomialMatrix[i].length)
.mapToObj(j -> polynomialMatrix[i][j]
.multiply(BigDecimal.valueOf(classification[i]*classification[j]))
.add(BigDecimal.valueOf(Math.pow(λ,2))))
.toArray(BigDecimal[]::new))
.toArray(BigDecimal[][]::new); -> end
Nous devons donc convertir cela en un algorithme plus procédural. Voici quelques pseudocodes:
retVal = new BigDecimal[polynomialMatrix[0].length][polynomialMatrix.length]
for i = 0 to polynomialMatrix.length
for j = 0 to polynomialMatrix[i].length
retVal[i][j] = polynomialMatrix[i][j] * classification[i]*classification[j]
retVal[i][j] += Math.pow(λ,2)
return retVal
Maintenant, il devrait être plus facile de convertir cela en organigramme. Essayez-le vous-même!
0
Author: Sweeper, 2018-10-02 05:58:43