Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
NAG
8 / 8 / 1
Регистрация: 15.03.2009
Сообщений: 267
1

Генерация чисел

28.04.2009, 19:36. Просмотров 1257. Ответов 11
Метки нет (Все метки)

Нужно программа для генерации тризначных чисел и таких, что бы в этих числах них не было парных цифр. ТИпу, если число "ХХХ", то "Х" не должно быть парным.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.04.2009, 19:36
Ответы с готовыми решениями:

генерация чисел
Скажите, пожалуйста, как сгенерировать случайным образом отрицательные числа?

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

генерация чисел
написать прогу, которая генерирует последовательность из 10 случайных чисел в...

Генерация чисел
Вообщем мне нужно сгенерировать отрицательное вещественное число с 2 цифрами...

Генерация чисел
Помогите написать программу, а мучусь уже два часа. :) Нужно сгенерировать 30...

11
Ultrator
14 / 10 / 1
Регистрация: 28.04.2009
Сообщений: 219
28.04.2009, 19:58 2
В смысле, генерации СЛУЧАЙНЫХ, но "таких что..." правильно ли я понял ?
0
Monte-Cristo
2796 / 1384 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
28.04.2009, 20:04 3
ну вот можно как-то вот так:
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
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
 
int main()
{
    const int size=3;
    char str[size];
    char c[2];
    int number;
    int x;
 
    srand(time(0));
 
    for (int i=0; i<size; i++)
    {
        do { x = rand()%10; }
            while (x%2==0);
 
        sprintf(c, "%d", x);
        str[i] = c[0];
    }
 
    number = atoi(str);
    cout << number;
 
    return 0;
}
0
NAG
8 / 8 / 1
Регистрация: 15.03.2009
Сообщений: 267
28.04.2009, 20:19  [ТС] 4
да!

Добавлено через 14 минут 22 секунды
не генерирует!

Добавлено через 36 секунд
и еще прога должна быть написана в Борланд С++ 3.1
0
Noa
57 / 34 / 0
Регистрация: 08.04.2008
Сообщений: 153
28.04.2009, 23:29 5
Monte-Cristo, не, действительно не то, у меня выдало 977 и 711 =)

Цитата Сообщение от NAG Посмотреть сообщение
и еще прога должна быть написана в Борланд С++ 3.1
Тут в чем проблема состоит?
0
Monte-Cristo
2796 / 1384 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
28.04.2009, 23:33 6
Цитата Сообщение от Noa Посмотреть сообщение
Monte-Cristo, не, действительно не то, у меня выдало 977 и 711 =)
так а что означает парным? я принял в расчет, что это четное число. и относительно этого написал программу.


Цитата Сообщение от NAG Посмотреть сообщение
и еще прога должна быть написана в Борланд С++ 3.1
мой код, должен там компилироватся.
1
Noa
57 / 34 / 0
Регистрация: 08.04.2008
Сообщений: 153
28.04.2009, 23:45 7
Цитата Сообщение от Monte-Cristo Посмотреть сообщение
так а что означает парным?
Как я понял, это чтобы цифры не повторялись подряд. Хотя перечитав первый пост:

Цитата Сообщение от NAG Посмотреть сообщение
Нужно программа для генерации тризначных чисел
думаю, что все-таки ты прав.
0
NAG
8 / 8 / 1
Регистрация: 15.03.2009
Сообщений: 267
29.04.2009, 09:21  [ТС] 8
цыфри числа не должни бить четными! А та программа что написана выше в Борланде С++ 3.1 не компелируется! =(
0
YurA_280784
Заблокирован
29.04.2009, 09:55 9
Задание ОЧЕНЬ простое, вот что накодил
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
#include <windows.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
 
void main()
{
    int num = RAND_MAX;
    char chBuf[3];
    bool bContinue = true;
    while(bContinue)
    {
        if((num = rand()) < 999)
        {
            if(99 < num)
            {
                sprintf(chBuf,"%d", num);
                if(
                    chBuf[0] != chBuf[1] && 
                    chBuf[1] != chBuf[2]
                    )
                bContinue = false;
            }
        }
    }
    printf("Sgenerirovannoe chislo : %d\r\n",num);
    printf("Vvedite 1 chtobi sformirovat' eshe raz\r\n");
    if(getch() == 49)
        main();
}
0
Monte-Cristo
2796 / 1384 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
29.04.2009, 10:08 10
NAG, телепаты уехали картошку садить..
напишите ошибки...

Добавлено через 4 минуты 2 секунды
YurA_280784, необходимо
char chBuf[4];, иначе при выполнении будет вызыватся ошибка, в связи с нехваткой места для '\0'

кроме того, у вас машинозависимый код: у меня, например, всегда вылетает число 491...

Добавлено через 2 минуты 9 секунд
NAG, попробуйте в Bcc 3.1 скомпилить
это:

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
#include <iostream.h>
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
 
int main()
{
    const int size=3;
    char str[size];
    char c[2];
    int number;
    int x;
 
    srand(time(0));
 
    for (int i=0; i<size; i++)
    {
        do { x = rand()%10; }
            while (x%2==0);
 
        sprintf(c, "%d", x);
        str[i] = c[0];
    }
 
    number = atoi(str);
    cout << number;
 
    return 0;
}
0
YurA_280784
Заблокирован
29.04.2009, 10:24 11
За строку согласен когда в дебуг варианте делал ошибок не біло, а в релизе выкинуло прогу, да 4 символа, согласен, ну а за машиннозависимость эт не так, вот скриншот работы
0
Миниатюры
Генерация чисел  
Monte-Cristo
2796 / 1384 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
29.04.2009, 10:41 12
а теперь запустите прогу, и увидите что набор выводящихся значений повторится..
у меня теже значения... чтобы обойти это, достаточно в начло проги добавить:

srand(time(0));

Добавлено через 3 минуты 12 секунд
да и по-моему код работает немножечко не так:
четные числа попадаются.. должно быть в где-то просчитались...
0
29.04.2009, 10:41
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.04.2009, 10:41

C++11 генерация псевдослучайных чисел
Хотел заполнить матрицу максимального потребления ресурсов процессами (алгоритм...

Генерация рандомных чисел
Всем привет, мне надо реализовать метод Монте-Карло для симплекса с 4 узлами....

Генерация случайных чисел
Помогите пожалуйста с этой программой, я ни как не могу понять как ее зделать....


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

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

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