Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.10.2015, 12:38   #1
Катила
Новичок
Джуниор
 
Регистрация: 02.10.2015
Сообщений: 1
Печаль В текстовом файле представлены названия лекарств, срок их годности, количество стандартов и стоимость

Мне дана прога:
В текстовом файле представлены названия лекарств, срок их годности, количество стандартов и стоимость одного стандарта (через пробелы), например:
Аспирин 15.04.99 127 1.35
Настойка валерианы 27.09.01 23 5.40
Вывести на экран данные о лекарствах с истекшим сроком годности на сегодняшний день (с учетом перехода через столетие) и подсчитать общую стоимость таких лекарств. Срок годности для каждого лекарства определите самостоятельно.
Никто в моей группе не имеет понятия как ее написать, 3 курс....

Последний раз редактировалось Катила; 02.10.2015 в 12:44.
Катила вне форума Ответить с цитированием
Старый 02.10.2015, 12:50   #2
GreenWizard
мальчик-помогай =)
Форумчанин
 
Регистрация: 16.09.2010
Сообщений: 522
По умолчанию

читай строку и парсь её на части:
1) от начала до первого блока "пробел-число-число-точка" - название
2) от конца названия до пробела - дата
3) остальное - время
далее (либо между 2 и 3) в дате выделяешь год, переводишь в число, и смотришь больше ли он, скажем, 50.... если да, то это 19хх, иначе 20хх год
если это Делфя, то, возможно, все эти телодвижения уже есть в StrToDateTime и тебе останется разделить строку на название и дата-время
GreenWizard вне форума Ответить с цитированием
Старый 02.10.2015, 12:58   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
читай строку и парсь её на части:
Да. Согласен.
Автор:
Считку можно сделать так:
Код:
var st:TStringList;
...
st.LoadFromfile('Файл');
Поиск так:
Код:
function Search():TStringList;
Var i:integer; s:TStringList; dt:TDateTime;
begin
 Result:=TStringList.Create(); s:=TStringList.Create(); 
 for i:=0 to st.Count-1 do begin
  s.DelimitedText:=st[i];
  dt:=StrToDateTime(st[st.count-3]);
  if BetweenYear(Now,dt)>100 then Result.Append(st[i]);
 end;
 s.free;
end;
Подходит идейка?
I'm learning to live...

Последний раз редактировалось Stilet; 02.10.2015 в 13:01.
Stilet вне форума Ответить с цитированием
Старый 02.10.2015, 23:14   #4
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Подходит идейка?
в наименованиях могут быть разделители.
поэтому, думаю, парсить строку надо справа налево.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 03.10.2015, 08:29   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
парсить строку надо справа налево.
А я так и делаю: dt:=StrToDateTime(st[st.count-3]);
Привязываюсь к концу, сколько бы там в начале не получилось элементов.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В текстовом файле хранится программа, записанная на языке Turbo Pascal. Вычислить и дописать в конец этого файла количество операт Grenki Паскаль, Turbo Pascal, PascalABC.NET 5 13.04.2014 12:00
в текстовом файле подсчитать количество всех различных слов из латинских букв без учета регистра, которые имеют заданную длину slava5170 Linux (Ubuntu, Debian, Red Hat, CentOS, Mint) 5 09.10.2013 17:47
вычислить количество абзацев в текстовом файле F1! olive Паскаль, Turbo Pascal, PascalABC.NET 1 23.09.2012 22:02
Паскаль.нужно вычислить количество абзацев в текстовом файле F1! olive Помощь студентам 1 23.09.2012 21:46
В текстовом файле подсчитать количество непустых строк. Программа на с++ Ann_93 Помощь студентам 1 28.04.2012 09:20