Search
 
 
  Engleski
 
 
 
Open in this window (click to change)
Forum@DeGiorgi: Početna
Forum za podršku nastavi na PMF-MO
Login Registracija FAQ Smajlići Članstvo Pretražnik Forum@DeGiorgi: Početna

Zadace s weba
WWW:
Idite na Prethodno  1, 2, 3, 4, 5  Sljedeće
Moja sarma
 
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji 1. godine, preddiplomski studij Matematika -> Programiranje 1 i 2
Prethodna tema :: Sljedeća tema  
Autor/ica Poruka
maaajčiii
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 05. 01. 2011. (12:11:11)
Postovi: (2D)16
Sarma = la pohva - posuda
= 3 - 0

PostPostano: 8:30 sri, 25. 5. 2011    Naslov: Citirajte i odgovorite

č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]
č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!

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]
Korisnički profil Pošaljite privatnu poruku
Sekanta
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 13. 09. 2009. (10:14:33)
Postovi: (48)16
Sarma = la pohva - posuda
= 6 - 1

PostPostano: 9:11 sri, 25. 5. 2011    Naslov: Citirajte i odgovorite

U kojoj predavaoni asistend Doko danas ima vjezbe?? I od koliko do koliko??
U kojoj predavaoni asistend Doko danas ima vjezbe?? I od koliko do koliko??


[Vrh]
Korisnički profil Pošaljite privatnu poruku
kkarlo
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 19. 05. 2010. (08:43:59)
Postovi: (1B2)16
Spol: zombi
Sarma = la pohva - posuda
64 = 72 - 8

PostPostano: 18:04 sri, 25. 5. 2011    Naslov: Citirajte i odgovorite

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:
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:
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 Embarassed
Znam, da bi trebao ic na konzultacije za to, ali stvarno sam u guzvi sa svim drugim obavezama na faksu... Rolling Eyes


[Vrh]
Korisnički profil Pošaljite privatnu poruku
akolak
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 27. 12. 2010. (16:52:59)
Postovi: (1D)16
Sarma = la pohva - posuda
= 5 - 1

PostPostano: 19:00 sri, 25. 5. 2011    Naslov: Citirajte i odgovorite

[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 Embarassed
Znam, da bi trebao ic na konzultacije za to, ali stvarno sam u guzvi sa svim drugim obavezama na faksu... Rolling Eyes


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]
Korisnički profil Pošaljite privatnu poruku
kkarlo
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 19. 05. 2010. (08:43:59)
Postovi: (1B2)16
Spol: zombi
Sarma = la pohva - posuda
64 = 72 - 8

PostPostano: 19:07 sri, 25. 5. 2011    Naslov: Citirajte i odgovorite

[quote="akolak"]

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.[/quote]
Ali pa to sam namjerno prepravio, jer mi je rečeno da kada brišem šestu riječ da onda trebam pobrisat i razmake iza nje, kako bi sedma riječ došla na njeno mjesto...?
Sad više neznam kako treba...?
akolak (napisa):


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.

Ali pa to sam namjerno prepravio, jer mi je rečeno da kada brišem šestu riječ da onda trebam pobrisat i razmake iza nje, kako bi sedma riječ došla na njeno mjesto...?
Sad više neznam kako treba...?


[Vrh]
Korisnički profil Pošaljite privatnu poruku
CROmpir
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 15. 09. 2009. (18:27:06)
Postovi: (B3)16
Sarma = la pohva - posuda
= 7 - 2

PostPostano: 20:12 sri, 25. 5. 2011    Naslov: Citirajte i odgovorite

Mislim da ti u zadatku jasno pise da brise 6. rijec... A to nisu razmaci ;) vjeruj mi...
Mislim da ti u zadatku jasno pise da brise 6. rijec... A to nisu razmaci Wink vjeruj mi...


[Vrh]
Korisnički profil Pošaljite privatnu poruku
kkarlo
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 19. 05. 2010. (08:43:59)
Postovi: (1B2)16
Spol: zombi
Sarma = la pohva - posuda
64 = 72 - 8

PostPostano: 19:58 čet, 26. 5. 2011    Naslov: Citirajte i odgovorite

[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 Wink 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]
Korisnički profil Pošaljite privatnu poruku
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (355F)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 20:22 čet, 26. 5. 2011    Naslov: Citirajte i odgovorite

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).
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 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.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
Sekanta
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 13. 09. 2009. (10:14:33)
Postovi: (48)16
Sarma = la pohva - posuda
= 6 - 1

PostPostano: 8:54 uto, 31. 5. 2011    Naslov: Citirajte i odgovorite

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??
mene bi zanimalo zasto ovaj code "prividno" radi??
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]
Korisnički profil Pošaljite privatnu poruku
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (355F)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 9:27 uto, 31. 5. 2011    Naslov: Citirajte i odgovorite

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.
Kao prvo, datoteke ti se pogresno zovu.

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.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
Sekanta
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 13. 09. 2009. (10:14:33)
Postovi: (48)16
Sarma = la pohva - posuda
= 6 - 1

PostPostano: 14:20 uto, 31. 5. 2011    Naslov: Citirajte i odgovorite

Hvala puno, sad je točan! :)
Hvala puno, sad je točan! Smile


[Vrh]
Korisnički profil Pošaljite privatnu poruku
Joker
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 19. 09. 2010. (10:19:16)
Postovi: (8C)16
Spol: žensko
Sarma = la pohva - posuda
= 11 - 11

PostPostano: 15:16 uto, 31. 5. 2011    Naslov: Citirajte i odgovorite

nevezano uz zadace ali,jedno kratko pitanje...kad se kaze da je duljina strina 4,znaci li to da ima 3 znaka i znak \0 ili ima 4 znaka i \0?
nevezano uz zadace ali,jedno kratko pitanje...kad se kaze da je duljina strina 4,znaci li to da ima 3 znaka i znak \0 ili ima 4 znaka i \0?


[Vrh]
Korisnički profil Pošaljite privatnu poruku
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (355F)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 19:02 uto, 31. 5. 2011    Naslov: Citirajte i odgovorite

Sto bi ti [tt]strlen()[/tt] rekao, koji od ta dva stringa ima duljinu 4?
Sto bi ti strlen() rekao, koji od ta dva stringa ima duljinu 4?



_________________
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.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
pupi
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 20. 12. 2009. (11:03:15)
Postovi: (92)16
Spol: žensko
Sarma = la pohva - posuda
= 12 - 5

PostPostano: 0:11 sri, 1. 6. 2011    Naslov: Citirajte i odgovorite

Mene isto zanima nešto nevezano za zadaće :oops:
Jeli
[code:1]krajL3->next = novi, krajL3 = novi;[/code:1]

isto što

[code:1]krajL3->next=novi;
krajL3=novi;
[/code:1]?
Mene isto zanima nešto nevezano za zadaće Embarassed
Jeli
Kod:
krajL3->next = novi, krajL3 = novi;


isto što

Kod:
krajL3->next=novi;
krajL3=novi;
?


[Vrh]
Korisnički profil Pošaljite privatnu poruku Posjetite Web stranice
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (355F)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 6:59 sri, 1. 6. 2011    Naslov: Citirajte i odgovorite

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.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
seba04
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 27. 07. 2009. (22:53:35)
Postovi: (6)16
Spol: muško
Sarma = la pohva - posuda
= 1 - 1

PostPostano: 11:51 sri, 1. 6. 2011    Naslov: Citirajte i odgovorite

Jel to samo meni ili su zadace ugasene. Javlja mi da aplikacija trenutno nije u funkciji i nemogu se nac na popisu prijavljenih a rijesil sam vec 2 skroz i 3 zadace po pola
Jel to samo meni ili su zadace ugasene. Javlja mi da aplikacija trenutno nije u funkciji i nemogu se nac na popisu prijavljenih a rijesil sam vec 2 skroz i 3 zadace po pola


[Vrh]
Korisnički profil Pošaljite privatnu poruku MSNM
<gogo>
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 09. 09. 2010. (09:09:31)
Postovi: (19)16
Spol: muško
Sarma = la pohva - posuda
= 5 - 4

PostPostano: 11:55 sri, 1. 6. 2011    Naslov: Citirajte i odgovorite

meni uredno radi. da ne gledas kojim slucajem programiranje 1 ? ;)
meni uredno radi. da ne gledas kojim slucajem programiranje 1 ? Wink


[Vrh]
Korisnički profil Pošaljite privatnu poruku
vriskica92
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 21. 01. 2011. (00:02:33)
Postovi: (14)16
Sarma = la pohva - posuda
= 1 - 0

PostPostano: 15:20 sri, 1. 6. 2011    Naslov: Citirajte i odgovorite

imam pitanje.... kako je moguće da identično rješenje za identičan zadatak jednoj osobi radi a jednoj ne??
imam pitanje.... kako je moguće da identično rješenje za identičan zadatak jednoj osobi radi a jednoj ne??


[Vrh]
Korisnički profil Pošaljite privatnu poruku
jabuka
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 21. 11. 2009. (15:53:14)
Postovi: (7C)16
Sarma = la pohva - posuda
= 5 - 0

PostPostano: 15:43 sri, 1. 6. 2011    Naslov: Citirajte i odgovorite

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]
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.

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]
Korisnički profil Pošaljite privatnu poruku
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (355F)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 16:33 sri, 1. 6. 2011    Naslov: Citirajte i odgovorite

[quote="vriskica92"]imam pitanje.... kako je moguće da identično rješenje za identičan zadatak jednoj osobi radi a jednoj ne??[/quote]

Verifikator probava na slucajnim primjerima. Moguce je da nekome ne nabasa na protuprimjer ako je rjesenje krivo.

Imam ja pitanje... kako je moguce da dvije osobe imaju identicno rjesenje?

@jabuka: Meni se cini da to nije dobro za "[tt]hnhnd[/tt]". IMO, nepotrebno kompliciran kod. Lakse je stalno pamtiti zadnja tri ucitana znaka, pa provjeravati sto treba.
vriskica92 (napisa):
imam pitanje.... kako je moguće da identično rješenje za identičan zadatak jednoj osobi radi a jednoj ne??


Verifikator probava na slucajnim primjerima. Moguce je da nekome ne nabasa na protuprimjer ako je rjesenje krivo.

Imam ja pitanje... kako je moguce da dvije osobe imaju identicno rjesenje?

@jabuka: Meni se cini da to nije dobro za "hnhnd". IMO, nepotrebno kompliciran kod. Lakse je stalno pamtiti zadnja tri ucitana znaka, pa provjeravati sto treba.



_________________
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.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
Prethodni postovi:   
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji 1. godine, preddiplomski studij Matematika -> Programiranje 1 i 2 Vremenska zona: GMT + 01:00.
Idite na Prethodno  1, 2, 3, 4, 5  Sljedeće
Stranica 4 / 5.

 
Forum(o)Bir:  
Ne možete otvarati nove teme.
Ne možete odgovarati na postove.
Ne možete uređivati Vaše postove.
Ne možete izbrisati Vaše postove.
Ne možete glasovati u anketama.
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2002 phpBB Group
Theme created by Vjacheslav Trushkin
HR (Cro) by Ančica Sečan