0 / 0 / 0
Регистрация: 04.12.2018
Сообщений: 96
|
||||||
1 | ||||||
Нахождение самого младшего и самого старшего человека из txt03.10.2019, 13:03. Показов 9881. Ответов 19
Метки нет (Все метки)
Есть txt файл в котором 5 строк(личный код человек,имя, фамилия)
(содержимое txt ниже) 50001170299 Nikita Kuznecov 50102184262 Mihail Smirnov 50203198956 Edgar Fedorov 50304205654 Semjon Volkov 50405214987 Vadim Alekseev где 1ая цифра у всех одинаковая 2ая и 3я цифры это 2 последние цифры года рождения 4ая и 5я цифры это номер месяца рождения(январь-01 и т.д) 6ая и 7ая цифры дата рождения(от 1 до 31) остальные цифры произвольные. и Нужно через python считать файл и вывести имя+фамилию самого младшего и самого старшего человека
0
|
03.10.2019, 13:03 | |
Ответы с готовыми решениями:
19
Вывести цифры самого младшего и самого старшего разряда заданного числа Число. Вывести только цифры самого младшего и самого старшего разряда Массив структур: найти самого младшего и самого старшего школьника Вывести только цифры самого младшего и самого старшего разряда |
0 / 0 / 0
Регистрация: 04.12.2018
Сообщений: 96
|
||||||
03.10.2019, 13:21 [ТС] | 3 | |||||
Welemir1, да, я знаю. Он только открывает файл и записывает все строки в переменную info и выводит соответственно. Как решать задачу дальше - смутно понимаю. Дальше нужно это как-то записать в массив и сравнить друг с другом, но сравнивать ведь нужно не целые строки, а первые 7 цифр только нужны. И выводить только имя, фамилию
Добавлено через 9 минут
как-то так?
0
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
|
03.10.2019, 13:24 | 4 |
Хм, сейчас попробую что-нибудь придумать.
0
|
Автоматизируй это!
|
|
03.10.2019, 13:32 | 5 |
Zenka17, подходов как всегда есть несколько, мне в голову например пришел сразу с ООП, но это годы проведенные с Джавой сказываются. Но можно и проще:
-считали строку - разобрали на дату, имя фамилию - если дата больше нашего максимума (в начале проги он пустой) или меньше минимума то запоминаем и дату и имя с фамилией в соответственный переменные. Обрати внимание что цикл только 1! - возвращаемся к первому пункту Так мы в цикле считаем все строки и у нас в переменных (списках?) минимума и максимума будут самый младший и самый старший. Единственный вопрос -как сравнивать, я бы предложил попросту через datetime, но может кто-нибудь и проще подскажет решение. А я бы конечно решил через класс или namedtuple Добавлено через 1 минуту Damenikx, давай делай, нормальная задача для тебя.
0
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
|
03.10.2019, 13:34 | 6 |
Можно придумать словарь и сделать с помощью него
0
|
Welemir1
|
03.10.2019, 13:57
#7
|
0
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
|
03.10.2019, 13:59 | 8 |
Welemir1, я решил, повырезать строки и символы, но попал в некоторую "западню" библиотека datetime (как вы подсказали) переводит кусок в дату, но не правильно. Мы имеем год, как 2 цифры, а не 4. Может подскажете?
0
|
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
|
||||||
03.10.2019, 14:01 | 9 | |||||
добавить две цифры в год?
что-то вроде
0
|
Welemir1
|
03.10.2019, 14:01
#10
|
Не по теме: Damenikx, ну подставь 20 к году то)
0
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
|
03.10.2019, 14:34 | 11 |
Всё, всё, я понял, занимаюсь.
Добавлено через 30 минут Итак я приплыл, но до конца так и не разобрался, сравнивать даты по max и min - нельзя, итерацию с датами проводить тоже нельзя. Выручайте.
0
|
Автоматизируй это!
|
|
03.10.2019, 14:37 | 12 |
даты вполне поддерживают отношения < и >
кроме того можно сделать страшное - отсортировать список и (ты не поверишь) первым элементом будет младший, а последним -старший. Тут главное сортировать именно по дате. Ждем решения, пока тебя ТС не опередил, он смотрю решает вовсю
1
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
|
03.10.2019, 14:43 | 13 |
Welemir1, так я за первенство не соревнуюсь. Я добавил даты в список и нашёл максимальную и минимальную. Так можно было?
0
|
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
|
||||||
03.10.2019, 14:45 | 14 | |||||
кто сказал?
1
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
||||||
03.10.2019, 15:13 | 15 | |||||
ioprst, я уже придумал, как, спасибо
Добавлено через 20 минут Итак, вот моё детище и мой ужаааааас!
Не по теме: Сейчас перекур и готов пояснить. Как говорится: "Э, поясни за код!"
2
|
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
|
||||||
03.10.2019, 15:26 | 16 | |||||
Damenikx, зачем все делать под with?
Добавлено через 11 минут Если данных мало, можно все в словаре сохранить
1
|
Автоматизируй это!
|
|
03.10.2019, 15:36 | 17 |
ioprst, я в прошлый раз его отругал за то, что не использовал контекст, он теперь все туда помещает)
тебе в джава ветку с такими именами) Добавлено через 6 минут уже не в первый раз, это кто так научил? путь пиши прямо внутри опен и просто название файла, а файл клади в ту же папку, где скрипт зачем? сразу к ридлайнс обращайся но решил не за 3 страницы - уже хорошо
1
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
|
03.10.2019, 15:49 | 18 |
Welemir1, ioprst, прошу прощения за свой убогий код
Да, я сразу и предложил словарь. Но так как я словарь делал прошлый раз, решил потренероваться со строками. Ещё я совсем зелёный, поэтому я не могу сделать, как вы, в пару строк, как говориться "посох коротковат", но я учусь С фантазией у меня так себе Эта привычка осталась от c#, из свойств, надеюсь скоро отучусь! Не знаю почему, но мне хочется всё и вся запихнуть в переменную. Я знаю, что это плохо. Спасибо!
1
|
4939 / 3292 / 1140
Регистрация: 21.03.2016
Сообщений: 8,076
|
||||||
03.10.2019, 21:08 | 19 | |||||
мне кажется тут тупо собрать все в списки и отсортировать. первая цифра год если они одинаковы то по второй по месяцу или по дню будет сортироваться стандартно ну а если все три одинаковы то уже по имени. может ошибаюсь если что поправьте
2
|
Автоматизируй это!
|
|
03.10.2019, 21:22 | 20 |
Semen-Semenich, четко!
я про саму идею, вариант со списками мне не понравился из-за
0
|
03.10.2019, 21:22 | |
03.10.2019, 21:22 | |
Помогаю со студенческими работами здесь
20
Найти самого старшего и самого младшего участника соревнований Найти самого старшего и самого младшего участника соревнований Определить на сколько лет возраст самого старого человека превышает возраст самого младшего определять самого старшего человека Определить самого старшего человека из списка Найти самого старшего человека из списка Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |