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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.64
savzhik
2 / 2 / 0
Регистрация: 07.06.2011
Сообщений: 59
#1

Генерация случайного простого числа - C++

17.09.2012, 23:23. Просмотров 1621. Ответов 2
Метки нет (Все метки)

Добрый вечер всем! У меня такая проблемма. Необходимо чтобы сгенерировалось 2 простых случайных числа. Для этого я написал функцию с которой вроде как проблемм нет, проблемма с её вызовом. В main я два раза её вызываю, но по какой-то причине генерируется одно и тоже число. В чём косяк?
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include "stdafx.h"
#include <stdlib.h>
#include <ctime>
int prostoe_chislo();
 
int prostoe_chislo()
{
    int a;
    srand(time(NULL));
    while(1)
    {
        int z=0,kol=0;
        a=1+rand()%100;
        printf("%d\n",a);
        for(int i=2;i<a;i++)
        {
            if(a%i==1)
                continue;
            if(a%i==0)
            {
                z=1;
                break;
            }
        }
        if(z==0)
        {   printf("chislo prostoe\n");
            break;}
        else
            printf("chislo sostavnoe\n");
    }
    return a;
}
 
int _tmain(int argc, _TCHAR* argv[])
{
    int x,y;
    x=prostoe_chislo();
    printf("1-e prostoe chislo:%d\n",x);
    y=prostoe_chislo();
    printf("2-e prostoe chislo:%d\n",y);
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.09.2012, 23:23     Генерация случайного простого числа
Посмотрите здесь:

Генерация случайного числа - C++
Проблемма такова: в программе необходимо получить несколько чисел, от 1 до 255 (или max будет другим -- пока не важно). Стандартные...

Генерация случайного числа - C++
Сори за вопрос может уже обсуждался не раз, но всё же возник. Как правильно сгенерировать число от 0 до 1 и какой тип данных лучше...

Генерация пятизначного случайного числа - C++
Нужно сгенерировать случайное число из пяти цифр и записать ее в переменную типа string. Пытаюсь 5 генерировать цифры в цикле, а как их...

Запись текста и генерация случайного числа - C++
Собственно задача такая: записать строки с рандомными числовым значением в некоторое количество создаваймых файлов. Файлы создаются без...

Генерация случайного числа каждую секунду - C++
Нужно каждую секунду генерировать случайное число. Ниже мой код, который выполняет задачу, но функция слип останавливает весь процесс и в...

Генерация случайного числа с плавающей чточкой - C++
Добрый день. Подскажите как генерировать случайное число типа float или double. Обычно использую rand(), но она подходит только для целых,...

Генерация простого числа - C++
Необходима программа которая бы генерировала какое-то любое простое число от 2 до N . N пусть ограничивается самым длинным типом данных.

Генерация случайного четырехзначного числа без цифр, больших 7 и 0 - C++
Нужно сгенерировать случайное четырехзначные число без цифр, больших 7 и 0. Пишу вот такой код: Но он ничего не выводится....

Генерация случайного числа больше нуля, но меньше единицы - C++
Всем привет. Подскажите, как можно генерировать псевдослучайное число больше нуля, но меньше единицы. При этом количество цифр после...

Генерация простого числа, заданной длины - C++
Помогите срочно нужно, можно на C#

Генерация случайного лабиринта - C++
Вообщем требуется сгенерировать лабиринт 12х12 с одним входом и выходом. Лабиринт представляется символьным массивом, где '#' - стенка, а...

Корни квадратного уравнения, кратность случайного числа, процент от числа - C++
Есть три задачи, если кто то когда то решал что подобное помогите плиз 1)Даны 3 вещественных числа. Найти корни квадратного уравнения...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
igorrr37
1641 / 1269 / 133
Регистрация: 21.12.2010
Сообщений: 1,932
Записей в блоге: 7
18.09.2012, 00:32     Генерация случайного простого числа #2
значение, передаваемое в srand() должно быть разным
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <stdlib.h>
#include <ctime>
#include <cstdio>
int prostoe_chislo();
 
int prostoe_chislo()
{
    int a;
    static time_t tval = time(0);
    tval += 10;
    //printf("tval = %d\n\n", tval);
    srand(tval);
    while(1)
    {
        int z=0,kol=0;
        a=1+rand()%100;
        printf("%d\n",a);
        for(int i=2;i<a;i++)
        {
            if(a%i==1)
                continue;
            if(a%i==0)
            {
                z=1;
                break;
            }
        }
        if(z==0)
        {   printf("chislo prostoe\n");
            break;}
        else
            printf("chislo sostavnoe\n");
    }
    return a;
}
 
int main()
{
    int x,y;
    x=prostoe_chislo();
    printf("1-e prostoe chislo:%d\n",x);
    y=prostoe_chislo();
    printf("2-e prostoe chislo:%d\n",y);
    return 0;
}
savzhik
2 / 2 / 0
Регистрация: 07.06.2011
Сообщений: 59
18.09.2012, 00:37  [ТС]     Генерация случайного простого числа #3
Спасибо большое! Очень помогли.
Yandex
Объявления
18.09.2012, 00:37     Генерация случайного простого числа
Ответ Создать тему
Опции темы

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