Pagini recente » Borderou de evaluare (job #1569310) | Borderou de evaluare (job #1569458) | Borderou de evaluare (job #954889) | Cod sursa (job #894801) | Cod sursa (job #975471)
Cod sursa(job #975471)
#include<stdio.h>
#define NMAX 101
void RoyFloyd(short a[NMAX][NMAX], short N){
short i, j, k;
for(k = 1; k <= N; k++)
for(i = 1; i <= N; i++)
for(j = 1; j <= N; j++)
if(a[i][j] > a[i][k] + a[k][j])
a[i][j] = a[i][k] + a[k][j];
}
int main(){
short i, j, N, a[NMAX][NMAX];
FILE *pf, *pg;
pf = fopen("royfloyd.in", "r");
pg = fopen("royfloyd.out", "w");
fscanf(pf, "%hd", &N);
for(i = 1; i <= N; i++)
for(j = 1; j <= N; j++)
fscanf(pf, "%hd", &a[i][j]);
RoyFloyd(a, N);
for(i = 1; i <= N; i++){
for(j = 1; j <= N; j++)
fprintf(pg, "%hd ", a[i][j]);
fprintf(pg, "\n");
}
fclose(pf);
fclose(pg);
return 0;
}