Подготвям се за изпит по информатика и в момента пререшавам изпитните им задачи на една ми дава малко затруднения.
http://fmi-plovdiv.org/GetResource?id=160
Това е изпитната задача
В момента съм стигнал до тук:
//zad_izpit.cpp
#include <iostream>
#include <string>
using namespace std;
int main()
{
int FN[1000];
int n;
std::string AA,BB,CC,D,EEE;
cout<<"Broj na uchenici:";
cin>>n;
for(int i=0;i<n;i++)
{
cout<<" Poseldnite 2 chisla ot godinata na rajdane: ";
cin>>AA;
cout<<"Nomer na Fakulteta: ";
cin>>BB;
cout<<"Nomer na Specialnost: ";
cin>>CC;
cout<<"Vid na obuchenie(zadochno -1 | redovno - 2): ";
cin>>D;
cout<<"EGN (posledni 3 nomera): ";
cin>>EEE;
int convAA = std::stoi(AA);
int convBB = std::stoi(BB);
int convCC = std::stoi(CC);
int convD = std::stoi(D);
int convEEE = std::stoi(EEE);
FN[i] = convAA*100000000 + convBB*1000000 + convCC*10000 + convD*1000 + convEEE;
}
for(int i=0; i<n; i++)
{
if(FN[i]/100000000>=00 or FN[i]/100000000=99 or FN[i]/100000000<=09)
{
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
if(FN[j]/1000000>FN[j+1]/1000000)
{
int tmp = FN[j];
FN[j] = FN[j+1];
FN[j+1] = tmp;
}
if(FN[j]/1000000==FN[j+1]/1000000)
{
int temp = FN[j];
FN[j] = FN[j+1];
FN[j+1] = temp;
}
}
}
cout<<FN[i];
}
}
return 0;
}
Основното е че не иска да компилира заради std::stoi, не съм сигурен каква е грешката на stoi, тъй като по други форуми и учебници чета че така трябва да е.
За компилатор използвам CodeBlocks.
Ако някой от вас може да открие грешки ще съм му много благодарен