5 (D)variantas 1. Sukurkite lizdini dinamiska sarasa aprasancius tipus ir nubraizykite lizdinio dinamisko saraso schema. Uzrasykite metoda kuris suformuotu lizdini dinamiska sarasa, kai duomenys ivedami is failo. Pateikite paaiskinimus. struct TSar { int n; // ?rašyt? objekt? kiekis int L[4]; // Objekt? masyvas TSar *sek; // Kito lizdo adresas }; class TKlase { TSar *P; public: void ivesti(char *fv); void IrasytiObjekta(TSar *&G, int s); }; void TKlase::ivesti(char *fv) { ifstream f; f.open(fv); TSar *G; int s; P = new TSar; P->sek = NULL; // Fiktyvaus lizdo suk?rimas P->n = 4; G = P; while (!f.eof()) { f >> s; IrasytiObjekta (G, s); } G = P; P = P->sek; // pr - sukurto s?rašo rodykl? delete G; // Šalinamas fiktyvus elementas f.close(); } void TKlase::IrasytiObjekta(TSar *&G, int s) { if (G->n == 4) { // Jeigu lizdas pilnas G->sek = new TSar; G = G->sek; G->sek = NULL; G->n = 0; // Naujo lizdo paruošimas } G->L[G->n] = s; G->n += 1; // Objekto ?rašymas ? lizd? } 2. Kada butina klaseje sudaryti perdengta priskirimo operacija? Pateikite pvz Yra dar vienas argumentas, kodėl svarbu išmokti operacijų perdengimą – C++ kalba nutylėtai perdengia priskyrimo operaciją. Tačiau nutylėtas perdengimas yra netinkamas klasėms, turinčioms dinaminių kintamųjų class TKL { TSarasas *P; }; struct TSarasas { int *N; int kiek; TSarasas *kitas; }; Čia būtų galima perdengti operatorių + taip, kad A = B + C reikstu, kad objekto A kintamasis i butu lygus Objektu B ir C kintamuju i sumai. 3. Duota klase class TMase { int kiek; // elementu kiekis masyve int *Ad // dinaminis masyvas public; Tmase(); }; Apibrezkime siai klasei operatoriu &, taip kad sios klases objektas galetu dalyvauti israiskoje (A=B &C, & reiskia ,kad rezultatu masyvas tures visus pirmojo masyvo elementus ir neigiamus antrojo masyvo elementus TMase TMase::operator &(const TMase iskur) { TMase rez; int kiekbus = 0; for (int i = 0; i kiek; i++) { kiekbus++; } for (int i = 0; i kiek; i++) { rez.Ae[kiekbus] = this->Ae[i]; kiekbus++; } for (int i = 0; i > sakos >> kiekis; in.close(); } void TKrumas::Isvesti(char *failas) { Isvesti(failas); ofstream out(failas); out
Šį darbą sudaro 515 žodžiai, tikrai rasi tai, ko ieškai!
★ Klientai rekomenduoja
Šį rašto darbą rekomenduoja mūsų klientai. Ką tai reiškia?
Mūsų svetainėje pateikiama dešimtys tūkstančių skirtingų rašto darbų, kuriuos įkėlė daugybė moksleivių ir studentų su skirtingais gabumais. Būtent šis rašto darbas yra patikrintas specialistų ir rekomenduojamas kitų klientų, kurie po atsisiuntimo įvertino šį mokslo darbą teigiamai. Todėl galite būti tikri, kad šis pasirinkimas geriausias!
Norint atsisiųsti šį darbą spausk ☞ Peržiūrėti darbą mygtuką!
Mūsų mokslo darbų bazėje yra daugybė įvairių mokslo darbų, todėl tikrai atrasi sau tinkamą!
Panašūs darbai
Atsisiuntei rašto darbą ir neradai jame reikalingos informacijos? Pakeisime jį kitu nemokamai.
Pirkdamas daugiau nei vieną darbą, nuo sekančių darbų gausi 25% nuolaidą.
Išsirink norimus rašto darbus ir gauk juos akimirksniu po sėkmingo apmokėjimo!