2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Как можно считать время в Pascal?
Сообщение09.11.2013, 09:19 


09/11/13
1
В задачи надо определенное количество раз считать время(вводится вручную) по типу чч:мм

 Профиль  
                  
 
 Re: Как можно считать время в Pascal?
Сообщение09.11.2013, 10:31 
Заслуженный участник


11/05/08
32166
Цитата:
GetTime (procedure) (WinDos unit)
=======================================
Returns the current time set in the operating
system.

Declaration:
procedure GetTime(var Hour, Minute, Second, Sec100: Word);

Target:
Windows, Real, Protected

Remarks:
Ranges of the values returned are Hour 0..23,
Minute 0..59, Second 0..59, and Sec100
(hundredths of seconds) 0..99.

 Профиль  
                  
 
 Re: Как можно считать время в Pascal?
Сообщение09.11.2013, 15:15 
Заслуженный участник


27/04/09
28128
ewert, мне показалось, имелось в виду преобразование строки типа "07:34" в запись с часами и минутами.

aleks9, вам часы нужны, или можно всё преобразовать в минуты? Хотя это не так важно. Важно, всегда ли час в строке состоит из двух цифр, и есть ли в паскале функция поиска символа в строке, и обязательна ли работа на всех паскалях, или только на каком-то конкретном.

-- Сб ноя 09, 2013 18:19:29 --

Ну или не в запись а вот такими var-параметрами, как выше. (В Delphi и, надеюсь, в FreePascal есть для этой цели out-параметры, которые можно только установить, но нельзя считать, и потому можно вызывать функцию с подставленными в такие параметры неинициализированными переменными.)

-- Сб ноя 09, 2013 18:20:18 --

И да, aleks9, что вы умеете делать со строками? Это поможет быстрее разобраться, какую часть функции вы напишете сами. :wink:

 Профиль  
                  
 
 Re: Как можно считать время в Pascal?
Сообщение09.11.2013, 19:48 
Заслуженный участник


09/09/10
3729

(Оффтоп)

arseniiv в сообщении #786608 писал(а):
out-параметры, которые можно только установить, но нельзя считать

Стоп, что? Вы мне хотите сказать, что
  1. procedure f(out a: integer); 
  2. begin 
  3.   a := 5; 
  4.   writeln("a + 1 = ", a + 1); 
  5. end; 

не скомпилируется?

 Профиль  
                  
 
 Re: Как можно считать время в Pascal?
Сообщение10.11.2013, 00:32 
Заслуженный участник


27/04/09
28128

(2 Joker_vD.)

Угу. В Turbo Pascal 7.1 (сейчас специально загрузил :-)) среди ключевых слов out нет, и вот такой код
Используется синтаксис Pascal
  1. var
  2.   a: Integer;
  3.  
  4. procedure FillInt(out x: Integer)
  5. begin
  6.   x = 42;
  7. end;
  8.  
  9. begin
  10.   FillInt(a);
  11.   Writeln(a);
  12.   Readln;
  13. end.
даёт ошибку компиляции Error 86: ":" expected. с помещением курсора под x в строке 4.

UPD. А, дошло, о чём вы! Да, не то написал. После присваивания значение читать можно, но до соответствующая переменная будет неинициализированной, и как раз в этом случае чтение её значения должно работать так же как чтение значения неинициализированной переменной в другом месте (не помню, это вызывает ошибку компиляции или просто выдаёт мусор).

 Профиль  
                  
 
 Re: Как можно считать время в Pascal?
Сообщение10.11.2013, 09:12 
Заслуженный участник


11/05/08
32166
arseniiv в сообщении #786881 писал(а):
это вызывает ошибку компиляции или просто выдаёт мусор

просто мусор

 Профиль  
                  
 
 Re: Как можно считать время в Pascal?
Сообщение10.11.2013, 16:56 
Аватара пользователя


30/05/09
121
Киев
Почему бы не парсить строку, раз уж известен формат чч:мм. Попахивает чем-то вроде
Используется синтаксис Pascal
procedure StrToTime(const str_time: string; var Hour, Minute: Integer);

 Профиль  
                  
 
 Re: Как можно считать время в Pascal?
Сообщение10.11.2013, 18:05 
Заслуженный участник


06/07/11
5627
кран.набрать.грамота
Alhimik в сообщении #787105 писал(а):
Почему бы не парсить строку, раз уж известен формат чч:мм.
Почему бы просто не вбить в гугл название своего компилятора паскаля плюс "преобразовать строку в дату" и не получить список названий готовых функций, которых есть с десяток?

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group