|
![]() |
#1 |
Registered User
Datum registracije: Oct 2006
Lokacija: Zagreb
Postovi: 12
|
[Pomoć]Tekst file kao jedna velika matrica u C-u
Imam jedan zadatak koji trebam napraviti, ono što me zanima u ovoj temi je dio jednog većeg problema. Naime, u tom dijelu programa trebao bih nekako učitati tekst file u C-u koji izgleda otprilike ovako: stanje1,stanje2,stanje3,q3,stanje5 a,b,c,d stanje2,stanje5,q3 stanje1 stanje1,a->stanje2 stanje2,b->stanje5 ... Program treba čitati file neovisno o broju redaka (napravio sam funkciju koja izbacuje broj redaka, to nije problem), o poretku unutar redaka (znači može npr. biti u prvom retku i q3,stanje2,stanje4,q5). E sad, mene zanima postoji li nekakav način kako bih pohranio taj tekst file kao jednu veliku dvodimenzionalnu matricu ili kao više jednodimenzionalnih matrica (jedan redak = jedna matrica). Npr. da se napravi ovakva matrica: stanje1,stanje2,stanje3,q3,stanje5\0 a,b,c,d\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 stanje2,stanje5,q3\0\0\0\0\0\0\0\0\0 stanje1\0\0\0\0\0\0\0\0\0\0\0\0\0\0 stanje1,a->stanje2\0\0\0\0\0\0\0\0 stanje2,b->stanje5\0\0\0\0\0\0\0\0 itd. I sad npr. ja kažem da printa matrica[2][4] i on izbaci slovo j jer se ono nalazi na tom mjestu u toj matrici. Ili npr. ako se radi o drugom slučaju r3[6] izbaci 1 Nadam se da ste me shvatili. Hvala. ![]() |
![]() |
![]() |
![]() |
#2 |
Umalo Premium
Datum registracije: Jan 2009
Lokacija: localhost
Postovi: 61
|
Probaj ovako: Code:
char a = 0; int i = 0, j = 0; char polje[100][100]; FILE *f = fopen("myfile.txt", "r"); while (!feof(f)) { if(a == '\n')j++; a = polje[i][j] = getc(f); i++; } |
![]() |
![]() |
|
|
Oglas
|
|
![]() |
#3 |
only fool, not a horse
Datum registracije: Apr 2008
Lokacija: near zgb
Postovi: 1,280
|
turing? |
![]() |
![]() |
![]() |
#4 |
Registered User
Datum registracije: Oct 2006
Lokacija: Zagreb
Postovi: 12
|
Hvala na odgovoru. Radi se o $-NKA ![]() |
![]() |
![]() |
|
|
Oglas
|
|
![]() |
Uređivanje | |
|
|