Не лишу себя удовольствия показать еще одно очень красивое и очень странное решение через словари.
n = int(input())
print({1<=n<=4: "Начальная школа",
5<=n<=9: "Среднее звено",
10<=n<=11: "Старшее звено"}[True])
Здесь мы создаем неименованный словарь, который в качестве ключа использует условное выражение, а в качестве значения - соответствующую этому выражению строку.
Когда мы тут же передаем ему в качестве ключа True, словарь начнет проверять ключи и вернет именно то значение, у которого выражение-ключ было истинным.
#include<iostream>
#include <sstream>
using namespace std;
int main()
{
size_t a,i=0;
stringstream ss;
string s;
cin>>a;
ss<<a;
s=ss.str();
ss.str("");
while(s[i]!='\0')
{
if((s[i]-48)%2==0)
ss<<s[i];
i++;
}
i=0;
while(s[i]!='\0')
{
if((s[i]-48)%2!=0)
ss<<s[i];
i++;
}
ss>>a;
cout<<a;
system("pause");
return 0;
}
Объяснение: