| Prethodna tema :: Sljedeća tema | 
	
	
		| Autor/ica | Poruka | 
	
		| maaajčiii Forumaš(ica)
 
  
 
 Pridružen/a: 05. 01. 2011. (12:11:11)
 Postovi: (2D)16
 
 
 | 
			
				|  Postano: 8:30 sri, 25. 5. 2011    Naslov: |         |  
				| 
 |  
				| čini mi se da program radi dobro, ali compiler kaže da je netočno, ako bi netko bio toliko ljubazan da pogleda. hvala unaprijed!
čini mi se da program radi dobro, ali compiler kaže da je netočno, ako bi netko bio toliko ljubazan da pogleda. hvala unaprijed!
 [code:1]#include <stdio.h>
 #include <string.h>
 
 int okreni(char *rijec, int duljina){
 char tmp,i=0,j;
 j=duljina;
 duljina/=2;
 while (duljina){
 tmp = rijec[i];
 rijec[i] = rijec[j-1];
 rijec[j-1] = tmp;
 duljina--;i++;j--;}
 return 0;}
 
 int main ()
 {
 char str[15603];
 char * rijec;
 int brojac=1;
 scanf("%[^\n]", str);
 rijec = strtok (str," ");
 while (rijec != NULL)
 {		if (brojac != 1 && brojac % 3 != 0) printf(" ");
 if(brojac % 3 != 0){
 okreni(rijec,strlen(rijec));
 printf("%s",rijec);
 }
 
 rijec = strtok (NULL, " ");
 brojac++;
 }
 return 0;
 }[/code:1]
 
 
  	  | Kod: |  	  | #include <stdio.h> #include <string.h>
 
 int okreni(char *rijec, int duljina){
 char tmp,i=0,j;
 j=duljina;
 duljina/=2;
 while (duljina){
 tmp = rijec[i];
 rijec[i] = rijec[j-1];
 rijec[j-1] = tmp;
 duljina--;i++;j--;}
 return 0;}
 
 int main ()
 {
 char str[15603];
 char * rijec;
 int brojac=1;
 scanf("%[^\n]", str);
 rijec = strtok (str," ");
 while (rijec != NULL)
 {      if (brojac != 1 && brojac % 3 != 0) printf(" ");
 if(brojac % 3 != 0){
 okreni(rijec,strlen(rijec));
 printf("%s",rijec);
 }
 
 rijec = strtok (NULL, " ");
 brojac++;
 }
 return 0;
 }
 | 
 
 
 |  | 
	
		| [Vrh] |  | 
	
		| Sekanta Forumaš(ica)
 
  
 
 Pridružen/a: 13. 09. 2009. (10:14:33)
 Postovi: (48)16
 
 
 |  | 
	
		| [Vrh] |  | 
	
		| kkarlo Forumaš(ica)
 
  
 
 Pridružen/a: 19. 05. 2010. (08:43:59)
 Postovi: (1B2)16
 Spol:
  
 
 | 
			
				|  Postano: 18:04 sri, 25. 5. 2011    Naslov: |         |  
				| 
 |  
				| Zadatak:
Zadatak:Napišite program koji učitava jednu liniju teksta s najviše 15174 znakova. Tom tekstu treba izbrisati svaku 6. riječ, a ostalima izokrenuti redoslijed slova (same riječi ostaju u originalnom poretku). Tako dobiveni tekst treba ispisati.
 Možete pretpostaviti da tekst sadrži samo slova i razmake.
 
 Moje rješenje:
 [code:1]#include<stdio.h>
 #include<string.h>
 #include<ctype.h>
 void brisisestu(char n[])
 {
 int i,br=0,d,j=0;
 char t[15175];
 d=strlen(n);
 for(i=0;i<d;i++)
 {
 if(isalpha(n[i]))
 {
 br++;
 if(br%6==0 && br>0)
 {
 while(isalpha(n[i]))i++;
 while(!(isalpha(n[i])))i++;
 }
 else
 while(isalpha(n[i]))
 {
 t[j]=n[i];
 j++;
 i++;
 }
 }
 if(i<d)
 {
 t[j]=n[i];
 j++;
 }
 }
 t[j]='\0';
 d=strlen(t);
 for(i=0;i<=d;i++)
 n[i]=t[i];
 }
 void obrniporedak(char n[],int pocetni, int zadnji)
 {
 int i,j=0,d=(pocetni+zadnji)/2;
 char temp;
 for(i=pocetni;i<=d;i++)
 {
 temp=n[i];
 n[i]=n[zadnji-j];
 n[zadnji-j]=temp;
 j++;
 }
 }
 int main()
 {
 char n[15175];
 int i=0,d,j=0;
 scanf("%[^\n]", n);
 d=strlen(n);
 for(i=0;i<d;i++)
 {
 if(isalpha(n[i]))
 {
 for(j=i+1;j<d;j++)
 {
 if(!(isalpha(n[j]))&&(isalpha(n[j-1])))
 {
 obrniporedak(n,i,j-1);
 break;
 }
 if(j==d-1)
 {
 obrniporedak(n,i,j);
 }
 }
 i=j;
 }
 }
 brisisestu(n);
 d=strlen(n);
 for(i=0;i<d;i++)
 printf("%c",n[i]);
 return 0;
 }[/code:1]
 Ako zna netko gdje je greška, bio bih jako zahvalan da mi kaže...pokušao sam zbilja poslati 300 verzija ali nijednu ne prihvaća, a nije mi jasno zašto...ostadoh bez ideja  :oops:
 Znam, da bi trebao ic na konzultacije za to, ali stvarno sam u guzvi sa svim drugim obavezama na faksu... :roll:
 Napišite program koji učitava jednu liniju teksta s najviše 15174 znakova. Tom tekstu treba izbrisati svaku 6. riječ, a ostalima izokrenuti redoslijed slova (same riječi ostaju u originalnom poretku). Tako dobiveni tekst treba ispisati.
 Možete pretpostaviti da tekst sadrži samo slova i razmake.
 
 Moje rješenje:
 
  	  | Kod: |  	  | #include<stdio.h> #include<string.h>
 #include<ctype.h>
 void brisisestu(char n[])
 {
 int i,br=0,d,j=0;
 char t[15175];
 d=strlen(n);
 for(i=0;i<d;i++)
 {
 if(isalpha(n[i]))
 {
 br++;
 if(br%6==0 && br>0)
 {
 while(isalpha(n[i]))i++;
 while(!(isalpha(n[i])))i++;
 }
 else
 while(isalpha(n[i]))
 {
 t[j]=n[i];
 j++;
 i++;
 }
 }
 if(i<d)
 {
 t[j]=n[i];
 j++;
 }
 }
 t[j]='\0';
 d=strlen(t);
 for(i=0;i<=d;i++)
 n[i]=t[i];
 }
 void obrniporedak(char n[],int pocetni, int zadnji)
 {
 int i,j=0,d=(pocetni+zadnji)/2;
 char temp;
 for(i=pocetni;i<=d;i++)
 {
 temp=n[i];
 n[i]=n[zadnji-j];
 n[zadnji-j]=temp;
 j++;
 }
 }
 int main()
 {
 char n[15175];
 int i=0,d,j=0;
 scanf("%[^\n]", n);
 d=strlen(n);
 for(i=0;i<d;i++)
 {
 if(isalpha(n[i]))
 {
 for(j=i+1;j<d;j++)
 {
 if(!(isalpha(n[j]))&&(isalpha(n[j-1])))
 {
 obrniporedak(n,i,j-1);
 break;
 }
 if(j==d-1)
 {
 obrniporedak(n,i,j);
 }
 }
 i=j;
 }
 }
 brisisestu(n);
 d=strlen(n);
 for(i=0;i<d;i++)
 printf("%c",n[i]);
 return 0;
 }
 | 
 Ako zna netko gdje je greška, bio bih jako zahvalan da mi kaže...pokušao sam zbilja poslati 300 verzija ali nijednu ne prihvaća, a nije mi jasno zašto...ostadoh bez ideja
   Znam, da bi trebao ic na konzultacije za to, ali stvarno sam u guzvi sa svim drugim obavezama na faksu...
   
 
 |  | 
	
		| [Vrh] |  | 
	
		| akolak Forumaš(ica)
 
  
 
 Pridružen/a: 27. 12. 2010. (16:52:59)
 Postovi: (1D)16
 
 
 | 
			
				|  Postano: 19:00 sri, 25. 5. 2011    Naslov: |         |  
				| 
 |  
				| [quote="kkarlo"]Zadatak:
 Ako zna netko gdje je greška, bio bih jako zahvalan da mi kaže...pokušao sam zbilja poslati 300 verzija ali nijednu ne prihvaća, a nije mi jasno zašto...ostadoh bez ideja  :oops:
 Znam, da bi trebao ic na konzultacije za to, ali stvarno sam u guzvi sa svim drugim obavezama na faksu... :roll:[/quote]
 
 Program pobriše previše razmaka kod riječi koja je pobrisana. (Trebaju bit pobrisana samo slova, ne i razmaci) Nadam se da je od pomoći.
  	  | kkarlo (napisa): |  	  | Zadatak: 
 Ako zna netko gdje je greška, bio bih jako zahvalan da mi kaže...pokušao sam zbilja poslati 300 verzija ali nijednu ne prihvaća, a nije mi jasno zašto...ostadoh bez ideja
   Znam, da bi trebao ic na konzultacije za to, ali stvarno sam u guzvi sa svim drugim obavezama na faksu...
  | 
 
 Program pobriše previše razmaka kod riječi koja je pobrisana. (Trebaju bit pobrisana samo slova, ne i razmaci) Nadam se da je od pomoći.
 
 
 |  | 
	
		| [Vrh] |  | 
	
		| kkarlo Forumaš(ica)
 
  
 
 Pridružen/a: 19. 05. 2010. (08:43:59)
 Postovi: (1B2)16
 Spol:
  
 
 |  | 
	
		| [Vrh] |  | 
	
		| CROmpir Forumaš(ica)
 
  
 
 Pridružen/a: 15. 09. 2009. (18:27:06)
 Postovi: (B3)16
 
 
 |  | 
	
		| [Vrh] |  | 
	
		| kkarlo Forumaš(ica)
 
  
 
 Pridružen/a: 19. 05. 2010. (08:43:59)
 Postovi: (1B2)16
 Spol:
  
 
 | 
			
				|  Postano: 19:58 čet, 26. 5. 2011    Naslov: |         |  
				| 
 |  
				| [quote="CROmpir"]Mislim da ti u zadatku jasno pise da brise 6. rijec... A to nisu razmaci ;) vjeruj mi...[/quote]
I bili su razmaci...
 Hvala!
 
 E sad... pošto nitko ne postavlja pitanja oko datoteka...
 morat ću ja... Program meni radi dobro, uredno sve ispiše, spremi kad otvorim sve je kak bi trebalo bit, a opet, ne prihvaća...
 
 ZADATAK:
 Zadana je datoteka "sjsjy.in" u kojoj se u prvoj liniji nalazi prirodni broj n, a u idućih n redaka zapisani su datumi u formatu
 d.m.g.
 (po jedan u svakom retku). Datume treba prepisati u datoteku "sjsjy.out" u formatu
 koliko:d.m.g.
 pri čemu je koliko broj pojavljivanja datuma u datoteci, a datumi trebaju biti sortirani od najstarijeg prema najnovijem.
 Napomena: Datumi u ulaznoj datoteci bit će ispravni, tj. ne treba provjeravati da su korektni.
 Uputa: Ovaj zadatak najlakše je riješiti upotrebom dinamički alociranog polja struct-ova.
 
 
 [code:1]
 #include<stdio.h>
 #include<stdlib.h>
 
 typedef struct
 {
 int dan,mjesec,godina,br;
 }datum;
 int main()
 {
 FILE *in,*out;
 int n,i,j,br;
 datum *novi,pomocni;
 in=fopen("sjsjy.in","r");
 out=fopen("sjsjy.out","w");
 fscanf(in,"%d",&n);
 novi=(datum *)malloc(n*sizeof(datum));
 for(i=0;i<n;i++)
 {
 fscanf(in," %d.%d.%d.",&novi[i].dan,&novi[i].mjesec,&novi[i].godina);
 novi[i].br=1;
 }
 for(i=0;i<n;i++)
 {
 for(j=i+1;j<n;j++)
 {
 if((novi[i].godina*365+novi[i].dan+novi[i].mjesec*31) > (novi[j].godina*365+novi[j].dan+novi[j].mjesec*31))
 {
 pomocni=novi[i];
 novi[i]=novi[j];
 novi[j]=pomocni;
 }
 }
 }
 for(i=0;i<n;i++)
 {
 br=0;
 for(j=i+1;j<n;j++)
 {
 if((novi[i].dan==novi[j].dan)&&(novi[i].godina==novi[j].godina)&&(novi[i].mjesec==novi[j].mjesec))
 {
 novi[i].br++;
 novi[j].br=0;
 br++;
 }
 }
 i=i+br;
 }
 for(i=0;i<n;i++)
 {
 if((novi[i].br>0) && (i<(n-1)))
 fprintf(out,"%d:%d.%d.%d.\n",novi[i].br,novi[i].dan,novi[i].mjesec,novi[i].godina);
 else if((novi[i].br>0))
 fprintf(out,"%d:%d.%d.%d.",novi[i].br,novi[i].dan,novi[i].mjesec,novi[i].godina);
 }
 free(novi);
 fclose(in);
 fclose(out);
 return 0;
 }
 [/code:1]
 
 Što sam sada previdio, ili krivo napravio?
  	  | CROmpir (napisa): |  	  | Mislim da ti u zadatku jasno pise da brise 6. rijec... A to nisu razmaci  vjeruj mi... | 
 I bili su razmaci...
 Hvala!
 
 E sad... pošto nitko ne postavlja pitanja oko datoteka...
 morat ću ja... Program meni radi dobro, uredno sve ispiše, spremi kad otvorim sve je kak bi trebalo bit, a opet, ne prihvaća...
 
 ZADATAK:
 Zadana je datoteka "sjsjy.in" u kojoj se u prvoj liniji nalazi prirodni broj n, a u idućih n redaka zapisani su datumi u formatu
 d.m.g.
 (po jedan u svakom retku). Datume treba prepisati u datoteku "sjsjy.out" u formatu
 koliko:d.m.g.
 pri čemu je koliko broj pojavljivanja datuma u datoteci, a datumi trebaju biti sortirani od najstarijeg prema najnovijem.
 Napomena: Datumi u ulaznoj datoteci bit će ispravni, tj. ne treba provjeravati da su korektni.
 Uputa: Ovaj zadatak najlakše je riješiti upotrebom dinamički alociranog polja struct-ova.
 
 
 
  	  | Kod: |  	  | #include<stdio.h>
 #include<stdlib.h>
 
 typedef struct
 {
 int dan,mjesec,godina,br;
 }datum;
 int main()
 {
 FILE *in,*out;
 int n,i,j,br;
 datum *novi,pomocni;
 in=fopen("sjsjy.in","r");
 out=fopen("sjsjy.out","w");
 fscanf(in,"%d",&n);
 novi=(datum *)malloc(n*sizeof(datum));
 for(i=0;i<n;i++)
 {
 fscanf(in," %d.%d.%d.",&novi[i].dan,&novi[i].mjesec,&novi[i].godina);
 novi[i].br=1;
 }
 for(i=0;i<n;i++)
 {
 for(j=i+1;j<n;j++)
 {
 if((novi[i].godina*365+novi[i].dan+novi[i].mjesec*31) > (novi[j].godina*365+novi[j].dan+novi[j].mjesec*31))
 {
 pomocni=novi[i];
 novi[i]=novi[j];
 novi[j]=pomocni;
 }
 }
 }
 for(i=0;i<n;i++)
 {
 br=0;
 for(j=i+1;j<n;j++)
 {
 if((novi[i].dan==novi[j].dan)&&(novi[i].godina==novi[j].godina)&&(novi[i].mjesec==novi[j].mjesec))
 {
 novi[i].br++;
 novi[j].br=0;
 br++;
 }
 }
 i=i+br;
 }
 for(i=0;i<n;i++)
 {
 if((novi[i].br>0) && (i<(n-1)))
 fprintf(out,"%d:%d.%d.%d.\n",novi[i].br,novi[i].dan,novi[i].mjesec,novi[i].godina);
 else if((novi[i].br>0))
 fprintf(out,"%d:%d.%d.%d.",novi[i].br,novi[i].dan,novi[i].mjesec,novi[i].godina);
 }
 free(novi);
 fclose(in);
 fclose(out);
 return 0;
 }
 
 | 
 
 Što sam sada previdio, ili krivo napravio?
 
 
 |  | 
	
		| [Vrh] |  | 
	
		| vsego Site Admin
 
  
  
 Pridružen/a: 06. 10. 2002. (22:07:09)
 Postovi: (3562)16
 Spol:
  Lokacija: /sbin/init
 
 | 
			
				|  Postano: 20:22 čet, 26. 5. 2011    Naslov: |         |  
				| 
 |  
				| Meni se cini da ti sort ne valja:
Meni se cini da ti sort ne valja:2000*365+31*12+31 = 730403
 2001*365+31*1+1 = 730397
 :arrow: 1.1.2001. tebi dodje 6 dana [b]prije[/b] 31.12.2000.
 
 To je zato jer tvoja godina traje dulje od 365 dana (sto za potrebe usporedbe nije problem, ali onda moras uzeti dulje trajanje godine, barem 12*31 = 372 dana; mozes i vise, ali ne manje).
 2000*365+31*12+31 = 730403
 2001*365+31*1+1 = 730397
 
  1.1.2001. tebi dodje 6 dana prije 31.12.2000. 
 To je zato jer tvoja godina traje dulje od 365 dana (sto za potrebe usporedbe nije problem, ali onda moras uzeti dulje trajanje godine, barem 12*31 = 372 dana; mozes i vise, ali ne manje).
 _________________U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima. Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.
  |  | 
	
		| [Vrh] |  | 
	
		| Sekanta Forumaš(ica)
 
  
 
 Pridružen/a: 13. 09. 2009. (10:14:33)
 Postovi: (48)16
 
 
 | 
			
				|  Postano: 8:54 uto, 31. 5. 2011    Naslov: |         |  
				| 
 |  
				| mene bi zanimalo zasto ovaj code "prividno" radi??
mene bi zanimalo zasto ovaj code "prividno" radi??[code:1]#include<stdio.h>
 #include<stdlib.h>
 
 /*
 Zadatak 3:
 Zadana je datoteka "wtewkrre.in" u kojoj se u prvoj liniji nalazi prirodni broj n,
 a u idućih n redaka zapisani su datumi u formatu d.m.g.(po jedan u svakom retku).
 Datume treba prepisati u datoteku "wtewkrre.out" u formatu koliko|d.m.g.
 pri čemu je koliko broj pojavljivanja datuma u datoteci, a datumi trebaju biti
 sortirani od najstarijeg prema najnovijem.
 Napomena: Datumi u ulaznoj datoteci bit će ispravni, tj. ne treba provjeravati da
 su korektni. Uputa: Ovaj zadatak najlakše je riješiti upotrebom dinamički
 alociranog polja struct-ova.
 */
 
 
 typedef struct{
 int dan,mjesec,godina,koliko;
 }datum;
 
 void sort(FILE *in, FILE *out){
 int n,koliko=1,i,j,k, m;
 datum *d;
 char c;
 
 fscanf(in,"%d",&n);
 
 d=(datum*)malloc(n*sizeof(datum));
 
 for(i=0;i<n;++i){
 fscanf(in, "%d %c %d %c %d %c",&d[i].dan, &c, &d[i].mjesec, &c, &d[i].godina, &c);
 d[i].koliko=1;
 }
 
 for(i=0;i<n-1;++i){
 koliko=1;
 for(j=i+1;j<n;++j)
 {
 if(d[i].godina>d[j].godina){
 datum temp;
 temp=d[i];
 d[i]=d[j];
 d[j]=temp;
 }
 if(d[i].godina==d[j].godina && d[i].mjesec>d[j].mjesec)
 {
 datum temp;
 temp=d[i];
 d[i]=d[j];
 d[j]=temp;
 }
 if(d[i].godina==d[j].godina && d[i].mjesec==d[j].mjesec && d[i].dan>d[j].dan)
 {
 datum temp;
 temp=d[i];
 d[i]=d[j];
 d[j]=temp;
 }
 
 if(d[i].godina==d[j].godina && d[i].mjesec==d[j].mjesec && d[i].dan==d[j].dan)
 {
 d[i].koliko=++koliko;
 d[j]=d[n-1];
 --n;
 j--;
 }
 
 }
 fprintf(out,"%d|%d.%d.%d.\n",d[i].koliko,d[i].dan,d[i].mjesec,d[i].godina);
 }
 fprintf(out,"%d|%d.%d.%d.\n",d[i].koliko,d[i].dan,d[i].mjesec,d[i].godina);
 }
 
 
 int main(){
 FILE *in,*out;
 
 in=fopen("fsqjesgain.txt","rt");
 out=fopen("fsqjesgaout.txt","wt");
 
 sort(in,out);
 
 fclose(in);
 fclose(out);
 
 
 system("pause");
 return 0;
 }
 [/code:1]
 
 i jel se char moze pretvorit u int??
 
  	  | Kod: |  	  | #include<stdio.h> #include<stdlib.h>
 
 /*
 Zadatak 3:
 Zadana je datoteka "wtewkrre.in" u kojoj se u prvoj liniji nalazi prirodni broj n,
 a u idućih n redaka zapisani su datumi u formatu d.m.g.(po jedan u svakom retku).
 Datume treba prepisati u datoteku "wtewkrre.out" u formatu koliko|d.m.g.
 pri čemu je koliko broj pojavljivanja datuma u datoteci, a datumi trebaju biti
 sortirani od najstarijeg prema najnovijem.
 Napomena: Datumi u ulaznoj datoteci bit će ispravni, tj. ne treba provjeravati da
 su korektni. Uputa: Ovaj zadatak najlakše je riješiti upotrebom dinamički
 alociranog polja struct-ova.
 */
 
 
 typedef struct{
 int dan,mjesec,godina,koliko;
 }datum;
 
 void sort(FILE *in, FILE *out){
 int n,koliko=1,i,j,k, m;
 datum *d;
 char c;
 
 fscanf(in,"%d",&n);
 
 d=(datum*)malloc(n*sizeof(datum));
 
 for(i=0;i<n;++i){
 fscanf(in, "%d %c %d %c %d %c",&d[i].dan, &c, &d[i].mjesec, &c, &d[i].godina, &c);
 d[i].koliko=1;
 }
 
 for(i=0;i<n-1;++i){
 koliko=1;
 for(j=i+1;j<n;++j)
 {
 if(d[i].godina>d[j].godina){
 datum temp;
 temp=d[i];
 d[i]=d[j];
 d[j]=temp;
 }
 if(d[i].godina==d[j].godina && d[i].mjesec>d[j].mjesec)
 {
 datum temp;
 temp=d[i];
 d[i]=d[j];
 d[j]=temp;
 }
 if(d[i].godina==d[j].godina && d[i].mjesec==d[j].mjesec && d[i].dan>d[j].dan)
 {
 datum temp;
 temp=d[i];
 d[i]=d[j];
 d[j]=temp;
 }
 
 if(d[i].godina==d[j].godina && d[i].mjesec==d[j].mjesec && d[i].dan==d[j].dan)
 {
 d[i].koliko=++koliko;
 d[j]=d[n-1];
 --n;
 j--;
 }
 
 }
 fprintf(out,"%d|%d.%d.%d.\n",d[i].koliko,d[i].dan,d[i].mjesec,d[i].godina);
 }
 fprintf(out,"%d|%d.%d.%d.\n",d[i].koliko,d[i].dan,d[i].mjesec,d[i].godina);
 }
 
 
 int main(){
 FILE *in,*out;
 
 in=fopen("fsqjesgain.txt","rt");
 out=fopen("fsqjesgaout.txt","wt");
 
 sort(in,out);
 
 fclose(in);
 fclose(out);
 
 
 system("pause");
 return 0;
 }
 
 | 
 
 i jel se char moze pretvorit u int??
 
 
 |  | 
	
		| [Vrh] |  | 
	
		| vsego Site Admin
 
  
  
 Pridružen/a: 06. 10. 2002. (22:07:09)
 Postovi: (3562)16
 Spol:
  Lokacija: /sbin/init
 
 | 
			
				|  Postano: 9:27 uto, 31. 5. 2011    Naslov: |         |  
				| 
 |  
				| Kao prvo, datoteke ti se pogresno zovu.
Kao prvo, datoteke ti se pogresno zovu.
 Drugo, za input
 [code:1]6
 2.1.2001.
 2.1.2001.
 2.1.2001.
 1.1.2001.
 2.1.2001.
 2.1.2001.[/code:1]
 dobijam ocito krivi rezultat
 [code:1]1|1.1.2001.
 2|2.1.2001.
 1|2.1.2001.[/code:1]
 Prodji kroz svoj kod s mojim primjerom, pa vidi zasto se to dogadja.
 
 [quote="Sekanta"]i jel se char moze pretvorit u int??[/quote]
 
 Gradivo prvog semestra (pretezno predavanja) kaze da moze. Pitanje je samo kakvu konverziju zelis.
 
 Drugo, za input
 
  	  | Kod: |  	  | 6 2.1.2001.
 2.1.2001.
 2.1.2001.
 1.1.2001.
 2.1.2001.
 2.1.2001.
 | 
 dobijam ocito krivi rezultat
 
  	  | Kod: |  	  | 1|1.1.2001. 2|2.1.2001.
 1|2.1.2001.
 | 
 Prodji kroz svoj kod s mojim primjerom, pa vidi zasto se to dogadja.
 
 
  	  | Sekanta (napisa): |  	  | i jel se char moze pretvorit u int?? | 
 
 Gradivo prvog semestra (pretezno predavanja) kaze da moze. Pitanje je samo kakvu konverziju zelis.
 _________________U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima. Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.
  |  | 
	
		| [Vrh] |  | 
	
		| Sekanta Forumaš(ica)
 
  
 
 Pridružen/a: 13. 09. 2009. (10:14:33)
 Postovi: (48)16
 
 
 |  | 
	
		| [Vrh] |  | 
	
		| Joker Forumaš(ica)
 
  
 
 Pridružen/a: 19. 09. 2010. (10:19:16)
 Postovi: (8C)16
 Spol:
  
 
 |  | 
	
		| [Vrh] |  | 
	
		| vsego Site Admin
 
  
  
 Pridružen/a: 06. 10. 2002. (22:07:09)
 Postovi: (3562)16
 Spol:
  Lokacija: /sbin/init
 
 |  | 
	
		| [Vrh] |  | 
	
		| pupi Forumaš(ica)
 
  
 
 Pridružen/a: 20. 12. 2009. (11:03:15)
 Postovi: (92)16
 Spol:
  
 
 |  | 
	
		| [Vrh] |  | 
	
		| vsego Site Admin
 
  
  
 Pridružen/a: 06. 10. 2002. (22:07:09)
 Postovi: (3562)16
 Spol:
  Lokacija: /sbin/init
 
 | 
			
				|  Postano: 6:59 sri, 1. 6. 2011    Naslov: |         |  
				| 
 |  
				| Prvi semestar, sesto predavanje: zarez ima najnizi prioritet i evaluira se slijeva na desno. Dakle, za sve prakticne primjene, isto je.Prvi semestar, sesto predavanje: zarez ima najnizi prioritet i evaluira se slijeva na desno. Dakle, za sve prakticne primjene, isto je. _________________U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima. Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.
  |  | 
	
		| [Vrh] |  | 
	
		| seba04 Forumaš(ica)
 
  
 
 Pridružen/a: 27. 07. 2009. (22:53:35)
 Postovi: (6)16
 Spol:
  
 
 |  | 
	
		| [Vrh] |  | 
	
		| <gogo> Forumaš(ica)
 
  
  
 Pridružen/a: 09. 09. 2010. (09:09:31)
 Postovi: (19)16
 Spol:
  
 
 |  | 
	
		| [Vrh] |  | 
	
		| vriskica92 Forumaš(ica)
 
  
 
 Pridružen/a: 21. 01. 2011. (00:02:33)
 Postovi: (14)16
 
 
 |  | 
	
		| [Vrh] |  | 
	
		| jabuka Forumaš(ica)
 
  
 
 Pridružen/a: 21. 11. 2009. (15:53:14)
 Postovi: (7C)16
 
 
 | 
			
				|  Postano: 15:43 sri, 1. 6. 2011    Naslov: |         |  
				| 
 |  
				| radi se o 2.zadatku iz 5.zadace...meni radi sve normalno, al mi aplakacija za zadace kaze da je kriv:
radi se o 2.zadatku iz 5.zadace...meni radi sve normalno, al mi aplakacija za zadace kaze da je kriv:
 Zadatak 2:
 Napišite program koji čita datoteku "cjsqkyd.in", te ju prepisuje u datoteku "cjsqkyd.out" tako da u prepisivanju sva pojavljivanja stringa "hnd" zamijeni stringom "onnozlm".
 Napomena: Nemojte uvoditi ograničenja na duljinu datoteke i/ili pojedinih linija i riječi u datoteci.
 
 [code:1]
 #include<stdio.h>
 #include<stdlib.h>
 
 int main(void){
 FILE *in,*out;
 char c,c1,c2;
 int t;
 
 if((in=fopen("cjsqkyd.in","rt"))==NULL)
 exit(1);
 
 if((out=fopen("cjsqkyd.out","wt"))==NULL)
 exit(2);
 
 while(fscanf(in,"%c",&c)>0){
 if(c!='h')
 fprintf(out,"%c",c);
 if(c=='h'){
 
 if(fscanf(in,"%c",&c1)>0){
 if(c1=='h'){
 fprintf(out,"%c",c);
 ungetc(c1,in);
 continue;
 }
 if(c1=='n'){
 if(fscanf(in,"%c",&c2)>0){
 if(c2=='n'){
 fprintf(out,"%c",c);
 fprintf(out,"%c",c1);
 ungetc(c2,in);
 continue;
 }
 if(c2!='d'){
 fprintf(out,"%c",c);
 fprintf(out,"%c",c1);
 fprintf(out,"%c",c2);
 }
 if(c2=='d')
 fprintf(out,"%s","onnozlm");
 }
 else {
 fprintf(out,"%c",c);
 fprintf(out,"%c",c1);
 }
 }
 }
 else fprintf(out,"%c",c);
 }
 }
 fclose(in); fclose(out);
 system("pause");
 return 0;
 }
 [/code:1]
 
 Zadatak 2:
 Napišite program koji čita datoteku "cjsqkyd.in", te ju prepisuje u datoteku "cjsqkyd.out" tako da u prepisivanju sva pojavljivanja stringa "hnd" zamijeni stringom "onnozlm".
 Napomena: Nemojte uvoditi ograničenja na duljinu datoteke i/ili pojedinih linija i riječi u datoteci.
 
 
  	  | Kod: |  	  | #include<stdio.h>
 #include<stdlib.h>
 
 int main(void){
 FILE *in,*out;
 char c,c1,c2;
 int t;
 
 if((in=fopen("cjsqkyd.in","rt"))==NULL)
 exit(1);
 
 if((out=fopen("cjsqkyd.out","wt"))==NULL)
 exit(2);
 
 while(fscanf(in,"%c",&c)>0){
 if(c!='h')
 fprintf(out,"%c",c);
 if(c=='h'){
 
 if(fscanf(in,"%c",&c1)>0){
 if(c1=='h'){
 fprintf(out,"%c",c);
 ungetc(c1,in);
 continue;
 }
 if(c1=='n'){
 if(fscanf(in,"%c",&c2)>0){
 if(c2=='n'){
 fprintf(out,"%c",c);
 fprintf(out,"%c",c1);
 ungetc(c2,in);
 continue;
 }
 if(c2!='d'){
 fprintf(out,"%c",c);
 fprintf(out,"%c",c1);
 fprintf(out,"%c",c2);
 }
 if(c2=='d')
 fprintf(out,"%s","onnozlm");
 }
 else {
 fprintf(out,"%c",c);
 fprintf(out,"%c",c1);
 }
 }
 }
 else fprintf(out,"%c",c);
 }
 }
 fclose(in); fclose(out);
 system("pause");
 return 0;
 }
 
 | 
 
 
 |  | 
	
		| [Vrh] |  | 
	
		| vsego Site Admin
 
  
  
 Pridružen/a: 06. 10. 2002. (22:07:09)
 Postovi: (3562)16
 Spol:
  Lokacija: /sbin/init
 
 |  | 
	
		| [Vrh] |  | 
	
		|  |