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

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


Здравейте, от доста време се опитвам да намеря решение на една програма на C++

 

Създайте структура за кандидати за работа: име, ЕГН, трудов стаж и масив с владени езици (най-много 3). Програмата да въведе какъв език трябва да владее кандидата. Да се въведат данните на 5-ма кандидати. Да се намери кои от тях владеят съответния език и да се изведат всички техни данни.

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

 

Ето  и програмата:

 

#include <iostream>
void main ()
using namespace std;
{
 typedef struct MyStruct
 {
 char names[32+1];
 char EGN[10+1];
 int stag;
 char long [3] [15];
 };

  printf("Vladeni ezici n=3");

 FILE *ip, *op;
#define File "data.txt"

#define N_Emp 2

 main()
{
emp e[N_Emp], *ep;
int i, j;
char buf[80];

for (i = 0; i < N_Emp; i++)
{
cout << "imeto na rabotnika[" << (i + 1) << "] = ";
gets(buf);
strncpy(e.names, buf, 32);
cout << "EGN na rabotnika[" << (i + 1) << "] = ";
gets(buf);
strncpy(e.EGN, buf, 10);
cout << "rabotta[" << (i + 1) << "] = ";
gets(buf);

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


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

Здравейте, от доста време се опитвам да намеря решение на една програма на C++

 

Създайте структура за кандидати за работа: име, ЕГН, трудов стаж и масив с владени езици (най-много 3). Програмата да въведе какъв език трябва да владее кандидата. Да се въведат данните на 5-ма кандидати. Да се намери кои от тях владеят съответния език и да се изведат всички техни данни.

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

Здравейте !

 

Бихте ли формулирали точно какъв е проблема със сорс-кода Ви и какъв е въпроса Ви ?

 

Колкото до това, което сте приложил: Програмата и кода не са цялостни, не се и компилират. Има доста объркани конструкции.

Също така не схващам идеите на структурата, която сте дефинирал, а не я ползвате, както и ползването не типове, които не сте приложил/дефинирал. 

Подозирам, че или това не е целия Ви код (не сте го донаписал / приложил в коментара си), или просто в момента посоката на запитването Ви е по-скоро да помислим как точно да подходим към проблема и решаването му. Моля, конкретизирайте в каква посока да подходим:

- Да се опитваме да помогнем да тръгне приложения код

- Да дадем съвети, с които да подходите към задачата

- Да приложим идеите си за реализация като алгоритъм и последователни по-малки действия

- Да приложим наготово кода, който решава проблема.

 

Последното не е особено желателно, тъй като чрез него най-малко знания ще получите и реално ефекта от запитването ще е нулев - просто ние ще потренираме да пишем, вместо да се проведе стойностна дискусия :).

 

Поздрави !

Редактирано от soundtracker (преглед на промените)
  • Харесва ми 1

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


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

Здравейте !

 

Бихте ли формулирали точно какъв е проблема със сорс-кода Ви и какъв е въпроса Ви ?

 

Колкото до това, което сте приложил: Програмата и кода не са цялостни, не се и компилират. Има доста объркани конструкции.

Също така не схващам идеите на структурата, която сте дефинирал, а не я ползвате, както и ползването не типове, които не сте приложил/дефинирал. 

Подозирам, че или това не е целия Ви код (не сте го донаписал / приложил в коментара си), или просто в момента посоката на запитването Ви е по-скоро да помислим как точно да подходим към проблема и решаването му. Моля, конкретизирайте в каква посока да подходим:

- Да се опитваме да помогнем да тръгне приложения код

- Да дадем съвети, с които да подходите към задачата

- Да приложим идеите си за реализация като алгоритъм и последователни по-малки действия

- Да приложим наготово кода, който решава проблема.

 

Последното не е особено желателно, тъй като чрез него най-малко знания ще получите и реално ефекта от запитването ще е нулев - просто ние ще потренираме да пишем, вместо да се проведе стойностна дискусия :).

 

Поздрави !

Последното

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


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

Последното

Ясно ... в този случай обаче правя така: Ще разпиша задачата донякъде - оставям FILE И/О операциите от последната подточка на Вас !Не изявихте желание да дискутираме решението на задачата, което означава, че явно не Ви е толкова важна. Прилагам частично решение на задачата, като оставям останалото да си го допишете. Това в никакъв случай не означава, че няма да помогнем, ако имате проблеми да го реализирате, но не и да Ви го пишем и него. Проявете някаква заинтересованост - все пак това е Ваша задача, а не наша ! Приложения код го ползвайте както искате - просто, ако го давате на някой друг да го довърши, го препратете към тази тема, за да види историята зад тази задача.

#include <iostream>using namespace std;#define MAX_NAME_SIZE 50#define MAX_LANGUAGE_NAME_SIZE 20#define PIN_NUMBER_SIZE 10struct Candidate{	Candidate(char* enteredName, char enteredPIN [10], float workYears, unsigned int numberLanguages, char** knownLanguages) {		name = enteredName;		PIN = enteredPIN;		work_years =  workYears;		countLanguages = numberLanguages >= 4 ? 3 : numberLanguages;		if (countLanguages) {			known_languages = new char* [countLanguages];			for (unsigned int i = 0; i < countLanguages; i++) {				known_languages[i] = knownLanguages[i];			}		}	}	void deleteCandidateMemory() {		cout << "Executing deletion of dynamic memory in Candidate object" << endl;		delete [] name;		delete [] PIN;		if (countLanguages) {			for (unsigned int i = 0; i < countLanguages; i++) {				delete [] known_languages[i];			}			delete [] known_languages;		}		cout << "Done Candidate deleteion" << endl;	}	void print() {		cout << "Candidate " << name << "nPIN: " << PIN << "nWorked Years: " << work_years << endl;		if (countLanguages > 0) {			cout << "Known Languages:n";			for (unsigned int i = 0; i < countLanguages; i++) {				cout << "  " << known_languages[i] << endl;			}		}	}	unsigned int getNumberOfKnownLanguages() {		return countLanguages;	}	char* name;	char* PIN;	float work_years;	char** known_languages;	private:		unsigned int countLanguages;};Candidate** enterCandidates(unsigned int number) {	Candidate** generatedCandidates = NULL;	if (number) {		generatedCandidates = new Candidate* [number];	}	for (unsigned int i = 0; i < number; i++) {		char* enteredName = new char[MAX_NAME_SIZE];		char* enteredPIN = new char[PIN_NUMBER_SIZE];		float enteredYears;		unsigned int numberOfLanguages;		cout << "Enter name of candidate " << i + 1 << ":n";		cin >> enteredName;		cout << "Enter PIN of candidate " << i + 1 << ":n";		cin >> enteredPIN;		cout << "Enter work years of candidate " << i + 1 << ":n";		cin >> enteredYears;		cout << "How many languages, does the candidate knows? :n (The maximum limit of input is 3 languages)n";		cin >> numberOfLanguages;		char** enteredLanguages = NULL;		if (numberOfLanguages > 0) {			if (numberOfLanguages > 3) {				cout << "Exceeded Maximum allowed ! Truncating to 3 languages !";				numberOfLanguages = 3;			}			enteredLanguages = new char* [numberOfLanguages];			for (unsigned int y = 0; y < numberOfLanguages; y++) {				cout << "Enter Language " << y + 1 << ":n";				enteredLanguages[y] = new char[MAX_LANGUAGE_NAME_SIZE];				cin >> enteredLanguages[y];			}		}		Candidate* newCandidate = new Candidate(enteredName,enteredPIN,enteredYears,numberOfLanguages,enteredLanguages);		generatedCandidates[i] = newCandidate;	}	return generatedCandidates;}bool isLanguageKnownByCandidate(Candidate* candidate, char* targetLanguage){	if (candidate && targetLanguage) {		unsigned int numberLanguages = candidate->getNumberOfKnownLanguages();		if (numberLanguages) {			for (unsigned int i = 0; i < numberLanguages; i++) {				if (!strcmp(targetLanguage,candidate->known_languages[i])) {					return true;				}			}		}	}	return false;}void deleteCandidatesFromMemory(Candidate** candidate, unsigned int numberCandidates) {	if (candidate && numberCandidates) {		for (unsigned int i = 0; i < numberCandidates; i++) {			candidate[i]->deleteCandidateMemory();		}		delete [] candidate;		cout << "Done deletetion of dynamic memory" << endl;	} else {		cout << "Nothing to delete or invalid number of deletions entered" << endl;	}}int main() {	unsigned int candidateNumber = 5;	Candidate** candidate = enterCandidates(candidateNumber);	char* searcherLanguage = new char[MAX_LANGUAGE_NAME_SIZE];	cout << "Enter programing language, which will be searched within the set of candidatesn";	cout << "NOTE: Entered language should be less than " << MAX_LANGUAGE_NAME_SIZE << " symbols in lenght):n";	cin >> searcherLanguage;	for (unsigned int i = 0; i < candidateNumber ; i++) {		if (isLanguageKnownByCandidate(candidate[i], searcherLanguage)) {			candidate[i]->print();		}		}	//TODO Write file i/o operations	//This should be done last !	//Destroy the dynamic memory	deleteCandidatesFromMemory(candidate,candidateNumber);	system("pause");}

P.S. Сега вече съм почти сигурен, че първия код, който приложихте е просто нещо хвърчащо, което ей - така да покаже, че уж сте се опитвал да го направите ! Това го казвам, защото, както ще видите и решението, кода в първия Ви пост е на светлинни години разстояние от това, което трябва да се направи, а и няма никаква завършеност.

 

Поздрави и ако все пак решите да се опитате да направите File I/O подточката, очакваме конкретните Ваши въпроси !

  • Харесва ми 2

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


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

Ясно ... в този случай обаче правя така: Ще разпиша задачата донякъде - оставям FILE И/О операциите от последната подточка на Вас !Не изявихте желание да дискутираме решението на задачата, което означава, че явно не Ви е толкова важна. Прилагам частично решение на задачата, като оставям останалото да си го допишете. Това в никакъв случай не означава, че няма да помогнем, ако имате проблеми да го реализирате, но не и да Ви го пишем и него. Проявете някаква заинтересованост - все пак това е Ваша задача, а не наша ! Приложения код го ползвайте както искате - просто, ако го давате на някой друг да го довърши, го препратете към тази тема, за да види историята зад тази задача.

#include <iostream>using namespace std;#define MAX_NAME_SIZE 50#define MAX_LANGUAGE_NAME_SIZE 20#define PIN_NUMBER_SIZE 10struct Candidate{	Candidate(char* enteredName, char enteredPIN [10], float workYears, unsigned int numberLanguages, char** knownLanguages) {		name = enteredName;		PIN = enteredPIN;		work_years =  workYears;		countLanguages = numberLanguages >= 4 ? 3 : numberLanguages;		if (countLanguages) {			known_languages = new char* [countLanguages];			for (unsigned int i = 0; i < countLanguages; i++) {				known_languages[i] = knownLanguages[i];			}		}	}	void deleteCandidateMemory() {		cout << "Executing deletion of dynamic memory in Candidate object" << endl;		delete [] name;		delete [] PIN;		if (countLanguages) {			for (unsigned int i = 0; i < countLanguages; i++) {				delete [] known_languages[i];			}			delete [] known_languages;		}		cout << "Done Candidate deleteion" << endl;	}	void print() {		cout << "Candidate " << name << "nPIN: " << PIN << "nWorked Years: " << work_years << endl;		if (countLanguages > 0) {			cout << "Known Languages:n";			for (unsigned int i = 0; i < countLanguages; i++) {				cout << "  " << known_languages[i] << endl;			}		}	}	unsigned int getNumberOfKnownLanguages() {		return countLanguages;	}	char* name;	char* PIN;	float work_years;	char** known_languages;	private:		unsigned int countLanguages;};Candidate** enterCandidates(unsigned int number) {	Candidate** generatedCandidates = NULL;	if (number) {		generatedCandidates = new Candidate* [number];	}	for (unsigned int i = 0; i < number; i++) {		char* enteredName = new char[MAX_NAME_SIZE];		char* enteredPIN = new char[PIN_NUMBER_SIZE];		float enteredYears;		unsigned int numberOfLanguages;		cout << "Enter name of candidate " << i + 1 << ":n";		cin >> enteredName;		cout << "Enter PIN of candidate " << i + 1 << ":n";		cin >> enteredPIN;		cout << "Enter work years of candidate " << i + 1 << ":n";		cin >> enteredYears;		cout << "How many languages, does the candidate knows? :n (The maximum limit of input is 3 languages)n";		cin >> numberOfLanguages;		char** enteredLanguages = NULL;		if (numberOfLanguages > 0) {			if (numberOfLanguages > 3) {				cout << "Exceeded Maximum allowed ! Truncating to 3 languages !";				numberOfLanguages = 3;			}			enteredLanguages = new char* [numberOfLanguages];			for (unsigned int y = 0; y < numberOfLanguages; y++) {				cout << "Enter Language " << y + 1 << ":n";				enteredLanguages[y] = new char[MAX_LANGUAGE_NAME_SIZE];				cin >> enteredLanguages[y];			}		}		Candidate* newCandidate = new Candidate(enteredName,enteredPIN,enteredYears,numberOfLanguages,enteredLanguages);		generatedCandidates[i] = newCandidate;	}	return generatedCandidates;}bool isLanguageKnownByCandidate(Candidate* candidate, char* targetLanguage){	if (candidate && targetLanguage) {		unsigned int numberLanguages = candidate->getNumberOfKnownLanguages();		if (numberLanguages) {			for (unsigned int i = 0; i < numberLanguages; i++) {				if (!strcmp(targetLanguage,candidate->known_languages[i])) {					return true;				}			}		}	}	return false;}void deleteCandidatesFromMemory(Candidate** candidate, unsigned int numberCandidates) {	if (candidate && numberCandidates) {		for (unsigned int i = 0; i < numberCandidates; i++) {			candidate[i]->deleteCandidateMemory();		}		delete [] candidate;		cout << "Done deletetion of dynamic memory" << endl;	} else {		cout << "Nothing to delete or invalid number of deletions entered" << endl;	}}int main() {	unsigned int candidateNumber = 5;	Candidate** candidate = enterCandidates(candidateNumber);	char* searcherLanguage = new char[MAX_LANGUAGE_NAME_SIZE];	cout << "Enter programing language, which will be searched within the set of candidatesn";	cout << "NOTE: Entered language should be less than " << MAX_LANGUAGE_NAME_SIZE << " symbols in lenght):n";	cin >> searcherLanguage;	for (unsigned int i = 0; i < candidateNumber ; i++) {		if (isLanguageKnownByCandidate(candidate[i], searcherLanguage)) {			candidate[i]->print();		}		}	//TODO Write file i/o operations	//This should be done last !	//Destroy the dynamic memory	deleteCandidatesFromMemory(candidate,candidateNumber);	system("pause");}

P.S. Сега вече съм почти сигурен, че първия код, който приложихте е просто нещо хвърчащо, което ей - така да покаже, че уж сте се опитвал да го направите ! Това го казвам, защото, както ще видите и решението, кода в първия Ви пост е на светлинни години разстояние от това, което трябва да се направи, а и няма никаква завършеност.

 

Поздрави и ако все пак решите да се опитате да направите File I/O подточката, очакваме конкретните Ваши въпроси !

Задачата е важна за мен. От скоро изучавам C/C++ и нямам много познания за нея.

Но до колкото съм чел май File Io започва с #include<fstream.h>

ofstream file


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


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

Задачата е важна за мен. От скоро изучавам C/C++ и нямам много познания за нея.

Но до колкото съм чел май File Io започва с #include<fstream.h>

ofstream file

В случай, че задача е важна, можеше да изговорим кое по-точно не Ви е ясно, вместо директно да разписвам код. Написаното досега успяхте ли да го разберете - защо се ползват тези методи и защо Struct-а е така конструиран, алгоритъма, който изпълнява програмата ?

 

Поствам Ви няколко линка към ресурси и документация за файловите потоци - прегледайте ги, поиграйте си с тях, като за разпишете кодовете от примерите и схванете идеята им.

След това, ако все още изпитвате проблеми, можем да ги изкоментираме.

 

Правилно сте отбелязал - хедъра, който се включва за работа със файлове потоци е <fstream.h> . Прегледайте какво съдържа като обекти и по какъв начин се работи с тях

 

Ресурси:

Input/Output with files

fstream

FILE C++

 

Поздрави !

  • Харесва ми 1

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


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

Регистрирайте се или влезете в профила си за да коментирате

Трябва да имате регистрация за да може да коментирате това

Регистрирайте се

Създайте нова регистрация в нашия форум. Лесно е!

Нова регистрация

Вход

Имате регистрация? Влезте от тук.

Вход

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

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

  • Горещи теми в момента

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

    • от Chris Panov
      Здравейте, 
      В момента пиша една програма, в която в една от функциите ми се налага да излезна по-рано при определено условие. Функцията връща string впрочем.
      Ето кодът:
       
      #include "stdafx.h" #include <iostream> #include <string> #include <sstream> #include <vector> #define CONSOLE_LOG(x) std::cout << x #define COMMAND_END command[0] #define COMMAND_SUM command[1] #define COMMAND_SUBTRACT command[2] #define COMMAND_CONCAT command[3] #define COMMAND_DISCARD command[4] #define COMMAND_DISPSEQ command[5] template <typename T> void top_back(std::vector<T>& v) {     v.erase(v.end() - 1); } std::string sum(std::string& x, std::string& y, std::vector<std::string>& vec) {     int xInt = atoi(x.c_str());     int yInt = atoi(y.c_str());     int result = xInt + yInt;     std::ostringstream os;     std::string strResult;     os << result;     strResult = os.str();     top_back(vec);     top_back(vec);     return strResult; } std::string subtract(std::string& x, std::string& y, std::vector<std::string>& vec) {     int xInt = atoi(x.c_str());     int yInt = atoi(y.c_str());     int result = xInt - yInt;     std::ostringstream os;     std::string strResult;     os << result;     strResult = os.str();     top_back(vec);     top_back(vec);     return strResult; } std::string concat(std::string& x, std::string& y, std::vector<std::string>& vec) {     if (atoi(x.c_str()) < 0)     {         return;     }     else {         std::string concatStr = y + x;         top_back(vec);         top_back(vec);         return concatStr;     } } void dispseq(std::vector<std::string>& vec) {     std::vector<std::string>::const_iterator iter;     for (iter = vec.begin(); iter != vec.end(); iter++)     {         std::cout << *iter << std::endl;     } } void enterSequence() {     std::vector<std::string> command =     {         "end",         "sum",         "subtract",         "concat",         "discard",         "dispseq"     };     std::vector<std::string> sequence;     std::string input;     std::string a;     std::string b;     do     {         std::cin >> input;         sequence.emplace_back(input);         if (input == COMMAND_END)         {              top_back(sequence);         }         if (input == COMMAND_SUM)         {             top_back(sequence);             a = sequence[sequence.size() - 1];             b = sequence[sequence.size() - 2];             sequence.emplace_back(sum(a, b, sequence));         }         if (input == COMMAND_SUBTRACT)         {             top_back(sequence);             a = sequence[sequence.size() - 1];             b = sequence[sequence.size() - 2];             sequence.emplace_back(subtract(a, b, sequence));         }         if (input == COMMAND_CONCAT)         {             top_back(sequence);             a = sequence[sequence.size() - 1];             b = sequence[sequence.size() - 2];             sequence.emplace_back(concat(a, b, sequence));         }         if (input == COMMAND_DISCARD)         {             top_back(sequence);             top_back(sequence);         }         if (input == COMMAND_DISPSEQ)         {             top_back(sequence);             dispseq(sequence);         }     } while (input != COMMAND_END); } int main() {     enterSequence();     std::cin.get();     std::cin.get();     return 0; } И ето проблемната функция:
       
      std::string concat(std::string& x, std::string& y, std::vector<std::string>& vec) {     if (atoi(x.c_str()) < 0)     {         return;     }     else {         std::string concatStr = y + x;         top_back(vec);         top_back(vec);         return concatStr;     } }  
      Както виждате ако стрингът x(който естествено го превръщам в интиджър) е по-малък от 0, теоритично трябва да излезна от функцията, и това е единственият начин за който се сетих, с return;, обаче пък компилаторът иска функцията да връща стойност, понеже е от тип стринг.
      Как да съчетая двете? - да връща стринг ако всичко е по план, и да излиза ако е по-малко от 0.
    • от Chris Panov
      Здравейте,
      В момента имам сериозен проблем със взимането на броят на елементи в даден вектор.
      vec.size(); и  
      sizeof(vec) / sizeof(vec[0]); не работят. Програмата те пита за брой ключове за даден тест, въвеждаш ключовете, после въвеждаш и отговорите, които са били дадени, и програмата ги сравнява и в зависимост от това колко верни отговори имаш ти дава точки. Ключовете и дадените отговори са тип char. ("A", "B", "C" etc.)
      Ето го и кода, като повечето съм го направил на коментар за да си тествам само функцията която извежда броя на елементите.
      #include "stdafx.h" #include <iostream> #include <vector> #define CONSOLE_LOG(x) std::cout << x; std::vector<char> keys = {'A', 'B', 'C', 'D', 'E'}; std::vector<char> studentAnswers; int n, points = 0; char key, answer; template <typename T> T vecSize(std::vector<T>& vec) { T size = vec.size(); return size; } /* template <typename T1> void enterKeys(std::vector<T1>& k) { CONSOLE_LOG("Please enter the number of keys: "); std::cin >> n; for (int i = 0, counter = 1; i < n, counter <= n; i++, counter++) { CONSOLE_LOG("Key " << counter << ": "); std::cin >> key; k.emplace_back(key); } } template <typename T2> void enterAnswers(std::vector<T2>& stAns) { for (int i = 0, counter = 1; i < n, counter <= n; i++, counter++) { CONSOLE_LOG("Answer " << counter << ": "); std::cin >> answer; stAns.emplace_back(answer); } } template <typename T3> void getGrade(std::vector<T3>& x, std::vector<T3>& y) { for (int i = 0; i < n; i++) { if (x[i] == y[i]) { points++; } } CONSOLE_LOG("Points: " << points); } */ int main() { /* enterKeys(keys); enterAnswers(studentAnswers); getGrade(studentAnswers, keys); */ std::cout << keys.size() << std::endl; std::cout << vecSize(keys) << std::endl; std::cin.get(); std::cin.get(); std::cin.get(); return 0; } Опитах всевъзможни начини, и пак не става. Идеята е да заместя n променливата със броя на елементите от вектора. Програмата върви по един и същи начин, защото все пак в n променливата запазваме големината на вектора, но бих искал да си го направя с функция.
      Както виждате на края на програмата си извеждам тестове. Първият, който си е по конвенционалният метод си работи сам по себе си, но пък във for цикъл не бачка.
      А вторият е функцията която съм направил. Проблемът е че ми извежда непознат символ - "�"
      Проблемът е че типът на елементите във вектора е char, защото като го направих с int тип си работеше както трябва.
      Бих бил изключително благодарен ако някой може да ме насочи и да ми бутне едно рамо :)
    • от Goshko
      Да се напише програма, която създава структура "Book" като имате следните полета - Title(заглавието на книгата), Автор(Author), Цена(Price) и уникален номер на книгата(ISBN-num). Да се ваведе цяло число n и след него n на брой данни за ученика. Да се изведе на монитора данните за книгата с цена по-висока от предварително зададена.
    • от Нели Николова
      Здравейте, имам две готови задачи, но не мога да ги компилирам. Дали може да ги проверите?
      зад.1 Да се състави програма, която да сортира едномерен масив от цели числа тип short  с име X състоящ се от 19 елемента. Сортирането да се извърши във възходящ ред чрез метода пряка селекция.
      #include <iostream>
      using namespace std;
      void sortAsc(short[]);
      int main() {
          short x[] = {123,13,23,31,1,55,36,17,8,9,10,11,6,12,14,15,16,35,184,19};
           
          sortAsc(x);
          
          return 0;
      }
      void sortAsc(short x[]){
          for(short i = 0; i < 19 ; i++) {
              for(short j = i; j < 19; j++) {
                  if(x[j] < x) {
                      swap(x[j], x);
                  }
              }    
          }
          
          for(int i=0; i<19; i++)
          {
              cout << x << endl;
          }
      }
      зад. 2 Да се състави програма,която реализира динамичен стек от реални числа тип float. Стекът да се преобразува в два нови стека, един стек P за четните и един стек O за нечетните числа от стек едно. Стековете да се извеждат на екрана.
      int main() {
          stack<float>numbers;
          stack<float>p;
          stack<float>o;
          
          for(short i = 1; i <= 200; i++) {
              numbers.push(i);
          }  
          
          numbers.push(200.64);
          numbers.push(203.34);
          
          while(!numbers.empty()) {
              int number = numbers.top();
              
              if (number % 2 == 0) {
                  p.push(number);
              } else {
                  o.push(number);
              }
              numbers.pop();
          }
          
          cout << "EVEN NUMBERS:" << endl;
          
          while(!p.empty()) {
              cout << p.top() << endl;
              p.pop();
          }
          
          cout << "ODD NUMBERS:" << endl;
          
          while(!o.empty()) {
              cout << o.top() << endl;
              o.pop();
          }
          
      }
      Много Ви благодаря :)
       
    • от Georgi Kirchev
      Здравейте имам да предам курсова работа утре ,но не мога да я реша , ще бъда изключително благодарен ако може някой да ми помогне.

      Дефинирайте клас Телевизор, който да е родител на клас Самсунг и клас Сони. Клас Телевизор да има цена и брой продадени за година в сектор private. Класовете Самсунг и Сони да имат в сектор public функции за определяне на общата сума от продажби за година (цена * брой продадени за година). Всички класове да имат конструктори по подразбиране.
       
      Благодаря предварително !
  • Дарение

×

Информация

Поставихме бисквитки на устройството ви за най-добро потребителско изживяване. Можете да промените настройките си за бисквитки, или в противен случай приемаме, че сте съгласни с нашите условия за ползване.