Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Gettime

Автор: Anastacia Adesso 27.09.2006 22:12

Прикрепленный файл  SALIDZ.PAS ( 2.12 килобайт ) Кол-во скачиваний: 627
А вот эта очень странная..
Надо посчитать время затраченное на сортировку каждым методом отдельно.

А он везде выдаёт по нулям, на больших константах глючит..
Что делать?

Автор: volvo 27.09.2006 22:31

blink.gif blink.gif

Еще бы... Ты представляешь себе, КАКИЕ значения выводятся в GetTime? Первое: изменить тип Start с Word на LongInt... Второе: смотреть на исходник функции GetTime здесь: http://forum.pascal.net.ru/index.php?s=&showtopic=8585&view=findpost&p=58499, пока не заметишь ошибку... smile.gif

Третье: после всех исправлений я проверил на 200 вызовах

     start:=gettime;
for i := 1 to 200 do { <--- !!! }
shella(ar, n ,sella);

writeln('Laiks ir ',gettime-start,'ms');

и у меня получилось время порядка 20-25 мс, так что ноль для одного вызова - это вполне логичный результат. НО!!! Ошибку все-же исправить надо...

Автор: Anastacia Adesso 27.09.2006 22:50

О Боже!!! Я ошибку так и не нашла в функции..

А по 200 раз прогоняя там такая фигня выходит.. unsure.gif blink.gif

Автор: volvo 27.09.2006 22:52

Не нашла? Тогда смотри... Твой вариант:

Цитата
function gettime:longint;
var h,m,s,ms :word;
begin
dos.gettime(h,m,s,ms);
gettime:=ms*100*(s+60*(m+60*h));
end;

А теперь посмотри, что у меня было... blum.gif

Автор: Anastacia Adesso 27.09.2006 23:01

Старею smile.gif
Спасибо!!!

А как думаешь, в таком виде препод примет прогу?