Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.82
Anonimus1234
0 / 0 / 0
Регистрация: 29.08.2008
Сообщений: 10
#1

Глюки с <time.h> - C++

03.01.2011, 16:16. Просмотров 1356. Ответов 1
Метки нет (Все метки)

Я написал программу, считающую сумму всех простых чисел в диапазоне от 1000000 до 2000000, деленную по модулю на число 23 и получил результат : 17 , потом мне захотелось посмотреть, сколько времени работала программа и я включил таймер. После работы поглядел на результат и он был равным 20. В чем проблема ?
Вот листинг программы до :
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
#include <math.h>
 
 
int isPrime(int n){
    int i,j;
    if(2 == n){return 1;}
    j  = (int)sqrt((double)n)+1;
    for(i = 2;i < j;i++)if(!(n%i)){return 0;}
    return 1;
}
        
int main(){
    freopen("out.txt","w",stdout);  
    int summ,i = 1000000 , j = 2000000;
    for(;i <= j;i++){
           if(isPrime(i)){summ += i%23;}
           summ = summ % 23;
           }  
    printf("%d",summ);
    return 0;
}
Вот листинг программы после :
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
#include <stdio.h>
#include <math.h>
#include <time.h>
 
int isPrime(int n){
    int i,j;
    if(2 == n){return 1;}
    j  = (int)sqrt((double)n)+1;
    for(i = 2;i < j;i++)if(!(n%i)){return 0;}
    return 1;
}
        
int main(){
    freopen("out.txt","w",stdout);  
    clock_t time;
    time = clock();
    int summ,i = 1000000 , j = 2000000;
    for(;i <= j;i++){
           if(isPrime(i)){summ += i%23;}
           summ = summ % 23;
           }  
    printf("%d",summ);
    time = clock() - time;
    printf("\n%f", (double)time/CLOCKS_PER_SEC);
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.01.2011, 16:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Глюки с <time.h> (C++):

Не могу разобраться с заданием "Создайте класс Time с конструкторами Time(), Time( int hour)......" - C++
/* Создайте класс Time с конструкторами Time(), Time( int hour), Time(int hour, int min), Time( int h, int m, int s) и ...

Compile-time и run-time методы и функции - C++
Добрый день. Есть две функции, которые делают идентичную работу: template&lt;bool leftShift, typename T&gt; T byteShift(T data) { ...

Напишите конструктор для инициализации объекта класса Time, который может использовать текущее время, возвращаемое функцией time (). - C++
Помогите пожалуйста написать программу на С++. Просто скоро курсовую сдавать, а классы мы еще не разобрали и не успеваем. Поэтому не знаю...

Класс Time через time(0) - C++
Всем привет. На форуме искал ничего похожего не нашол. Не могу до конца разобраться. В класе 1 член, который держит секунды, которые...

Класс "Время". Двусмысленность между time и std:time(long*) - C++
Здравствуйте. Дали код, сказали есть проблема(скриншот): http://joxi.ru/12MxOENhw14QmJ Код: # include &lt;iostream.h&gt; # include...

Что за ошибка: "E2015 Ambiguity between 'time' and 'std::time"? - C++
Коды ошибок: v8.cpp(132): E2015 Ambiguity between 'time' and 'std::time(long *)' v8.cpp(133): E2015 Ambiguity between 'time' and...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
lemegeton
2923 / 1352 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
03.01.2011, 16:26 #2
Проблема, видимо, в том, что вы не инициализируете переменную summ.
Например, summ = 0.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.01.2011, 16:26
Привет! Вот еще темы с ответами:

Что за ошибка: "E2015 Ambiguity between 'time' and 'std::time"? - C++
Коды ошибок: v8.cpp(132): E2015 Ambiguity between 'time' and 'std::time(long *)' v8.cpp(133): E2015 Ambiguity between 'time' and...

С++ time - C++
Подскажите код для winapi что бы запускаешь консоль и на пример там стоит таймер на 30 минут ,И через 30 минут оно закрывается ...

srand(time(0)) - C++
Тут встретил такое выражение. Вы не скажете, что оно даёт, и как расшифровать этот код #include &lt;iostream&gt; #include &lt;time.h&gt; ...

Функция time - C++
Я нахожу с 1970 до текущей даты: time_t a = time(NULL); cout&lt;&lt;&quot;Текущая дата, выраженная в часах:&quot; &lt;&lt;(a/3600)&lt;&lt;endl; как найти с...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru