#include <iostream>
#include <fstream>
using namespace std;
int main()
{
string path="my.txt";
ifstream fin;
fin.open(path);
if(!fin.is_open()){cout<<"File is not opened"<<endl;}
else{cout<<"Okey"<<endl;
string str;
while(!fin.eof()){
fin>>str;
cout<<str<<endl;
}
}
fin.close();
}
вообше то неправильно выполнить задание за вас, но я решил помочь вам кое в чем. Во первых нужно сравнивать строки так, чтобы сравнивались и длины строк(количество цифр в числе). Для этого нужно написать компаратор:
bool
cmp(const std::string& s1, const std::string& s2)
{
if (s1.length() == s2.length()) {
for (int i = 0; i < s1.length(); ++i) {
if (s1[i] != s2[i])
return s1[i] < s2[i];
}
}
return s1.length() < s2.length();
}
Дальше с некоторыми поправками ваша программа:
ifstream fin("my.txt");
if (!fin.is_open()) { cout << "File is not opened" << endl; }
else
{
cout << "Okey" << endl;
constexpr int SIZE = 1000;
string str, res[SIZE];
int n = 0;
while (fin >> str) {
res[n++] = str;
}
/* сортируйте массив от 0 до n
сравнивая элементы так: if(cmp(res[i + 1], res[i])...
альгоритм сортировки выбирайте сами(гугл вам в помощь)
*/
}
fin.close();
P.S.
Было бы проще положить эти строки в какой нибудь контейнер типа sdt::multiset
с соответствующим компаратором и получать их уже в отсортированном виде
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
На emaxx начал изучать алгоритмыДошел до графов
Не могу понять из-за чего выскакивает исключение "Assertion failed: !hookis_linked(), file d:\boost_1_71_0\boost_1_71_0\boost\intrusive\detail\generic_hook
Есть несколько блоков div с display:inline-block; в них по картинке