Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- int main()
- {
- int matrix[20][20];
- FILE *txt;
- char sor[1024];
- int x, y, n, m, sugar = 1, hatra, elso = 1;
- txt = fopen("be.txt", "r");
- fscanf(txt, "%d,%d\n", &y, &x);
- x--;
- y--;
- m = 0;
- while (fgets(sor, sizeof(sor), txt)) {
- if (sor[0] == '-') {
- break;
- }
- n = 0;
- char *pozicio = strtok(sor, ",");
- while (pozicio != NULL) {
- matrix[m][n++] = atoi(pozicio);
- pozicio = strtok(NULL, ",");
- }
- m++;
- }
- hatra = n * m;
- fclose(txt);
- txt = fopen("ki.txt", "w");
- if (x >= 0 && x < n && y >= 0 && y < m) {
- fprintf(txt, "%d%s", matrix[y][x], --hatra ? "," : "");
- }
- while (hatra) {
- for (int i = elso ? 0 : -sugar + 1; i < sugar; i++) {
- if (x - i >= 0 && x - i < n && y - sugar >= 0 && y - sugar < m) {
- fprintf(txt, "%d%s", matrix[y - sugar][x - i], --hatra ? "," : "");
- }
- }
- for (int i = -sugar; i < sugar; i++) {
- if (x - sugar >= 0 && x - sugar < n && y + i >= 0 && y + i < m) {
- fprintf(txt, "%d%s", matrix[y + i][x - sugar], --hatra ? "," : "");
- }
- }
- for (int i = -sugar; i < sugar; i++) {
- if (x + i >= 0 && x + i < n && y + sugar >= 0 && y + sugar < m) {
- fprintf(txt, "%d%s", matrix[y + sugar][x + i], --hatra ? "," : "");
- }
- }
- for (int i = -sugar; i <= sugar; i++) {
- if (x + sugar >= 0 && x + sugar < n && y - i >= 0 && y - i < m) {
- fprintf(txt, "%d%s", matrix[y - i][x + sugar], --hatra ? "," : "");
- }
- }
- elso = 0;
- sugar++;
- }
- fprintf(txt, "\n");
- fclose(txt);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment