tcaka35 Публикувано Май 7, 2014 Report Share Публикувано Май 7, 2014 Имам курсова задача по програмиране на С++ което никак не разбирам.Не знам как да се справя. Ако някой може да помогне с програмата ще съм много благодарен. Това е условието на задачата: За група студенти са зададени ЕГН,фак.№, оценките по 10 дисциплини, среден успех.Да се създаде програма на С++, използваща подпрограми за:създаване на масив с информация за групата студенти, без да се въвежда среден успех; изчисляване на средния успех на всеки един от студентите; изчисляване на средния успех по първата дисциплина Цитирай Link to comment Сподели другаде More sharing options...
tcaka35 Публикувано Май 8, 2014 Author Report Share Публикувано Май 8, 2014 Имам това трябва ми подпрограма за третото условие, не знам как да я направя/подпрограмата/ #include<stdio.h>#include<stdlib.h>struct student{ char ime[40]; long fn; char egn[11]; int ocenki[10];};student grupa[30],stud;int st;void vhod(student*stud){ printf("Ime na studenta:");gets(stud->ime); printf("EGN na studenta:");gets(stud->egn); printf("Fak. N na studenta:");scanf("%ld",&stud->fn); for(int i=0;i<10;i++){ printf("Vyvedete ocenka po disciplina N %d:",i+1);scanf("%d",&stud->ocenki); } getchar();}float sruspeh(int oc[10]){ int sum=0; for(int j=0;j<10;j++)sum+=oc[j]; return(float)sum/10; } int main(){ do{ printf("Vyvedete broq na vsichki studenti:");scanf("%d",&st);getchar(); }while((st<1)||(st>30)); for(int i=0;i<st;i++)vhod(&grupa); for(int i=0;i<st;i++) printf("Sredniq uspeh na %s e:%2.1f\n",grupa.ime,sruspeh(grupa.ocenki)); printf("Vyvedete koito i da e simvol za krai na programata");scanf("%k");} Цитирай Link to comment Сподели другаде More sharing options...
as9993 Публикувано Май 8, 2014 Report Share Публикувано Май 8, 2014 Сигурен ли сте, че тази програма е писана на C++? Какво не разбирате? Събирате всички оценки в една променлива, слагате и една променлива указваща броя на оценките и просто делите. Щом знаете какво е указател, дефиниране на структура, цикъл с пред и постусловие и т.н., едва ли ще ви затрудни третата подточка. Цитирай Link to comment Сподели другаде More sharing options...
tcaka35 Публикувано Май 9, 2014 Author Report Share Публикувано Май 9, 2014 Сигурен ли сте, че тази програма е писана на C++? Какво не разбирате? Събирате всички оценки в една променлива, слагате и една променлива указваща броя на оценките и просто делите. Щом знаете какво е указател, дефиниране на структура, цикъл с пред и постусловие и т.н., едва ли ще ви затрудни третата подточка.Не съм сигурен дадоха ми я от готова курсова работа при която третото условие е различно от моето, просто изрязах излишното. Ако можех и разбирах от програмиране щях сам да си я направя нямаше да моля за помощ някой друг, но явно никой няма да се отзове. Цитирай Link to comment Сподели другаде More sharing options...
as9993 Публикувано Май 9, 2014 Report Share Публикувано Май 9, 2014 Ами ако наистина ви я искат на C++, то горната курсова едва ли ще мине. Принципа обаче е същия, тоест черната работа е свършена, единственото, което трябва да се направи е да се "сглоби" със синтаксиса на C++. Надявам се, че правите разлика между C и C++, тъй като са съвсем различни езици. Пак питам, какво точно не е ясно - как се прави подпрограма, какъв е алгоритъма за смятане или нещо друго? С удоволствие ще помогна, но ако положите усилия, за да си заслужите оценката! Сам разбирате, че някои хора ще седят и ще си направят нещата изцяло сами, ще получат 3 или 4, на вас някой ще ви напише курсовата и ще получите 5 или 6. Някак си не е честно. Цитирай Link to comment Сподели другаде More sharing options...
tcaka35 Публикувано Май 9, 2014 Author Report Share Публикувано Май 9, 2014 Ами ако наистина ви я искат на C++, то горната курсова едва ли ще мине. Принципа обаче е същия, тоест черната работа е свършена, единственото, което трябва да се направи е да се "сглоби" със синтаксиса на C++. Надявам се, че правите разлика между C и C++, тъй като са съвсем различни езици. Пак питам, какво точно не е ясно - как се прави подпрограма, какъв е алгоритъма за смятане или нещо друго? С удоволствие ще помогна, но ако положите усилия, за да си заслужите оценката! Сам разбирате, че някои хора ще седят и ще си направят нещата изцяло сами, ще получат 3 или 4, на вас някой ще ви напише курсовата и ще получите 5 или 6. Някак си не е честно.Всичко не е ясно.Без курсова в Русенския университет не допускат на изпит.А относно оценката не ми пука колко ще ми пишат важното е да вземем изпита . Нямам намерение да го работя това аз съм се утвърдил в сферата в която работя с над 20 годишен стаж. Цитирай Link to comment Сподели другаде More sharing options...
as9993 Публикувано Май 9, 2014 Report Share Публикувано Май 9, 2014 Тази примерна курсова работа е писана на C, сигурен ли сте, че ви трябва да е написана на C++? Както вече казах, това са два напълно различни езика. EDIT - сега ми остана малко време и реших да погледна кода. Оказа се, че имаше доста грешки, които изчистих. За да се компилира правилно на GCC се налага да се компилира с флаг -std=c99Прикачам оправения код, като оставям на вас да проверите дали работи и смята коректно.По принцип би трябвало асистентите да се "заяждат" за валидацията на входните данни, така че, след като се направи курсовата работа е добре да се прави и такава валидация за входни данни. #include<stdio.h> #include<stdlib.h> typedef struct student { char ime[40]; long fn; char egn[11]; int ocenki[10]; }student; student grupa[30],stud; int st; void vhod(student*stud) { printf("Ime na studenta:");gets(stud->ime); printf("EGN na studenta:");gets(stud->egn); printf("Fak. N na studenta:");scanf("%ld",&stud->fn); for(int i=0;i<10;i++){ printf("Vyvedete ocenka po disciplina N %d:",i+1);scanf("%d",&stud->ocenki[i]); } getchar(); } float sruspeh(int oc[10]){ int sum=0; for(int j=0;j<10;j++)sum+=oc[j]; return(float)sum/10; } int main(){ do{ printf("Vyvedete broq na vsichki studenti:");scanf("%d",&st);getchar(); }while((st<1)||(st>30)); for(int i=0;i<st;i++)vhod(&grupa[i]); for(int i=0;i<st;i++) printf("Sredniq uspeh na %s e:%2.1f\n",grupa[i].ime,sruspeh(grupa[i].ocenki)); printf("Vyvedete koito i da e simvol za krai na programata");scanf("%k"); } Цитирай Link to comment Сподели другаде More sharing options...
tcaka35 Публикувано Май 10, 2014 Author Report Share Публикувано Май 10, 2014 А за третото условие в този вид на кода ще помогнете ли? Цитирай Link to comment Сподели другаде More sharing options...
Препоръчан пост
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.