Estaba tratando de hacer el algoritmo de floyd y lo tengo asi
pero me parece demasiado complejo.
Talvez alquien me pueda ayudar a no usar tantos for.
Código
int a[][] = { {0, 8, 5}, {3, 0, inf}, {inf, 2, 0}}; main() { int N=a.length; int y, x, j; for (y= 0; y< N; y++) for (x= 0; x< N; x++) if (a[x][y]>0) for (j= 0; j< N; j++) if (a[y][j]>0) if ((a[x][j]== 0) || (a[x][y]+a[y][j]< a[x][j])) a[x][j]= a[x][y]+a[y][j]; for (y= 0; y< N; y++) { for (x= 0; x< N; x++) cout << (a[y][x]< 10 ? " "+a[y][x] : " "+a[y][x]); cout << endl; } }
Saludos.