Advertisement
Guest User

Untitled

a guest
Mar 26th, 2015
189
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.39 KB | None | 0 0
  1. /* reverse:  переворачиваем строку s на месте */
  2. void reverse(char s[])
  3. {
  4.     int i, j;
  5.     char c;
  6.    
  7.     for (i = 0, j = strlen(s)-1; i<j; i++, j--) {
  8.         c = s[i];
  9.         s[i] = s[j];
  10.         s[j] = c;
  11.     }
  12. }
  13.  
  14. /* itoa:  конвертируем n в символы в s */
  15. void itoa(int n, char s[])
  16. {
  17.     int i, sign;
  18.    
  19.     if ((sign = n) < 0)  /* записываем знак */
  20.         n = -n;          /* делаем n положительным числом */
  21.     i = 0;
  22.     do {       /* генерируем цифры в обратном порядке */
  23.         s[i++] = n % 10 + '0';   /* берем следующую цифру */
  24.     } while ((n /= 10) > 0);     /* удаляем */
  25.     if (sign < 0)
  26.         s[i++] = '-';
  27.     s[i] = '\0';
  28.     reverse(s);
  29. }
  30.  
  31. char filename[64] = "";
  32.     itoa(procs_rank, filename);
  33.     strcat(filename, "result.txt");
  34.     FILE *fp = fopen(filename, "w");
  35.  
  36.     fprintf(fp, "Source matrix:\n");
  37.     for(int i=0; i<rowsCount; i++)
  38.     {
  39.         for(int j=0; j<colsCount; j++)
  40.             fprintf(fp, "%4.0f\t", A[i*colsCount+j]);
  41.         fprintf(fp, "\n");
  42.     }
  43.     fprintf(fp, "Transposed matrix:\n");
  44.     for(int i=0; i<colsCount; i++)
  45.     {
  46.         for(int j=0; j<rowsCount; j++)
  47.             fprintf(fp, "%4.0f\t", B[i*rowsCount+j]);
  48.         fprintf(fp, "\n");
  49.     }
  50.     fclose(fp);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement