Премини към съдържанието
  • Добре дошли!

    Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

    Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

     

Архивирана тема

Темата е твърде стара и е архивирана. Не можете да добавяте нови отговори в нея, но винаги можете да публикувате нова тема, в която да продължи дискусията. Регистрирайте се или влезте във вашия профил за да публикувате нова тема.

pavel81

Помогнете да довърша C++

Препоръчан отговор


Здравейте, започнах сам но се затрудних на създаване на файл и четене от файл ето цялото условие на задачата: 

Да се състави обектно-ориентирана програма с до 300 обекта за отчитане на общия хорариум часове, в даден семестър от обучението. Програмата да има следните характеристики:
1. За всеки семестър да се въвеждат следните данни:
- номер на семестър;
- име на учебната дисциплина;
- брой часове на дисциплината - общ = лекции + упражнения;
2.  Да се предвидят следните допълнителни възможности:
- извеждане броя на обектите в програмата и максимално възможният им брой;
- добавяне на нови данни;
- разглеждане на данните за определен номер;
- корекция на данните за определен номер;
- запис и четене на данните във файл;
- да извежда на екрана дисциплините и часовете за дисциплините в избран семестър.
Последните две ме затрудниха пиша на Microsoft Visual 6. Моля помогнете, Ето кода, като за case 4 и case 5  не сработват правилно:

#include "stdafx.h"#include <iostream.h>#include <string.h>#include <fstream.h>class Semester{public:	void GetData();	void Display();	void Write(ofstream&ofile);	void Read(ifstream &ifile);private:	char disc [40];	unsigned int sem;    unsigned int lek;	unsigned int upr;};void Semester::GetData(){	cout<<"Semester = ";cin>>sem;	cout<<"Ime na Uchebna disciplina ";cin>>disc;	cout<<"Broi lekcii =";cin>>lek;	cout<<"Broi uprajneniq =";cin>>upr;}void Semester::Display(){	cout<<"Semester: "<<sem<<" Uchebna Disciplina: "<<disc<<endl;	cout<<"Broi lekcii: "<<lek<<"  Broi uprajneniq: "<<upr<<"  Obsht horarium = "<<lek+upr<<endl;}void Semester::Write(ofstream & ofile){	ofile<<" "<<sem<<" "<<disc<<" "<<lek<<" "<<upr<<endl;}void Semester::Read(ifstream & ifile){	ifile>>sem>>disc>>lek>>upr;}int main(){	Semester s[300];	int el=0,m; //Broi na elementite	do	{		cout<<el<<" Element ot max 300n";		cout<<"1 - Dobavqne na novi dannin";		cout<<"2 - Razglejdane na dannite na opredelen nomern";		cout<<"3 - Korekciq na danni za opredelen nomern";		cout<<"4 - Zapis na dannite vav failn";		cout<<"5 - Chetene na dannite ot failn";		cout<<"6 - Disciplini i chasove v semestarn";		cout<<"0 - Izhodn";		cin>>m;			switch(m)		{		case 1:			s[el].GetData();			el++;			cout<<"   "<<endl;			break;		case 2:		{			int k;			cout<<"Vavedi nomer 1 do " <<el<<" ";			cin>>k;			s[k-1].Display();			cout<<" "<<endl;			break;		}		case 3:			{			int k;			char c;			cout<<"Vavedi nomer 1 do "<<el<<" " ;			cin>>k;			cout<<"Vashite danni sa: ";			s[k-1].Display();            cout<<" "<<endl;			cout<<"Iskate li da promenite dannite Y/N ";cin>>c;			if (c=='Y'|| c=='y')				s[k-1].GetData();			cout<<" "<<endl;			break;			}		case 4:			{							Semester s[300];			ofstream outFile;					outFile.open("Semester.txt", ios::out);	       		el++;					for (int i = 0; i<el ; i++)			{									s[el].GetData();		    	cout<<"   "<<endl;								s[i].Write(outFile);} 	        outFile.close();			break;			}		case 5:			{				ifstream inFile;		//4etene ot fajl				inFile.open("Semester.txt", ios::in);								for (int i = 0; i <el ; i++)				{										s[i].Display();					cout<<"  "<<endl;									}				inFile.close();				break;			}		}	}	while(m);	return 0;	}

 

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

  • Разглеждащи това в момента   0 потребители

    Няма регистрирани потребители разглеждащи тази страница.

  • Подобни теми

    • от Анита Х. Трифонова
      Молитва  - 5в клас  по музика в час - 2012г  СОУ"Ст.Заимов"Плевен
    • от Анита Христова Трифонова
      Гълъб иска да е в час с 5а клас  А.Х.Т. sekirata cekupama
    • от georgi999
      Здравейте от доста време ме затрудняват едни въпросчета между които винаги си мисля че има повече верни .Благодаря предварително
      1ВЪПРОС-Кое от следните твърдения е вярно
      А)всеки път когато създаваме и компилираме нов клас се създава съответен обект от class
      Б)всеки път когато създаваме и компилираме нов клас се създава класа class
      В) jvm не използва класа class
      2ВЪПРОС -кое от твърденията не е вярно ?
      А) конструкторите могат да се задават подразбиране
      Б)конструкторите са полиморфни и претоварени
      В)конструкторите не са полиморфни но са претоварени
      3 ВЪПРОС- Кое от следните твърдения не е вярно ?
      А)final, референция не означава че не може да се променя рефенираният от нея обект
      Б)всички private методи в един клас по подразбиране са final и могат да бъдат предефинирани 
      В)final референция означава че не може да се обвърже повторно в нови обекти.
    • от Анита Христова Трифонова
      Мачкаш нещо музика текст А.Х.Т.sekirata cekupama  пеят ученици от 5г клас СОУ"Ст.Заимов" Плевен 2014г
    • от Анита Х. Трифонова
      За Коледа  трио - изпълняват ученици от шести клас СОУ"Ст.Заимов" Плевен 2012г
  • Дарение

×
×
  • Добави ново...