Results 1 to 7 of 7
Thread: ìàëêî ïîìîù çà ïðîãðàìà íà ñ++
Hybrid View
-
26th February 2009 18:06 #1Registered User
Join Date: Feb:2009
Location: Â.Òúðíîâî
Posts: 11
ìàëêî ïîìîù çà ïðîãðàìà íà ñ++
Èìàì äà íàïðàâÿ ñëåäíàòà ïðîãðàìà:
Çà ãðóïà ñòóäåíòè çà çàäàäåíè èìå, ÅÃÍ, ôàê. ¹, îöåíêè ïî 10 äèñöèïëèíè, ñðåäåí óñïåõ. Äà ñå ñúçäàäå ïðîãðàìà, èçïîëçâàùà ïîäïðîãðàìè çà:
-ñúçäàâàíå íà ôàéë ñ èíôîðìàöèÿ çà ãðóïàòà ñòóäåíòè,áåç äà ñå âúâåæäà ñðåäåí óñïåõ;
-èç÷èñëÿâàíå íà ñðåäíèÿ óñïåõ íà âñåêè åäèí îò ñòóäåíòèòå;
-íàìèðàíå íà áðîÿ íà ïðåêúñâàùèòå æåíè (ïðåêúñâàò ñòóäåíòè ñ ïîâå÷å îò 2 äâîéêè).
Òîâà ñúì ñúòâîðèë äî ìîìåíòà:
#include <stdio.h>
#include <conio.h>
struct student{
char ime[31]; char EGN[11]; long FN; int oc[10];float sru;
};
FILE *fp;
char fime[31];
student stud;
// vuvejdane na 1 sudent
void readStud(student *st) {
int i;
printf("ime:");gets(st->ime);
printf("egn:");gets(st->EGN);
printf("fak.nomer:");scanf("%ld",&st->FN);
printf("ocenki po 10 disiplini\n");
for (i=0;i< 10;i++){
printf("Po %d-a disciplina:",i+1);scanf("%d",&st->oc[i]);
}
int j,s=0;
for(j=0;j<10;j++) s+=st->oc[j];
st->sru=s/10.0;
getchar();
}
//izvejdane na studenti
void writeStud(student st) {
int i;
printf("ime: %s\n",st.ime);
printf("egn: %s\n",st.EGN);
printf("fak.nomer:%06ld\n",st.FN);
printf("Ocenki: ");
for (i=0;i<10;i++) printf("%d ",st.oc[i]);
printf("\n");
printf("Sreden uspeh: %4.2f\n",st.sru);
}
// suzdavane na fail
void sazdaj(){
fp=fopen(fime,"w");fclose(fp);
printf("failut e suzdaden!\n");
}
//dobavqne kym failut
void dobavi (){
fp=fopen(fime,"a+b");
char ch;
do {
readStud(&stud);
fwrite(&stud,sizeof(stud),1,fp);
printf("o6te (d/n)?");ch=getchar();getchar();
}while (ch!='n');
fclose (fp);
}
void spisukall() {
int k=0;
fp = fopen(fime,"rb");
fread(&stud,sizeof(stud),1,fp);
while (!feof(fp)) {
writeStud(stud);
k++;
fread(&stud,sizeof(stud),1,fp);
}
fclose(fp);
printf("Namereni: %d\n",k);
}
//glavna programa
main () {
char otg[3];
printf("zadaite ime na failut:");gets(fime);
do {
printf(" Menu\n");
printf(" 1. Suzdavane na prazen fail\n");
printf(" 2. Dobavqne kum failut\n");
printf(" 3. Obsht spisuk\n");
printf(" Izbor (0-za krai): ");gets(otg);
switch (otg[0]) {
case '1':sazdaj();break;
case '2':dobavi();break;
case '3':spisukall();break;
}
}while (otg[0]!='0');
}
Ùå ñúì áëàãîäàðåí àêî íÿêîé ìè ïîìîãíå ñ ïîñëåäíîòî óñëîâèå ! È ìîëÿ áåç êîìåíòàðè
îò òèïà "Òîâà å ìíîãî ëåñíî" .Àêî áåøå òàêà íÿìàøå äà ìîëÿ çà ïîìîù.
-
26th February 2009 22:08 #2Registered User
Join Date: Dec:2007
Location: Sofia
Posts: 366
Ëåñíî å

Ôóíêöèÿòà êàòî ñòðóêòóðà ùå å ïîäîáíà íà spisukall()
1. ×åòåø äàííèòå çà ñòóäåíòèòå åäèí ïî åäèí
2. Çà òåêóùèÿ ïðî÷åòåí ñòóäåíò, áðîèø êîëêî äâîéêè èìà, ò.å. êîëêî îò åëåìåíòèòå íà ìàñèâà îñ[] ñà äâîéêè.
3. Àêî äâîéêèòå ñà ïîâå÷å îò 2 íà áðîé, ïðîâåðÿâàø äàëè ñòóäåíòà å æåíà ïî EÃÍ-òî.
4. Àêî å æåíà, óâåëè÷àâàø ñ 1 íÿêàêâà ïðîìåíëèâà - áðîÿ÷ íà ïðåêúñíàëèòå æåíè.
5. Îòèâàø íà òî÷êà 1.
"Íàé-ñëîæíà" å òî÷êà 3, ìàé äàëè å æåíà ñå îïðåäåëÿøå ïî ïîñëåäíàòà öèôðà îò ÅÃÍ-òî, íî ìîæå è äà áúðêàì.
-
26th February 2009 23:10 #3Registered User
Join Date: Jul:2005
Location: Sofiq
Posts: 2,798
-
27th February 2009 17:56 #4Registered User
Join Date: Feb:2009
Location: Â.Òúðíîâî
Posts: 11
2. Çà òåêóùèÿ ïðî÷åòåí ñòóäåíò, áðîèø êîëêî äâîéêè èìà, ò.å. êîëêî îò åëåìåíòèòå íà ìàñèâà îñ[] ñà äâîéêè.
Åé òîâà ìè å òðóäíî äà ãî íàïðàâÿ
-
27th February 2009 23:02 #5Registered User
Join Date: Dec:2007
Location: Sofia
Posts: 366
Code:student stud; // äà ïðåäïîëîæèì, ÷å äàííèòå âå÷å ñà ïðî÷åòåíè òóê int broj = 0; // áðîé äâîéêè íà äàäåí ñòóäåíò, â íà÷àëîòî ãî íóëèðàø for (int idx = 0; idx < 10; idx++) { if (stud.oc[idx] == 2) { broj++; // óâåëè÷àâàìå áðîÿ÷à íà äâîéêèòå ñ 1 } } if (broj > 2) { // ñòóäåíòà å ñ ïîâå÷å îò 2 äâîéêè }
-
5th March 2009 00:14 #6Registered User
Join Date: Feb:2009
Location: Â.Òúðíîâî
Posts: 11
-
5th March 2009 00:27 #7Registered User
Join Date: Dec:2007
Location: Sofia
Posts: 366
Äàë ñúì òè ïðèìåð ñàìî çà åäèí ñòóäåíò. Àêî ñè âìúêíàë êîäà â öèêúë ïî âñè÷êè ñòóäåíòè, ïðîâåðè äàëè:
1. Íóëèðàø ïðîìåíëèâàòà broj ïðè âñÿêà èòåðàöèÿ íà öèêúëà
2. Ñòðóêòóðàòà stud å ïðàâèëíî ïðî÷åòåíà îò ôàéë èëè èíèöèàëèçèðàíà ïî íÿêàêúâ äðóã íà÷èí ïðè âñÿêà èòåðàöèÿ íà öèêúëà
Áåç äà âèæäàì èñòèíñêèÿ êîä, å òðóäíî äà ïîçíàÿ êúäå òî÷íî å ïðîáëåìà.




Reply With Quote

Lenovo ThinkPad 15 èëè IdeaPad 15
5th May 2023, 22:16 in Ìîáèëíè êîìïþòðè