![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 06.06.2013
Сообщений: 3
|
![]()
Здравствуйте уважаемые!
Задание такое - В текстовом файле представлены названия лекарств, срок годности, стоимость. Вывести на экран данные о лекарствах с истекшим сроком годности на сегодняшний день Я написал программу которая выводит содержимое текстового файла на экран . А проблема в следующем : Как сделать так чтобы она выводила лекарства с истекшим сроком годности ? Я примерно понимаю алгоритм что нужно брать дату с компьютера и сравнивать с датой в текстовом файле . Но до конца понять не могу и в принципе не знаю как нужно дополнить код . Помогите кто чем сможет!!! Заранее спасибо! ![]() Вот исходник Код:
|
![]() |
![]() |
![]() |
#2 | ||
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
выделять из строки нужные части, в вашем случае дату истечения срока годности (это же имеется под понятием "срок годности" в данном случае?), полученную дату разобрать на составляющие (год, месяц, день) и перевести их из строкового представления в числовое. и вот только после этого полученные числа можно сравнить с текущей датой. p.s. Цитата:
![]() |
||
![]() |
![]() |
![]() |
#3 | ||
Регистрация: 06.06.2013
Сообщений: 3
|
![]() Цитата:
![]() Цитата:
![]() |
||
![]() |
![]() |
![]() |
#4 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
что "разобрать" строку на отдельные элементы, она должна СТРОГО соответствовать определённому формату (шаблону) Вам же текстовый файл не дали, можно любой свой придумать?.. Тогда, можно, конечно, с помощью scasb искать очередные разделители (ну, например, пробелы или запятые, или точку с запятой - что Вы сами придаемете), но проще сделать файл, состоящий из подстрок (элементов == столбцов) ФИКСИРОВАННОЙ длины. например, первые 12 символов дата в формате ДД.ММ.ГГГГ (где дд,мм,ггг - это числа - день, месяц, год). Тогда Вам достаточно прочитать первые 12 символов, потом из полученной строки взять первые два символа, перевести их в число (поиск по форуму, найдете код), получите дату срока годности, потом сдвинуть индекс на 1 (это пропустит точку), потом из этой же строки взять по индексу очередные два символа -> преобразовать в число, получите месяц, потом тоже самое повторить для года. Поймите, что то, что на Паскале (ну или Delphi/С/C++/C#/Java) займёт пять минут (это ещё и с отладкой), на Ассемблере потребует (ну вот для примера лично у меня) over 2-3 часа. А теперь подумайте, буду ли я тратить два часа своей жизни на то, чтобы писать никому не нужный код на этом низкоуровневом Ассемблере?!! поэтому у Вас следующие пути: вариант 1. (наиболее предпочтительный). Вы находите поиском по форуму и по интернету примеры аналогичных программ, разбираетесь в коде, если в вашем коде возникает затык, который Вы самостоятельно решить не можете - тут, в теме на форуме выкладываете полностью свой код, описываете подробно проблему и, скорее всего, получаете помощь в виде указания ошибки или исправленного кода. Вариант 2. Быстрый (и неправильный, но зато думать почти не придётся) - платите деньги и получаете готовый код (см. раздел Фриланс). Плохо в этом методе то, что у Вас, возможно, возникнут проблемы при сдаче (защите) данной программы, или при написании аналогичной программы, например, на контрольной. Впрочем, если Вы тщательно проштудируете полученную программу, изучите её, пропустите, так сказать, через себя, то, возможно, и сможете защить/объяснить её и написать аналогичную при необходимости. Вариант 3. Подождать чуда. Тут на форуме множество профи, к тому же и альтруистов. Возможно, кто-то напишет подобную программу за xx минут, которые у него есть свободные, возможно (кстати, достаточно вероятно) у кого-го уже есть готовый код, который делает нечто подобное. и он это код доработает под вашу задачу или просто так отдаст Вам и Вы самостоятельно доработаете код под свои нужды. изверги у Вас преподаватели! Так им и передайте! ![]() Это хоть курсовой проект? Не простая лаба или задание на допуск? |
|
![]() |
![]() |
![]() |
#5 | |
Старожил
Регистрация: 08.02.2012
Сообщений: 2,173
|
![]() Цитата:
По сути же, без "fuck.txt" с этой задачей даже связываться неинтересно... Структура исходных данных определяет стратегию оптимального решения.
Правильно поставленная задача - три четверти решения.
Последний раз редактировалось DiemonStar; 23.10.2013 в 08:59. |
|
![]() |
![]() |
![]() |
#6 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
ну, в качестве "прописей" в рамках обучения письму, возможно, что и покатит. Но, имхо, полученные знания явно не стоят затраченных усилий... по сути я с этим согласен. Только, рискну предположить, что исходный текстовый файл автору топика не был предоставлен. А значит, в его воле использовать такую структуру, которая позволит решать задачу с минимальными затратами. Имхо, конечно... |
|
![]() |
![]() |
![]() |
#7 | ||
Старожил
Регистрация: 08.02.2012
Сообщений: 2,173
|
![]() Цитата:
Цитата:
Правильно поставленная задача - три четверти решения.
|
||
![]() |
![]() |
![]() |
#8 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
сравнение с текущей датой | Ks2010 | SQL, базы данных | 10 | 09.02.2011 16:23 |
запрос с текущей датой | ГОСЕАН | Помощь студентам | 1 | 13.01.2011 13:05 |
Сравнение, нужна помощь! | Wolve | Microsoft Office Excel | 11 | 12.10.2009 19:12 |
Создать папку с текущей датой | Dorvir | Microsoft Office Excel | 1 | 16.07.2008 10:10 |
нужна помощь, сравнение строк в Си 3.1 | feranic | Помощь студентам | 5 | 24.04.2008 17:57 |