Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.79/63: Рейтинг темы: голосов - 63, средняя оценка - 4.79
-6 / 3 / 0
Регистрация: 16.04.2011
Сообщений: 55
1

Секундомер.

02.05.2011, 15:25. Показов 11758. Ответов 32
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Знаю подобные темы уже рассматривались на форуме, но ни в одной из них я не нашел ответа мой вопрос...
Как организовать секундомер что бы он начал счет в конкретный момент выполнения программы и закончил считать в нужный момент, записав результат в переменную ?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.05.2011, 15:25
Ответы с готовыми решениями:

секундомер
Здравствуйте госпола програмисты!У меня такой вопрос-как сделать секундомер,что бы он не зависел от...

Секундомер
Пытаюсь написать секундомер, только вот не знаю как остановить его по нажатию клавиши и вернуть...

секундомер
Здраствуйте! Мне задали на практику составить программу «Секундомер», позволяющую записывать...

Секундомер на С++
Добрый день. Подскажите, как написать простейший консольный секундомер на с++ без использования...

32
Freelance
Эксперт С++
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
02.05.2011, 15:30 2
C++
1
2
3
4
5
6
7
#include <ctime>
 
//...
const clock_t start = clock();
// Действи которое хотите измерить
const double duration = static_cast<double>(clock() - start) / CLOCKS_PER_SEC;
//...
0
-6 / 3 / 0
Регистрация: 16.04.2011
Сообщений: 55
02.05.2011, 15:32  [ТС] 3
А можно с комментариями ?
0
Freelance
Эксперт С++
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
02.05.2011, 15:51 4
Цитата Сообщение от pSychOo Посмотреть сообщение
А можно с комментариями ?
Ага: http://www.cplusplus.com/refer... ime/clock/
1
-6 / 3 / 0
Регистрация: 16.04.2011
Сообщений: 55
02.05.2011, 16:06  [ТС] 5
Я вообще то помощи прошу, а не что бы пред мной тут выделывались...
0
Freelance
Эксперт С++
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
02.05.2011, 16:09 6
Цитата Сообщение от pSychOo Посмотреть сообщение
Я вообще то помощи прошу, а не что бы пред мной тут выделывались...
Ага и что ?
1
Эксперт С++
1069 / 848 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
02.05.2011, 16:11 7
Цитата Сообщение от pSychOo Посмотреть сообщение
Я вообще то помощи прошу, а не что бы пред мной тут выделывались...
Дорогой, перед тобой не выделываются, а дают информацию. Которую, вообще-то ты должен был нарыть самостоятельно...
Так что прочитай, и задай конкретный вопрос, что непонятно.
0
-6 / 3 / 0
Регистрация: 16.04.2011
Сообщений: 55
02.05.2011, 16:15  [ТС] 8
Цитата Сообщение от asics Посмотреть сообщение
C++
1
2
3
4
5
6
7
#include <ctime>
 
//...
const clock_t start = clock();
// Действи которое хотите измерить
const double duration = static_cast<double>(clock() - start) / CLOCKS_PER_SEC;
//...
Мне непонятно все! Объясни пожалуйста что здесь за все отвечает.
0
Freelance
Эксперт С++
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
02.05.2011, 16:18 9
Цитата Сообщение от pSychOo Посмотреть сообщение
Объясни пожалуйста что здесь за все отвечает.
Я дал ссылку, там все описано, а то что Вы это не понимаете - ваши проблемы.
0
Эксперт С++
1069 / 848 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
02.05.2011, 16:26 10
Цитата Сообщение от pSychOo Посмотреть сообщение
Мне непонятно все! Объясни пожалуйста что здесь за все отвечает.
Это говорит о том, что вы ВООБЩЕ НЕ ЧИТАЛИ книжек по С/С++.
#include <ctime> понятно?
0
-6 / 3 / 0
Регистрация: 16.04.2011
Сообщений: 55
02.05.2011, 16:33  [ТС] 11
Цитата Сообщение от ValeryLaptev Посмотреть сообщение
Это говорит о том, что вы ВООБЩЕ НЕ ЧИТАЛИ книжек по С/С++.
#include <ctime> понятно?
Все что мне понятно в этой строке, это то, что она подключает библиотеку "citime". За что она отвечает я не в курсе, так как ни разу не доводилось использовать в программах секундомер...

Добавлено через 2 минуты
Цитата Сообщение от asics Посмотреть сообщение
Я дал ссылку, там все описано...
Там описана программа реализации таймера, и ничего того, что давало бы ответ на мой вопрос!
Если считаешь что твое высокомерие мои проблемы, то будь так добр, не трать мое время...
0
Заблокирован
02.05.2011, 16:35 12
смотри может это подойдет. его только немного доделать надо
Вложения
Тип файла: rar SEKYNDOM.rar (947 байт, 69 просмотров)
1
Freelance
Эксперт С++
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
02.05.2011, 16:36 13
Цитата Сообщение от pSychOo Посмотреть сообщение
Если считаешь что твое высокомерие мои проблемы, то будь так добр, не трать мое время...
Будет зделано, гражданин начальник!
1
Эксперт С++
1069 / 848 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
02.05.2011, 16:37 14
Цитата Сообщение от pSychOo Посмотреть сообщение
Все что мне понятно в этой строке, это то, что она подключает библиотеку "citime". За что она отвечает я не в курсе, так как ни разу не доводилось использовать в программах секундомер...
Поскольку у вас интернет работает, можно залезть на сайт MSDN и там прочитать все...
ctime - это библиотека функций для работы со временем.
clock() - это одна из функций. Которая Returns the number of clock ticks elapsed since the program was launched - возвращает количество тиков, прошедших с момента запуска программы.
То есть, дважды вызвали clock()? потом отняли от второго первое - получили количество тиков между вызовами. И делим на константу CLOCKS_PER_SEC specifies the relation between a clock tick and a second (clock ticks per second) - количество тиков в секунду.
1
-6 / 3 / 0
Регистрация: 16.04.2011
Сообщений: 55
02.05.2011, 16:47  [ТС] 15
Цитата Сообщение от ValeryLaptev Посмотреть сообщение
ctime - это библиотека функций для работы со временем.
clock() - это одна из функций. Которая Returns the number of clock ticks elapsed since the program was launched - возвращает количество тиков, прошедших с момента запуска программы.
То есть, дважды вызвали clock()? потом отняли от второго первое - получили количество тиков между вызовами. И делим на константу CLOCKS_PER_SEC specifies the relation between a clock tick and a second (clock ticks per second) - количество тиков в секунду.
Спасибо за пояснение. Пока вроде все понятно, возможно появятся дополнительные вопросы после того как попробую это реализовать в своей программе, но там думаю уже сам смогу разобраться.
0
0 / 0 / 1
Регистрация: 13.03.2011
Сообщений: 24
02.05.2011, 17:36 16
asics, написал, как вы предложили:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <iostream>
#include <ctime>
 
using namespace std;
 
void Prime (int n)
{
    bool f = true;
    int d = 2;
    while ((d <= n) && (f))
    {
        if (n % d == 0)
            f = false;
        d++;
    }
    cout << f << endl;
}
 
int main()
{
    const clock_t start = clock();
    Prime(9999999);
    const float duration = static_cast<float>(clock() - start) / CLOCKS_PER_SEC;
 
    cout << duration << endl;
    system("Pause");
    return 0;
}
но это ничего не дало, никакого результата... Нужно чтобы выдало время, затраченное на выполнения алгоритма, в данном случае - это проверка на простоту числа (специально не оптимизированный)...
Что исправить?
0
Эксперт С++
1069 / 848 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
02.05.2011, 17:41 17
А что выдает-то? Ноль?
Просто комп очень быстрый.
Нужно вызов Prime() поставить в цикле раз миллион примерно...
Тогда и увидишь разницу...
0
0 / 0 / 1
Регистрация: 13.03.2011
Сообщений: 24
02.05.2011, 17:45 18
ValeryLaptev, ну хотя бы миллисекунды выдал... Секунды - это слишком!

Добавлено через 2 минуты
Поставил до 1 миллиона, он выдал, 0.007. Это и есть миллисекунды, я так понимаю! да?
0
Эксперт С++
1069 / 848 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
02.05.2011, 17:48 19
Цитата Сообщение от Студент_игорь Посмотреть сообщение
ValeryLaptev, ну хотя бы миллисекунды выдал... Секунды - это слишком!

Добавлено через 2 минуты
Поставил до 1 миллиона, он выдал, 0.007. Это и есть миллисекунды, я так понимаю! да?
Да. Поставь миллиард...
И еще сюда входит время выполнения самого цикла.
Чтобы отнять, надо аналогично обмерить пустой цикл - без вызова prime() - и отнять из цикла с вызовом. Тогда совсем хорошо будет
0
Заблокирован
02.05.2011, 18:05 20
а не пробывали ставить задержку
C++
1
2
3
4
#include<dos.h>
....
delay(1000); или Sleep(1000);//1 секунда
....
0
02.05.2011, 18:05
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.05.2011, 18:05
Помогаю со студенческими работами здесь

Секундомер
Доброго времени суток. Проверьте пожалуйста программу, работающую аналогично секундомеру. Вот я...

Секундомер
Народ нужна помощь Задачка такая: нужно сделать Секундомер как в электронных часах ввиде: 00:00...

Секундомер
Сделал такой небольшой код, что-то на подобии теста на сколько быстро вы печатаете. Никак до меня...

секундомер или таймер
Добрый вечер, есть определённые действия, которые нельзя выполнять, пока не пройдёт определённый...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru