17. num = 23
# 1 вариант - преобразуем число в строку, разбиваем на цифры
string = str(num)
if int(string[0]) < int(string[1]): # если первая цифра меньше второй
string = string[1] + string[0] #меняем их местами
num = int(string)
# 2 вариант - остатком от деления на степени 10
# остаток от деления на 10 - первая цифра числа, остаток от деления на 100 - вторая и так далее
if num % 10 < num % 100: #если первая цифра меньше второй
num = num % 10 * 10 + num % 100
21.
num = 1234
# 1 вариант - преобразуем число в список и находим сумму цифр
string = str(num)
lst = [int(n) for n in string] # учили списковое включение? если нет, смотри следующий код
lst = []
for n in string:
lst.append(int(n)) # это все если не учили списковое включение
# второй вариант - остатки от деления на 10 суммируем вручную
first = num % 10
sec = num % 100
th = num % 1000
four = num % 10000
result = first + sec + th + four
result = sum(n)
Объяснение:
Функция sum() возвращает сумму элементов списка
Если будут вопросы - пиши
Если пригодилось - оцени ответ ;)
Вот к примеру простая структура.
struct stud
{
string name;
string surname;
string second_name;
string lesson;
int mark[3];
};
Далее мы с библиотеки fstream создаём экземпляр класса "ifstream" и соединяем его с файлом.
Пример: ifstream fin("myfile.txt);
Потом в цикле считываем инфу с открытого файла.
Вот пример для моей структуры.
student m; //создал переменную с типом моей структуры.
while(!fin.eof())
{
fin >> m.surname; //считываю фамилию в структуру
fin >> m.name;
fin >> m.second_name;
fin >> lesson;
//а теперь оценки в инт, это уже будет сделать чуть сложнее.
//для этого считываем инфу в чаровый буфер и через atoi переводим
fin >> temp;
m.mark[0]=atoi(temp);
fin >> temp;
m.mark[1]=atoi(temp);
fin >> temp;
m.mark[2]=atoi(temp);
}
Что-то на подобии этого, я считывал инфу в свою структуру, но вы просто считывайте её в ваш вектор и всё.
Обязательно в условии цикла поставить "!название вашего объекта.eof()".
Ну и в конце закрыть файл методом .close();
Прикрепил скрин с маленьким примером, ну и кинул как это работает с массивами. (с векторами это тоже отлично работает, просто мне лень)