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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.03.2012, 03:28   #1
crawter
Пользователь
 
Регистрация: 09.06.2010
Сообщений: 16
По умолчанию Кол-во операций за секунду С++

Всем привет ! передо мной стоит задача - вычислить сколько операций
( +, -, *, /) произойдет за секунду для каждого типа.

я начал делать и кажется не правильно (покажу на примере int'ов, операции +)

Код:
int a = 0;
	clock_t start1 = clock();
	for(int j = 0;j < 1000; j ++)
	{
	for (int i = 0; i < 1000;i++)
	{
	a = mas1[i] + mas2[i];
	}
	}
   long double time = 
1000 / (  (long double) (clock() - start1) / CLOCKS_PER_SEC  )  * 1000000;
В этом фрагменте я выполняю 1.000.000 операций, где mas1 и mas2 - массивы из 1000 элементов, потом в переменную time я :
получаю примерно 20 милисекунд. Делю 1000 (милисекунд в секунде) на результат и умножаю на 1.000.000 (кол-во операций), таким образом получая кол-во операций за секунду.

Прекрасно понимаю что мой алгоритм идиотский, по-этому хотел спросить как его улучшить или переделать)

Последний раз редактировалось ACE Valery; 18.03.2012 в 05:13.
crawter вне форума Ответить с цитированием
Старый 18.03.2012, 07:58   #2
Krok27
Форумчанин
 
Аватар для Krok27
 
Регистрация: 08.07.2010
Сообщений: 505
По умолчанию

CLOCKS_PER_SEC - это что за константа?
если тиков в сек., то

long double time =
1000000 / (((long double) (clock() - start1))/CLOCKS_PER_SEC) ;

иначе, если без констант:

long double time =
1000000 /(((long double) (clock() - start1))/1000) ;
Знающий не говорит, говорящий не знает (С) Лао Цзы
Krok27 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задачи на обработку строк: удалить каждую 3-ю букву, найти кол-во гласных, кол-во цифр в строке,совпадения в 2-х строках Ирина93 Паскаль, Turbo Pascal, PascalABC.NET 6 05.11.2011 22:10
Секунду, идёт загрузка Ципихович Эндрю JavaScript, Ajax 0 02.11.2011 17:04
кликать мышью с интервалом в секунду 4ajnik Помощь студентам 3 10.06.2010 01:07
Как организовать 10 запросов в секунду indy? TwiX Работа с сетью в Delphi 5 07.12.2009 16:35
Найти кол-во целых чисел в первой последовательности и кол-во нечетных во второй. DjDeniels-61 Помощь студентам 7 28.06.2009 13:04