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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.05.2010, 13:37   #1
KotKot
Новичок
Джуниор
 
Регистрация: 13.05.2010
Сообщений: 3
Вопрос Динамические массивы

Функция Day of Week возвращает не строку а число :0-Воскресение,1-Понедельник,2-Вторник,3-среда и.т.д.Помогите понять почему в приммере:
(
Код:
procedure TForm1.GetDayButtonClick(Sender: TObject);

var
day:integer;
week:array[1..7] of string;
begin
week[1]:='Воскресенье';
week[2]:='Понедельник';
week[3]:='Вторник';
week[4]:='Среда';
week[5]:='Четверг';
week[6]:='Пятница';
week[7]:='Суббота';
day:=DayOfWeek(Date);
DayOfWeekEdit.Text:=week[day];
end;
функция DayOfWeek возвращает число 3,а не 2 если сегодня вторник?
Если ответ правильный окажется что:возвращает 3 как третий элемент массива который находится в строке под номером 2.Тоесть функция DayOfWeek возвращает строку под номером 2.Тогда почему в похожем примере:
procedure TForm1.GetDayButtonClick(Sender: TObject);

var
day:integer;
week:array[0..6] of string;
begin
week[0]:='Воскресенье';
week[1]:='Понедельник';
week[2]:='Вторник';
week[3]:='Среда';
week[4]:='Четверг';
week[5]:='Пятница';
week[6]:='Суббота';
day:=DayOfWeek(Date);
DayOfWeekEdit.Text:=week[day];
end;
функция DayOfWeek возвращает 3 а не 2.Ведь тогда строка в массиве окажется под номером 3 а не 2.Помогите разобраться.
Если ответ правильный не такой то скажите какой?Помогите разобраться.
Может в книге написано не правильно что если функция DayOfWeek возвращает 2 то это вторник.Может 3 это вторник?

Последний раз редактировалось Stilet; 13.05.2010 в 13:55.
KotKot вне форума Ответить с цитированием
Старый 13.05.2010, 13:42   #2
Neurogenus
Заблокирован
 
Регистрация: 05.05.2010
Сообщений: 40
По умолчанию

Понимаете в чем дело...есть же американский календарь...у них неделя начинается с воскресенья..(попробуйте сменить языковую оболочку системы на английскую и поймете)...Удачи вамДерзайте..
Neurogenus вне форума Ответить с цитированием
Старый 13.05.2010, 13:47   #3
Sharom_Debt
Пользователь
 
Регистрация: 04.10.2009
Сообщений: 21
По умолчанию

Нумерация начинается с нуля, а у тебя с единицы.
Sharom_Debt вне форума Ответить с цитированием
Старый 13.05.2010, 13:52   #4
Neurogenus
Заблокирован
 
Регистрация: 05.05.2010
Сообщений: 40
Радость

Цитата:
Описание
Функция DayOfTheWeek возвращает индекс дня недели:

1 = Понедельник
2 = Вторник
3 = Среда
4 = Четверг
5 = Пятница
6 = Суббота
7 = Воскресенье
Цитата:
Примечания
Предупреждение: Эта функция НЕ соглачована с ISO 8601.

DayOfTheWeek является согласованной с ISO 8601, и использует Понедельник как начало недели.
Источник: http://www.delphisources.ru/pages/faq/faq_delphi_basics/DayOfWeek.php.html

Цитата:
Теперь:
function DayOfWeek(Date: TDateTime): Integer;

Описание
Функция DayOfWeek возвращает день недели даты, где 1 обозначает воскресенье, 7 - субботу
Ошибки
Источник: http://valera.asf.ru/delphi/help/nam...name=DayOfWeek

И на последок:
Цитата:
Function DayOfWeek(Date: TDateTime): Integer;

Возвращает день недели определенной даты как целое число между 1 и 7. Воскресенье - первый день недели, и суббота - седьмой.
Источник: http://www.codenet.ru/progr/delphi/O...l/datetime.php

Вывод - на делфисурс ошибка..
Neurogenus вне форума Ответить с цитированием
Старый 13.05.2010, 14:25   #5
KotKot
Новичок
Джуниор
 
Регистрация: 13.05.2010
Сообщений: 3
По умолчанию

wewqeeeqeqeqew

Последний раз редактировалось KotKot; 13.05.2010 в 15:18.
KotKot вне форума Ответить с цитированием
Старый 13.05.2010, 15:00   #6
KotKot
Новичок
Джуниор
 
Регистрация: 13.05.2010
Сообщений: 3
По умолчанию

qeweqweqeqwewqeqw

Последний раз редактировалось KotKot; 13.05.2010 в 15:19.
KotKot вне форума Ответить с цитированием
Старый 13.05.2010, 15:07   #7
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Вычитай единицу и не парься. У америкосов все через задний проход даже неделя начинается с воскресенья, чего непонятно?
воскресение 1
понедельник 2
вторник 3
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамические массивы [ICQ] Помощь студентам 3 20.02.2015 17:31
Динамические массивы Matr1x Общие вопросы C/C++ 5 07.12.2009 13:38
Динамические массивы на С++ LoRD_ОЛЕДЖАН Помощь студентам 3 14.07.2009 13:43
динамические массивы в Си aka_faith Помощь студентам 1 24.05.2009 00:56
динамические массивы funky Общие вопросы C/C++ 3 12.05.2009 01:54