Показать сообщение отдельно
Старый 17.08.2011, 19:15   #6
PassCall
Разработчик
 
Аватар для PassCall
 
Регистрация: 07.04.2011
Адрес: Млечный путь, Земля, Европа, Беларусь, Могилев
Сообщений: 391
Написано 94 полезных сообщений
(для 319 пользователей)
Ответ: Определение частоты процессора

Сообщение от maestrodan Посмотреть сообщение
var
R:real;
s:string
begin
s:=integerToString(trunc(R))+','+integerToString(t runc(frac(R)*1000));
end;
Не совсем хорошо. Ибо trunc округляет.

Поэутому из числа 17.85 получиться "18,8500".

Правильнее:
s:=integerToString(trunc(R-frac(R)))+','+integerToString(trunc(frac(R)*1000)) ;


А начет определение частоты:
program speed_o_meter;
var
timer1,timer2,i:integer;
a:real;

begin
timer1:=GetRelativeTimeMs;

for i:=1 to 50000 do
a:=sin (i);

timer2:=GetRelativeTimeMs;
timer1:=timer2-timer1;
drawtext ('Время: '+integertostring(timer1)+' миллисек.',0,0);
repaint;
delay (1000);
end.
Число указывает за сколько миллисекунд высчиталось 50000 вычислений синуса. Незнаю сколько тактов занимает вычисление синуса, поэтому частоту в герцах не вычислю.
__________________
Мечта программиста: запрограммировать процесс программирования.

Всё гениальное - просто.

http://passcall.ucoz.com
(Offline)
 
Ответить с цитированием