Премини към съдържанието

ValentinMitev1

Потребител
  • Публикации

    13
  • Регистрация

  • Последно онлайн

Харесвания

1 Неутрална репутация

Всичко за ValentinMitev1

  • Титла
    Потребител

Последни посетители

Информацията с последните посетители на профила ви е изключена и не се показва на другите потребители.

  1. Точно за такъв става въпрос. Просто така съм го написал, по инерция.
  2. Не чакам нищо на готово, пробвал съм ги и двата кода. Единия не тръгва, а другия не ми върши работа. Щом съм стигнал до там, че да пиша във форума, значи наистина имам нужда от помощ.
  3. Здравейте! Трябва да направя програма на анимиран дигитален часовник в c++(graphics.h). Целта е числата да се променят анимирано- да се показват отдолу и да се скриват горе (флип часовник). Ще съм благодарен, ако някой може да ми помогне.
  4. Благодаря ти за помоща, оценявам го!
  5. Здравейте! Имам нужда от помощ за сортиравката на една програма. Тя е следната: Да се състави програма, която да съдържа следните функции: 1.Съставяне на динамично представен дек с целочислени данни, съдържащи се във външен файл. 2.Сортиране на елементите в структурата по метода :чрез просто вмъкване ( полуобмен); 3. Търсене на минималния елемент в интервала между максималния и минималния елемент по стойност кратен на 3 и последващото му изтриване от структурата. 4.Запис на изходните резултати във външей файл. Главна функция main() -с меню за избор на функции и проверка за състоянието на данните. Това е програмата в непълен вид. Ако някой има малко свободно време, моля да я погледне. Благодаря! #include<iostream> #include<fstream> #include<stdlib.h> #include<stdio.h> using namespace std; int temp; int br = 1; void push_l(int n); void push_r(int n); int pop_l(int &n); int pop_r(int &n); struct elem //структура на дек { int key; //съдържа стойността на елемента elem *next; //сочи към следващия елемент } *_left = NULL, *_right = NULL; //left сочи към краиния ляв елемент,а right сочи към крайния десен void push_l(int n) //добавяне на елемент със стойност n { elem *p; //създаване на указател p от тип elem p = _left; //p приема стойността на крайния ляв елемент _left = new elem; //създава нов елемент сочен от left _left->key = n; //установяване на n заа стойност на крайния ляв елемент _left->next = p; //следващия елемент left приема стойността на p if (right == NULL) //ако няма краен десен елемент, то left става такъв { _right = _left; } } void push_r(int n) //добавяне отдясно на елемент със стойност n { elem *p; //създаване на указател p от тип elem p = _right; //p приема стойността на краиния десен елемент _right = new elem; //създаване на нов елемент сочен от right _right->key = n; //установяване на n за стойнот на крайния десен елемент _right->next = NULL; //следващия елемент right приема NULL if (_left == NULL) //ако няма краен ляв елемент { _left = _right; //крайният ляв приема стйността на крайния } else //десен, в противен случей p->next = _right; // следващият елемент райт приема стойността на крайния десен елемент } int pop_l(int &n) //извличане на елемент отляво { elem *p; //създаване на указател p от тип elem if (_left) //проверка за наличие на краен ляв елемент { n = _left->key; //n приема стойността на крайния ляв елемент p = _left; //p сочи крайния елемент _left = _left->next; //left сочи следващият негов елемент if (left == NULL) //ако няма краен ляв елемент _right = NULL; //указателят right се занулява delete p; //изтриване на указателя p return 1; } else return 0; } int pop_r(int &n) //извличане на елемент отдясно { elem *p; //създаване на указател p от тип elem if (right) //проверка за наличие на краен десен елемент { n = _right->key; //n приема стойността на крайния десен елемент if (_left == _right) //ако крайния десен елемент=крайния ляв { delete _right; //изтриване на крайния десен _left = _right = NULL; //нулиране на указателите } else { p = _left; //p приема стойността на крайния ляв елемент while (p->next != _right) //докато следващия p елемент //е различен от крайния десен p = p->next; //p преминава на следващия елемент n = _right->key; //n приема стойността на крайния десен p->next = NULL; //указателят за следващият на p се нулира delete _right; //изтриване на крайния десен елемент _right = p; //крайният десен приема стойността на p } return 1; } else return 0; } void output(ofstream& ostr, int n) //за запис във файл { ostr << n << endl; } void get(int n) //достъп до n-тия елемент { int i, t; for (i = 1; i<br; i++) //цикъл за обхождане на дека { pop_l(t); //извличане на крайния ляв елемент if (i == n) //проверка за достигнат n-ти елемент { temp = t; //запомня стойността му } push_r(t); //добавяне на извлечения елемент от дясно } } void set(int n, int d) //установяване на стойност d на n-тия елемент { int t; for (int i = 1; i<br; i++) //цикъл за обхождане на дека { pop_l(t); //извличане на крайния ляв елемент if (i == n) //проверка за достигане n-тия елемент { t = d; //установяване на новата стойност } push_r(t); //добавяне на извлечения елемент отдясно } } void list() //извеждане на елементите на дека { cout << "\n DEK:"; for (int i = 1; i<br; i++) //цикъл за обхождане { get(i); //извличане на стойността на съответният елемент cout << "\t" << temp; //извеждане на екран } } void mergesort(int a[] = 0, int n = 0)//функцията разделя масива рекурсивно на две части//след което функцията merge ги обединява { if (n<2) return; int _left = n / 2, _right = n - _left; mergesort(a, _left); mergesort(a + _left, _right); int *p = new int[n]; for (int i = 0; i<n; i++) a = p; delete[]p; } void search() //търсене на най-големия елемент //кратен на 5 и по-малък от макс кратно число на 7 { void mergesort(int a[] = 0, int n = 0); //сортиране на дека ако не е бил сортиран int t = 0; for (int i = 1; i<br; i++) //цикъл за обхождане { get(i); //извличане на ития елемент if (temp % 5 == 0) //проверка за точно делене на 5 t = temp; //запомняне на стойността му } cout << "\n Maksimalen element kraten na 5: " << t << endl; cout << "\n Elementi kratni na 7 i po-malkiq ot maksimalniq kraten na 5: " << endl; for (int i = 1; i<br; i++) //цикъл за обхождане { get(i); //извличане на ития елемент if (temp % 7 == 0 && temp<t) //проверка за точно делене на 7 и по-малк от { //макс кратен на 5 cout << "\t" << temp; //извеждане } } } int main() { system("chcp 1251"); int ch, m; do { cout << "\n\n\t\t MENU" << endl; cout << "\n\t1-Zarejdane na DEK ot file" << endl; cout << "\t2-Sortirane po metod chrez slivane" << endl; cout << "\t3-Elementi kratni na 7 i po-malkiq ot maksimalniq kraten na 5" << endl; cout << "\t4-Zapis na DEK vuv file" << endl; cout << "\t5-IZHOD!" << endl; cout << "\n\t IZBERETE:"; cin >> m; cout << endl; switch (m) { case 1: { ifstream ff; ff.open("deck.txt"); while (ff) { ff >> ch; if (ch == 0) break; else { push_r(ch); br++; } } list(); break; } case 2: { mergesort(int a[] = 0, int n = 0); list(); break; } case 3: { search(); break; } case 4: { ofstream ff("sorted deck.txt"); while (pop_l(ch)) { output(ff, ch); } cout << "\n\t *** File saved! ***" << endl; } } } while (m != 5); }
  6. Здравейте! Като малък бях доста палав и коленете ми бяха винаги в рани и не оставаше време да зарастнат напълно, защото постоянно ги разранявах- пак и пак. В последствие, когато вече тея рани зарастнваха ми се появи бяло петно на дясното коляно на мястото на ужасните рани. Петната са наситени с " островчета" (медицински термин), не са напълно бели участъци. Опитвал съм доста неща през годините, може би от някои имаше минимален ефект, но до там. Моля, ако някой се е сблъсквал с такъв случай или поне е чивал за нещо подобно да се отзове. Ще съм Ви много благодарен! В момента използвам Меладинин в течно състояние, което се смесва с топла вода и се нанася върху кожата. Надявам се да помогне. Поздрави- В.М
  7. Здравейте! Трябва ми помощ за задача свързана със списъци. Изисква се да се направи функция, която да може едновеменно да изважда,събира, умножава, разделя две числа. Имам задача, която събира числа, но се затруднявам с това да включа и другите действия. Благодаря предварително! Поздрави: В.М. #include <iostream> using namespace std; struct elem { int key; elem*next; } *list1 = NULL, *list2 = NULL, *list3 = NULL; void add_b(int n, elem *&st); void list(elem *st); void main() { int i, j; cout << "\n Purwoto chislo:"; do { cin >> i; if (i > 0 && i < 10) add_b(i, list1); } while ((i >= 0) && (i < 10)); cout << "\ Vtoro chislo:"; do { cin >> j; if (j>0 && j < 10) add_b(j, list2); } while ((j = 0) && (j < 10)); elem *p = list1, *q = list2; int pr = 0; int c = 0; while ((p != NULL) || (q != NULL)) { c = 0; if (p != NULL) { c += p->key; p = p->next; } if (q != NULL) { c += q->key; q = q->next; } if (pr > 0) c += pr; if (c > 9) { c -= 10; pr = 1; } else pr = 0; add_b(c, list3); } if (pr > 0) add_b(pr, list3); list(list3); } void add_b(int n, elem *&st) { elem *p = st; st = new elem; st->key = n; st->next = p; } void list(elem *st) { elem *p = st; cout << "\n Lista:"; while (p) { cout << p->key << "\t"; p = p->next; } cout << endl; } int search_recurs(struct elem *p, int n) { elem *q; if (start == NULL) { start = new elem; start->key = n; start->next = NULL; return 0; } else { if ((p->key < n) && (p->next = NULL)) { q = new elem; q->key = n; q->next = NULL; p->next = q; return 0; } else { if (p->key == n) return 1; else if (p->key < n) return 1; else if (p->key < n) search_recurs(p->next, n); else { q = new elem; q->next = p->next; q->key = p->key; p->key = n; p->next = q; return 0; } //else (p->key < n) } //((p->key < n) && (p->next == NULL)) } }
  8. Здравейте! Трябва да реша една задача с рекурсия, която да разбива естествени числа, но не ми е ясно как ще стане. На теория знам какво трябва да се направи, но кодирано ми е трудно да я осъществя. Задачата трябва да е написана на c++ ,а ето я и нея: Разбиване на естествено число N наричаме последователност от естествени числа, чиято сума е N. Да се състави програма, която реализира разбиването на дадено естествено число N. Написвам от клавиатурата числото 4(примерно), това число трябва да се разбие на всички възможни събираеми. 1+1+1+1, 2+1+1, 3+1 4+0. Ако някой има идея за сорс код, моля да сподели. Благодаря!
  9. Здравейте, бих искал помощ за една задача с файлове. Бих бил много благодарен ако ударите едно рамо. А задачата е следната:Съставете програма за моделиране на октриване ( и съхраняване във файл и масив - чрез добавяне ) и актуализация (внасяне или теглене) на срочни парични влогове от определен брой вложители (до 30).Данните за всеки вложител да са с примерна структура: Име; Адрес :М3 (сума,дата); М6 (сума,дата) ; М12 (сума дата), където датата отбелязва последното теглене или внасяне на получената текуща парична сума, съответно за тримесечен, шестмесечен и годишен влог.Програмата да осигорява и функции за:А) Въвеждане и актуализация на годишните лихви за всеки срочен влог;Б) Извеждане на справка за вложител по име;В) Преизчисляване на влоговете за текущата дата и извеждане на пълен списък на вложителите със съответните влогове, сортирани във възходящ ред.Главна функция main () - с меню за избор на функции и проверка за състоянието на данните. Ще съм много благодарен на някой ако се отзове! Това имам за сега: #include <stdlib.h> #include <stdio.h> #include <math.h> #include <iostream> #include <fstream> #include <string> using namespace std; const int MAX = 30; const char NAME[] = "dep.dat"; fstream fdep; struct deposit { double sum; string date; } M3, M6, M12; struct each{ string name; string address; deposit M3; deposit M6; deposit M12; }depositor[MAX]; void input(struct each depositor[]); void addToFile(struct each depositor[]); void read(); void edit(); void percentage(); void search(); void recalculation(); void sort(); int main() { int choice; int size; do{ cout << "########################## MENU ###########################" << endl; cout << "##################### Vashiqt izbor: ######################" << endl; cout << "1. Vuvedete informaciq otnosno vnositelite:" << endl; cout << "2. Vuvedete informaciq otnosno vnositelite:" << endl; cout << "3. Dannite za wseki srochen deposiz" << endl; cout << "4. Tursene chrez ime ot vnositelite" << endl; cout << "5. Sortirane na aktualna informaciq za wschki vnositeli." << endl; cout << "6. Izlizane" << endl << endl; cout << "Izberi: "; cin >> choice; cout << endl << endl; switch (choice){ case 1: input(depositor); read(depositor); break; case 2: edit(); break; case 3: percentage(); break; case 4: search(); break; case 5: recalculation(), sort(); break; case 6: exit(1); default: cout << "########################## MENU ###########################" << endl; cout << "##################### Vashiqt izbor: ######################" << endl; cout << "1. Vuvedete informaciq otnosno vnositelite:" << endl; cout << "2. Vuvedete informaciq otnosno vnositelite:" << endl; cout << "3. Dannite za wseki srochen deposiz" << endl; cout << "4. Tursene chrez ime ot vnositelite" << endl; cout << "5. Sortirane na aktualna informaciq za wschki vnositeli." << endl; cout << "6. Izlizane" << endl << endl; cout << "Izberi: "; cin >> choice; cout << endl << endl; } } while (choice != 6); system("pause"); return 0; }//end of main void input(each *depositor, int&size){ do{ cout << "Vuvedete broq na vnositelite, chiqto informaciq iskate da vuvedete: "; cin >> size; cin.get(); } while (size<1 || size>30); fdep.open(NAME, ios::binary | ios::out); cout << endl; for (int i = 0; i<size; i++){ cout << "Ime "; getline(cin, depositor.name); cout << "Adres "; getline(cin, depositor.address); cout << "Trimesechen depozit (data): "; getline(cin, depositor.M3.date); cout << "Trimesechen depozit (suma): "; cin >> depositor.M3.sum; cin.get(); cout << "Shestmesechen depozit (data): "; getline(cin, depositor.M6.date); cout << "Shestmesechen depozit (suma): "; cin >> depositor.M6.sum; cin.get(); cout << "Godishen depozit (data): "; getline(cin, depositor.M12.date); cout << "Annual deposit (sum): "; cin >> depositor.M12.sum; cin.get(); cout << endl << endl; } fdep.write((char*)depositor, size*sizeof(each)); fdep.close(); }//end of input void addToFile(each *depositor, int size){ ofstream fdep; fdep.open("Depositors.txt", ios::app); if (fdep.fail()){ cout << "Opening file Depositors.txt failed."; } for (int i = 0; i<size; i++){ cout << "Ime" << depositor.name << endl; cout << "adres" << depositor.address << endl; cout << depositor.M3.date << endl; cout << depositor.M3.sum << endl; cout << depositor.M6.date << endl; cout << depositor.M6.sum << endl; cout << depositor.M12.date << endl; cout << depositor.M12.sum << endl << endl; } fdep.close(); }//end of addToFile void read(struct each depositor[]) { each e; long pos; fdep.open(NAME, ios::binary | ios::in); if (fdep.fail()){ cout << "Opening file Depositors.txt failed."; } fdep.seekg(0l, ios::end); pos = fdep.tellg(); fdep.close(); fdep.open(NAME, ios::binary | ios::in); for (int i = 0; i<pos/(sizeof(each)); i++){ fdep.read((char*)&e, sizeof(each)); depositor = e; cout << depositor.name << endl; cout << depositor.address << endl; cout << depositor.M3.date << endl; cout << depositor.M3.sum << endl; cout << depositor.M6.date << endl; cout << depositor.M6.sum << endl; cout << depositor.M12.date << endl; cout << depositor.M12.sum << endl << endl; } fdep.close(); }//end of read void edit(){ int num; int eddep; int transf; int j = 0; ifstream fdep; fdep.open("Depositors.txt", ios::in); while (!fdep.fail()){ getline(fdep, depositor[j].name); getline(fdep, depositor[j].address); getline(fdep, depositor[j].M3.date); fdep >> depositor[j].M3.sum; fdep.get(); getline(fdep, depositor[j].M6.date); fdep >> depositor[j].M6.sum; fdep.get(); getline(fdep, depositor[j].M12.date); fdep >> depositor[j].M12.sum; fdep.get(); fdep.get(); j++; } fdep.close(); cout << "Vuvedete broq na vnositelite chiqto informaciq iskate da redaktirate: "; cin >> num; cout << "Ime: "; getline(cin, depositor[num - 1].name); cout << "Adres: "; getline(cin, depositor[num - 1].address); cout << "Trimesechen depozit (data): "; getline(cin, depositor[num - 1].M3.date); cout << "Trimesechen depozit (suma): "; cin >> depositor[num - 1].M3.sum; cin.get(); cout << "Shestmesechen depozit (data): "; getline(cin, depositor[num - 1].M6.date); cout << "Shestmesechen depozit (suma): "; cin >> depositor[num - 1].M6.sum; cin.get(); cout << "Godishen depozit (data): "; getline(cin, depositor[num - 1].M12.date); cout << "Godishen depozit (suma): "; cin >> depositor[num - 1].M12.sum; cin.get(); cout << endl << endl; do{ cout << "Koq suma iskate da redaktirate" << endl; cout << "1. Trimesechen depozit" << endl; cout << "2. Shestmesechen depozit" << endl; cout << "3. Godishen depozit" << endl; cout << "4. Nishto " << endl; cout << "Izberete: "; cin >> eddep; switch (eddep){ case 1: cout << "Date (M3): "; cin >> depositor[num - 1].M3.date; cout << "Enter sum you want to transfer (put - (minus) for withdraw): "; cin >> transf; depositor[num - 1].M3.sum += transf; break; case 2: cout << "Date (M6): "; cin >> depositor[num - 1].M6.date; cout << "Enter sum you want to transfer (put - (minus) for withdraw): "; cin >> transf; depositor[num - 1].M6.sum += transf; break; case 3: cout << "Date (M12): "; cin >> depositor[num - 1].M12.date; cout << "Enter sum you want to transfer (put - (minus) for withdraw): "; cin >> transf; depositor[num - 1].M12.sum += transf; break; case 4: cout << "Press enter"; break; } } while (eddep != 4); fdep.open("Depositors.txt", ios::trunc); fdep.close(); fdep.open("Depositors.txt", ios::out); if (fdep.fail()){ cout << "Opening file Depositors.txt failed."; } for (int i = 0; i<j; i++){ cout << depositor.name << endl; cout << depositor.address << endl; cout << depositor.M3.date << endl; cout << depositor.M3.sum << endl; cout << depositor.M6.date << endl; cout << depositor.M6.sum << endl; cout << depositor.M12.date << endl; cout << depositor.M12.sum << endl << endl; } fdep.close(); }//end of edit void percentage(){ cout << "percentage"; }//end of percentage void search(){ cout << "search"; }//end of search void recalculation(){ cout << "recalculation"; }//end of reacaclulation void sort(){ cout << "sort"; }//end of sort
  10. Здравейте, бих искал помощ за една задача с файлове. Бих бил много благодарен ако ударите едно рамо. А задачата е следната:Съставете програма за моделиране на октриване ( и съхраняване във файл и масив - чрез добавяне ) и актуализация (внасяне или теглене) на срочни парични влогове от определен брой вложители (до 30).Данните за всеки вложител да са с примерна структура: Име; Адрес :М3 (сума,дата); М6 (сума,дата) ; М12 (сума дата), където датата отбелязва последното теглене или внасяне на получената текуща парична сума, съответно за тримесечен, шестмесечен и годишен влог.Програмата да осигорява и функции за:А) Въвеждане и актуализация на годишните лихви за всеки срочен влог;Б) Извеждане на справка за вложител по име;В) Преизчисляване на влоговете за текущата дата и извеждане на пълен списък на вложителите със съответните влогове, сортирани във възходящ ред.Главна функция main () - с меню за избор на функции и проверка за състоянието на данните. Ще съм много благодарен на някой ако се отзове! Това е което съм направил, не е много, за това моля да ми помогнете, трябва да представя задачата на всяка цена. Благодаря ви предварително!!! #include<iostream>#include<cmath>using namespace std;#define N 30typedef struct{ char data[12]; double suma;}mesec;typedef struct{ char ime[25]; char adres[20]; mesec M3,M6,M12; double smetka;}vlojiteli;void input();void vnasqne();void teglene();void aktualizaciq();void spravka();void izvejdane();int menu();void disp();void load();void save();vlojiteli A[N];int top=0;int main(){int i;cout<<"n Zarejdane ot filen";load(); do{ i=menu(); switch(i) { case 1:input();break; case 2:vnasqne();break; case 3:teglene();break; case 4:aktualizaciq();break; case 5:spravka();break; case 6:izvejdane();break; case 7:save();break; }}while(i!=8);}int menu(){ int ch; cout<<"n MENU"; cout<<"n 1.Vyvejdane"; cout<<"n 2.Vnasqne po smetka"; cout<<"n 3.Teglene ot smetka"; cout<<"n 4.Aktualizaciq na lihvi"; cout<<"n 5.Spravka za vlojitel po Ime"; cout<<"n 6.Izvejdane na vsichki vlojiteli sortirani v spisyk"; cout<<"n 7.Syhrani fail"; cout<<"n 8.Izhod"<<endl; do { cout<<"n Izbor: "; cin>>ch; } while(ch<1||ch>8); return(ch);}void disp(int i){ cout<<"n Ime:"<<A[i].ime; cout<<"t Adress:"<<A[i].adres; cout<<"n M3 data:"<<A[i].M3.data<<" M3 suma:"<<A[i].M3.suma<<endl; cout<<"n M6 data:"<<A[i].M6.data<<" M6 suma:"<<A[i].M6.suma<<endl; cout<<"n M12 data:"<<A[i].M12.data<<" M12 suma:"<<A[i].M12.suma<<endl; cout<<"n Smetka:"<<A[i].smetka;}void input(){int i,n;do{cout<<"Broi vlojiteli:"; cin>>n; }while (n<1||n>N); fflush(stdin); for(i=top;i<top+n;i++) {cout<<"nIme:";cin>>A[i].ime; cout<<"nAdress:";cin>>A[i].adres; cout<<"nM3 data:"; cin>>A[i].M3.data; cout<<"nM3 suma:"; cin>>A[i].M3.suma; A[i].smetka+=A[i].M3.suma; cout<<"nM6 data:"; cin>>A[i].M6.data; cout<<"nM6 suma:"; cin>>A[i].M6.suma; A[i].smetka+=A[i].M6.suma; cout<<"nM12 data:"; cin>>A[i].M12.data; cout<<"nM12 suma:"; cin>>A[i].M12.suma; A[i].smetka+=A[i].M12.suma; } top+=n;}void vnasqne(){int n,p,i; do{cout<<"nIzberete nomer na vlojitel:"; cin>>n;} while(n<1||n>N); cout<<"nIzberete vnoska za trimesechie,polovin godina ili edna godina:"; cin>>p; if(p==3) for(i=n;i<n;i++) {cout<<"vyvedete data na vnasqne:";cin>>A[i].M3.data; cout<<"vyvedete suma na vnasqne:";cin>>A[i].M3.suma;A[i].smetka+=A[i].M3.suma; } if(p==6) for(i=n;i<n;i++) {cout<<"vyvedete data na vnasqne:";cin>>A[i].M6.data; cout<<"vyvedete suma na vnasqne:";cin>>A[i].M6.suma;A[i].smetka+=A[i].M6.suma; } if(p==12) for(i=n;i<n;i++) {cout<<"vyvedete data na vnasqne:";cin>>A[i].M12.data; cout<<"vyvedete suma na vnasqne:";cin>>A[i].M12.suma;A[i].smetka+=A[i].M12.suma; }}void teglene(){ int i,n; double s; do{cout<<"nIzberete nomer na vlojitel:"; cin>>n;} while(n<1||n>N); cout<<"n Izberete sumata,koqto iskate da izteglite:"; cin>>s; for(i=n;i<n;i++) {if(s<A[i].smetka) A[i].smetka=A[i].smetka-s; else cout<<"Nqmate tolkowa pari!"; }}void aktualizaciq(){ int n,i; double p; do{cout<<"nVyvedete srochen vlog,za koito iskate da promenite lihvata:"; cin>>n;} while(n!=3 || n!= 6 || n!=12); cout<<"nVyvedete lihva v realno chislo:"; cin>>p; for(i=0;i<N;i++) { if(n==3) A[i].M3.suma = A[i].M3.suma * p + A[i].M3.suma; if(n==6) A[i].M6.suma = A[i].M6.suma * p + A[i].M6.suma; if(n==12) A[i].M12.suma = A[i].M12.suma * p + A[i].M12.suma; } }void spravka(){int i; char n[15]; cout<<"nVyvedi ime:";cin>>n; for(i=0;i<N;i++) {if(A[i].ime==n) disp(i);}}void izvejdane(){int i,k,z; double temp;for(i=0;i<N;i++) for(z=i+1;z<N+1;z++) if(A[i].smetka>A[z].smetka) {temp=A[i].smetka; A[i].smetka=A[z].smetka; A[z].smetka=temp; }for(i=0;i<N;i++) disp(i);}void load() { FILE *fp; int i; if((fp=fopen("vlojiteli12.dat", "rb"))==NULL) { cout<<"n EROR 404: File not found!n "; return; } if(fread(&top, sizeof(top), 1, fp)!=1) { cout<<"n Error size"; exit(1); } for(i=0;i<top;i++) if(fread(&A[i], sizeof(vlojiteli),1,fp)!=1) { cout<<"n Error reading structure!"; exit(1); }}void save() { FILE *fp; int i; if((fp=fopen("vlojiteli12.dat", "wb"))==NULL) { cout<<"n Error saving file!"; return; } if(fwrite(&top, sizeof(top), 1, fp)!=1) { cout<<"n Error w top"; exit(1); } for(i=0;i<top;i++) if(fwrite(&A[i], sizeof(vlojiteli),1,fp)!=1) { cout<<"n Error writing str!"; exit(1); } fclose(fp);}
  11. Нов съм в тая област с файловете и честно казано, от която страна да го погледна ми изглежда трудно. Задачата ми много важна, ще се допитам до по-напреднали и ще видя дали ще я подхвана от някъде.
  12. Здравейте, бих искал помощ за една задача с файлове. Бих бил много благодарен ако ударите едно рамо. А задачата е следната: Съставете програма за моделиране на октриване ( и съхраняване във файл и масив - чрез добавяне ) и актуализация (внасяне или теглене) на срочни парични влогове от определен брой вложители (до 30). Данните за всеки вложител да са с примерна структура: Име; Адрес :М3 (сума,дата); М6 (сума,дата) ; М12 (сума дата), където датата отбелязва последното теглене или внасяне на получената текуща парична сума, съответно за тримесечен, шестмесечен и годишен влог. Програмата да осигорява и функции за: А) Въвеждане и актуализация на годишните лихви за всеки срочен влог; Б) Извеждане на справка за вложител по име; В) Преизчисляване на влоговете за текущата дата и извеждане на пълен списък на вложителите със съответните влогове, сортирани във възходящ ред. Главна функция main () - с меню за избор на функции и проверка за състоянието на данните. Ще съм много благодарен на някой ако се отзове!
  • Разглеждащи това в момента   0 потребители

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

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