|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
26.03.2008, 17:41 | #1 |
Регистрация: 26.03.2008
Сообщений: 7
|
Как вывести в цикле for ... do строки?
Здравствуйте!
Подскажите, как решить данную задачу: Есть цикл: for i:=1 to 48 do begin ... end; Как вывести в этом цикле следующего вида строки: 0000-0030 0030-0100 0100-0130 ... 2330-0000 По смыслу это получасовые интервалы (с 0000 часов до 0030 часов итд), которых как раз 48. Не важно в каком виде их выводить - будут они строками или числами. Главное, чтобы за каждую итерацию цикла выодилась пара "..."-"..." |
26.03.2008, 17:56 | #2 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Возмите за исходное 00:00 часов.
На каждом шаге цикла прибавляйте к исходному по 30 минут и выводите в формате hhnn первую величину из пары, затем "-", а затем с исходное+30 минут добавкой еще 30 минут... Вроде загадки никакой нет... |
26.03.2008, 18:12 | #3 | |
Регистрация: 26.03.2008
Сообщений: 7
|
Цитата:
0000-0030 0100-0130 0200-0230 ... или я ошибаюсь... А как сделать шаг цикла 30 минут и как работать с временем (формат hhnn)? |
|
26.03.2008, 18:25 | #4 |
Участник клуба
Регистрация: 26.10.2007
Сообщений: 1,244
|
Код:
Умом Россию не понять, пока не выпито ноль пять,
А если выпито ноль пять всё делом кажется не хитрым, Попытка глубже понимать уже попахивает литром... |
26.03.2008, 18:34 | #5 | ||
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Цитата:
Мы прибавляем 30 к исходной величине START и отображаем ее (START). Потом - "-", а затем отображаем (START+30), ничего к ней не прибавляя. И так - 48 раз. Шаг цикла - 1, это просто счетчик наших шагов... Хотя уважаемый Карась предложил чисто строковый метод решения задачи, безо всяких сложений... Цитата:
Последний раз редактировалось mihali4; 26.03.2008 в 18:36. |
||
26.03.2008, 18:42 | #6 | |
Регистрация: 26.03.2008
Сообщений: 7
|
Цитата:
Код:
0000-0030 <значение1> 0030-0100 <значение2> 0100-0130 <значение3> ... 2330-0000 <значение48> Последний раз редактировалось ViTYAi2007; 26.03.2008 в 18:43. Причина: лишняя строка |
|
26.03.2008, 18:49 | #7 | |
Регистрация: 26.03.2008
Сообщений: 7
|
Цитата:
при i=1 : 0100-0130 при i=2: 0200-0230 при i=3: 0300-0330 итд |
|
26.03.2008, 19:57 | #8 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Достала эта дурацкая задачка
Вот, наколбасил: Код:
|
26.03.2008, 20:04 | #9 |
Владимир М.
Участник клуба
Регистрация: 30.10.2006
Сообщений: 1,289
|
mihali4, для Pascal тут только IntToStr переписать
Берегите друг друга!
|
26.03.2008, 20:22 | #10 |
Участник клуба
Регистрация: 26.10.2007
Сообщений: 1,244
|
А вот ещё один способ решения с процедурой....
Код:
Умом Россию не понять, пока не выпито ноль пять,
А если выпито ноль пять всё делом кажется не хитрым, Попытка глубже понимать уже попахивает литром... |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
считать из файла две строки, вывести на экран символы первой строки, которые отсутствуют во второй | gotex | Помощь студентам | 4 | 08.05.2008 02:27 |
как вывести строку поочередно сначала первая буква первой строки потом первая буква второй строки и т.д. | vitalik007 | Помощь студентам | 1 | 25.09.2007 20:45 |
Как из Memo вывести строки в txt файл в конец там существующих | Saili | Компоненты Delphi | 8 | 16.12.2006 11:23 |