1) Voce realmente precisa declarar lmax como double? Eu nao vi em seu
algoritmo nenhum lugar onde lmax receba um double value. Se voce a declarar
como int os erros de compilacao irao embora.
2) Se for necessario que lmax seja double, faca um cast explicito para int
quando for usa-la como int (indices de array sao int): a[k][j] =
a[(int)lmax][j]; Voce continuara perdendo a precisao, mas nesse caso Java
assume que voce sabe o que estah fazendo e nao reclama.
Abracos,
Marcelo
-----Original Message-----
From: Augusto Cesar Castoldi [mailto:[EMAIL PROTECTED]]
Sent: Sunday, May 27, 2001 12:57 PM
To: [EMAIL PROTECTED]
Subject: [java-list] Variáveis double...
Pessoal,
tenho o seguinte código:
class AlgoritmoCrout {
static void main(String[] args)
{
int n = 3;
int[] b = new int[3];
double[][] a, a1 = new double[3][3];
int i, j, k;
double amax, lmax, temp, aux;
a[1][1] = 0.448;
a[1][2] = 0.832;
a[1][3] = 0.193;
a[2][1] = 0.421;
a[2][2] = 0.784;
a[2][3] = -0.207;
a[3][1] = -0.421;
a[3][2] = 0.784;
a[3][3] = 0.279;
b[1] = 1;
b[2] = 0;
b[3] = 0;
a1 = a;
// INICIO pivotação
for (k = 1; k == n-1; k++) {
amax = a[k][k];
if (amax < 0) {
amax = -amax;
}
lmax = k;
for (i = k + 1; i == n; i++) {
temp = a[i][k];
if (temp < 0) {
temp = -temp;
}
if (temp > amax) {
amax = temp;
lmax = i;
}
} // fim for i
if (lmax != k) {
for (j = k; j == n + 1; i++) {
aux = a[k][j];
a[k][j] = a[lmax][j];
a[lmax][j] = aux;
}
}
} // fim for k
// FIM pivotação
}
} // fim classe AlgoritmoCrout
Porém eu recebo o erro que eu posso perder precisão ao fazer as operações de
atribuição com as variáveis double. Eu sei que se o número for grande vou
perder precisão, porém eu tenho que me conformar com essa perda de
precisão...
Como fazer para o compilador JAVA não "reclamar" disso??
AlgoritmoCrout.java:44: possible loss of precision
found : double
required: int
a[k][j] = a[lmax][j];
^
AlgoritmoCrout.java:45: possible loss of precision
found : double
required: int
a[lmax][j] = aux;
^
2 errors
Exit code: 1
There were errors
------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------
------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------