Zadatak strukture

Zadatak strukture

offline
  • Pridružio: 04 Jun 2009
  • Poruke: 4

Napisano: 04 Jun 2009 18:17

Ljudi molim vas pomagajte treba da resim jedan zadatak koji mi je profesor zadao ali nemogu ni da beknem da li bi mi neko mogao pomoci,unapred hvala

*Napisati program koji funkcijski ucitava niz struktura o uspehu ucenika na prijemnom ispitu,sledeceg oblika:
struct ucenik
{
char ime[30];
int poeni;
char rang;
};
I zatim funkcijski klasifikuje kandidate u tri kategorije A,B i C.Na ulazu se ucitavaju polja ime i poeni,a u obradi treba dodeliti vrednost trecem polju rang.
Pri tome se ucenicima koji su dobili bar 10poena vise od prosecnog br poena dodeljuje Akategorija,onima koji su postigli bar 10 poena manje od prosecnog brpoena u C,a svim ostalima B kategrija

Ako neko moze neka pomaze PLS!!!!!!!!!!!!!!!!!!!!!!!

Dopuna: 07 Jun 2009 14:07

Jel neko moze pomoci treba mi za sutra ???

Dopuna: 08 Jun 2009 14:25

ALooooo ljudi pls stvarno je hitno



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Software developer
  • Pridružio: 06 Sep 2005
  • Poruke: 3800
  • Gde živiš: Beograd

Sta ne znas da uradis?

Znas da ucitas podatke?
Vrtis neku petlju i ucitavas koliko ti treba, ako vec ne znas koliko ce biti koristi dinamicku alokaciju memorije(funkcije malloc, calloc, realloc)
Ucitas to i onda u obradi opet u petlji stavis da ti proverava u koju kategoriju pripada(Prvoeravas sa if-ovima npr) i onda to upisujes u rang.)
Jesi poceo da radis, dokle si stigao, i gde je zapelo?



offline
  • Pridružio: 04 Jun 2009
  • Poruke: 4

Napisano: 08 Jun 2009 20:33

#include<stdio.h>
#include<string.h>
#define N 10
#define D 30

typedef struct ucenik {
char ime [D+1];
int poeni;
char rang;
}ucenik;

main() {
ucenik razred[N];
char imeucenika[D+1], rang, poeni[4];
int i,j,m, n=0;

clrscr();
printf("Neuredjen niz prezimena i imena?\n\n");
do{
printf("%d. ime: ", n+1);
gets(razred[n].ime);
printf("%d. poeni: ", n+1);
gets(poeni);
razred[n].poeni = atoi(poeni);
}while(strcmp(razred[n++].ime,"...") !=0);

n--;
getch();
}

Dopuna: 08 Jun 2009 20:33

Molim te ako uspes da mi pomognes stvarno mi je potreban zadatak

offline
  • Pridružio: 11 Maj 2005
  • Poruke: 871
  • Gde živiš: Aleksinac - Niš

Prvo izračunaj prosek, sabereš sve poene i podeliš sa n.
Onda provrtiš kroz petlju i vidiš za svakog učenika za koliko se njegov br poena razlikuje od proseka i prema tome postaviš kategoriju.

offline
  • Pridružio: 04 Jun 2009
  • Poruke: 4

Tu sam zakucao,znam da treba ARITMETICKA SREDIna
tREBA DA IDE NESTO:
FLOAT PROSEK(UCENIK RAZRED[])
{
FLOAT PR:

e TO NZM STA DA RADIM I ONDA
RETURN PR;
}

offline
  • Pridružio: 11 Maj 2005
  • Poruke: 871
  • Gde živiš: Aleksinac - Niš

Pa samo provrti kroz petlju i saberi sve poene, posle toga podeliš sa brojem učenika.
Recimo:
float *prosek; prosek=0; for(i=0;i<n;i++) {     prosek+=ucenik[i].poeni; } prosek=prosek/n;
Nisam radio c godinama tako da možda nije dobra sintaksa ali ovako računaš prosek.

offline
  • Pridružio: 04 Jun 2009
  • Poruke: 4

Napisano: 08 Jun 2009 21:24

Probacu tako pa sta bude u svakom slucaju hvala ti do neba

Dopuna: 10 Jun 2009 16:40

Uspeo sam da uradim ceo zadatak Smile
Ali mi ostalo jos da napisem izvestaj moze li ko da mi pomogne ???
#include<stdio.h>
#include<string.h>
#define N 5
#define D 30

typedef struct ucenik {
char ime [D+1];
int poeni;
char rang;
} Ucenik;


float prosek(Ucenik razred[]);

main() {
Ucenik razred[N]={{"marko",30, '-'}, {"milan",45,'-'},{"kibo",25,'-'},{"pera",27,'-'},{"bojan",35,'-'} };
char imeucenika[D+1], rang, poeni[4];
int i,j,m, n=0;
float pr;

clrscr();
/*
printf("Neuredjen niz prezimena i imena?\n\n");
do{
printf("%d. ime: ", n+1);
gets(razred[n].ime);
printf("%d. poeni: ", n+1);
gets(poeni);
razred[n].poeni = atoi(poeni);
}while(strcmp(razred[n++].ime,"...") !=0);

n--;
*/
pr=prosek(razred);
printf("Prosek je %f\n",pr);


for(i=0; i<N; i++)
{
if(razred[i].poeni>pr+10) {
razred[i].rang= 'A';
}
else if(razred[i].poeni<pr-10) {
razred[i].rang= 'C';
}
else {
razred[i].rang='B';
}
}

printf("\n...Ime......Poeni.....Rang");
printf("\n --------- ");

for(i=0; i<N; i++)
{
printf("\n %s...%d...%c",razred[i].ime,razred[i].poeni,razred[i].rang);
}

getch();
}


float prosek(Ucenik razred[])
{

float prosek;
int i;
prosek=0;
for(i=0; i<N; i++)
{
prosek+=razred[i].poeni;
}
prosek=prosek/N;
return prosek;
}

Ko je trenutno na forumu
 

Ukupno su 799 korisnika na forumu :: 45 registrovanih, 12 sakrivenih i 742 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: A.R.Chafee.Jr., airsuba, alkatraz080, amaterSRB, Apok, armor, bigfoot, bladesu, bojank, brundo65, BSD, Bubimir, Chainsaw, Denaya, Djokislav, drimer, FileFinder, Frunze, goxin, Griffon vulture, Hans Gajger, JOntra, kjkszpj, krkalon, kunktator, Lieutenant, mercedesamg, Mercury, novator, operniki, Parker, Pohovani_00, repac, RJ, Romibrat, ruma, S2M, Shinobi, slonic_tonic, Srle993, stankolich, stegonosa, theNedjeljko, voja64, vukdra