Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

neznam ovaj zadacic rjesiti

[es] :: C/C++ programiranje :: C/C++ za početnike :: neznam ovaj zadacic rjesiti

[ Pregleda: 2413 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

digitall1982

Član broj: 73076
Poruke: 40
*.adsl.net.t-com.hr.



Profil

icon ne znam ovaj zadacic rjesiti16.04.2007. u 18:09 - pre 207 meseci
podzrav narode.
eo imam jedan zadacic za rjesiti a ne znam jebga.. pa ako bi neko bio tako dobar da bar nesto napravi..
bio bi jako zahvalan.
zadatak glasi ovako:

potrebno je definirati strukturu Broj ciji su elementi cijeli brojevi. u programu je potrebno otvoriti datoteku brojevi.txt u kojoj prvi broj predstavlja broj struktura. dinamicki je potrebno otvoriti odgovarajuci broj struktura tipa Broj i brojeve iz datoteke zapisati u strukture. nakon sto se zavrsi citanje datoteku je potrebno zatvoriti i ispisati vrijednosti clanova struktura obrnutim redosljedom. ispis realizirati funkcijom koja kao parametar uzima adresu strukture.

znam da se to rjesava u 10-ak min i da je dosta jednostavno al eto.

puno hvala
 
Odgovor na temu

digitall1982

Član broj: 73076
Poruke: 40
*.adsl.net.t-com.hr.



Profil

icon Re: ne znam ovaj zadacic rjesiti16.04.2007. u 19:21 - pre 207 meseci
isao sam nekako ovako
da procitam prvi broj iz datoteke, i da onda kreiram matricu od toliko polja, polja su tipa strukture, al ne ide mi sintaksa nikako u ovom c-u....
Code:


#include <stdio.h>
#include <stdlib.h>


struct broj {
    int prvi;
    int drugi;
    int treci;
};

struct broj matrica[]; /* ovo bi tebalo biti u main-u predpostavljam i izgledati ovako struct broj matrica[brojstruktura]; ali javi odma gresku */
    
int main(void)
{
    FILE * datoteka;
    int brojstruktura;
    float podatak;
    datoteka=fopen("brojevi.txt","r");
    fscanf(datoteka,"%d",&brojstruktura);
    printf("broj Struktura je: %d",brojstruktura);
    
    struct broj matrica;     /* tu mi javi gresku kako god da okrenem */

    //matrica=(struct broj)calloc(brojstruktura,sizeof(struct broj));     /* tu bi trebao alocirati memoriju, pretpostavljam ovako */

    //for (i=0;i<brojstruktura;i++){
                       
    // tu bi valjda trebao proci petlju toliko puta koliko ima polja u matrici i napuniti strukture
             //}
    
return 0;
}


 
Odgovor na temu

Mali Misha
Mihajlo Anđelković
NBGD

Član broj: 79396
Poruke: 379
89.190.198.*

ICQ: 195487525
Sajt: cpptea.com


+1 Profil

icon Re: ne znam ovaj zadacic rjesiti16.04.2007. u 21:19 - pre 207 meseci
Pošto se o ovome ništa ne kaže, pretpostavljam da struktura Broj ima u sebi samo jedan ceo broj. Dakle evo kako bi odradio unos podataka:

Code:
#include <stdio.h>
#include <stdlib.h>

struct Broj {

    int vrednost;

};

int main(void)
{
    int n, i;
    struct Broj * brojevi = 0;
    FILE * fp = fopen("brojevi.txt","r");

    // ovde čita broj elemenata (prvi broj u fajlu)
    fscanf(fp,"%d",&n);

    // ovo je dinamičko alociranje prostora za niz od n
    // elemenata tipa struct Broj
    brojevi = (struct Broj*) malloc(sizeof(struct Broj)*n);

    // učitavanje n elemenata iz fajla
    for(i=0;i<n;i++)
    {
        // Prvo se uzme odgovarajući elemenat iz niza tipa
        // struct Broj, pa se onda u njegovu članicu
        // "vrednost" upiše sledeća pročitana vrednost
        fscanf(fp,"%d",&brojevi[i].vrednost);
    }

    // zatvaranje fajla
    fclose(fp);

    // ...
    
    // Štampanje niza ide ovde

    // ...
    
    free(brojevi);

    return 0;
}

Ostaviću ti da razmisliš o tome kako bi odradio štampanje unetog niza u obrnutom redu.
Ipak se ++uje.
 
Odgovor na temu

digitall1982

Član broj: 73076
Poruke: 40
*.adsl.net.t-com.hr.



Profil

icon Re: ne znam ovaj zadacic rjesiti17.04.2007. u 15:12 - pre 207 meseci
hvala puno, inace u meduvremenu sam uspio rjesiti zadatak... smjesno je lagan al eto..

Code:


#include<stdio.h>
#include<stdlib.h>

struct broj
{
    int x;
};

struct broj br;

void unos (struct broj *b, int x)
{
    b->x=x;
}

ispis(struct broj *b)
{
    printf("%d ",b->x);
}

int main(void)
{
    struct broj *br;
             int i,n,c;
    FILE *dat1;
    dat1=fopen("brojevi.txt","r");
    fscanf(dat1,"%d",&n);
    br=(struct broj*)calloc(n,sizeof(struct broj));
    
    for(i=0;i<n;i++)
    {
        fscanf(dat1,"%d",&c);
        unos(br+i,c);
    }
    fclose(dat1);

             printf("\n");

    for (i=n-1;i>-1;i--)
        ispis(br+i);

}

 
Odgovor na temu

Mali Misha
Mihajlo Anđelković
NBGD

Član broj: 79396
Poruke: 379
89.190.198.*

ICQ: 195487525
Sajt: cpptea.com


+1 Profil

icon Re: ne znam ovaj zadacic rjesiti17.04.2007. u 17:01 - pre 207 meseci
Fali free. Mogao bi i return na kraj da staviš.
Ipak se ++uje.
 
Odgovor na temu

[es] :: C/C++ programiranje :: C/C++ za početnike :: neznam ovaj zadacic rjesiti

[ Pregleda: 2413 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.