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

Генерация чисел - C++

25.03.2009, 15:57. Просмотров 1480. Ответов 10
Метки нет (Все метки)

Помогите написать программу, а мучусь уже два часа.
Нужно сгенерировать 30 трёхзначных чисел, и что бы в цифры этих чисел не были парными!
Примечание: число- ХХХ, цифри числа - Х, Х, Х! Так на всякий случай!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.03.2009, 15:57
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Генерация чисел (C++):

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

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

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

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

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

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

10
Mecid
680 / 229 / 16
Регистрация: 15.10.2007
Сообщений: 1,247
25.03.2009, 16:00 #2
как понять не были парными?
0
YurA_280784
Заблокирован
25.03.2009, 16:09 #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
30
31
#include <windows.h>
#include <stdio.h>
#include <conio.h>
#include <time.h>
#include <math.h>
 
void main()
{
    int massiv[30];bool bContinue = true;
    printf("Sformirovannii massiv\r\n");
    int n1,n2,n3;
    for(int i = 0; i < 30; i++)
    {
        massiv[i] = RAND_MAX;
        do
        {
            massiv[i] = rand();
            n1 = massiv[i]/100;
            n2 = (massiv[i] - n1*100) / 10;
            n3 = (massiv[i] - n1*100 - n2*10);
            if(!(n1 == n2 && n2 == n3))
                if(999 < massiv[i])
                    bContinue = false;
        }while(bContinue);
        bContinue = true;
        printf("%d\t",massiv[i]);
    }
    printf("Vvedite 1 chtobi sformirovat' eshe raz\r\n");
    if(getch() == 49)
        main();
}
0
Deicider
96 / 52 / 3
Регистрация: 18.03.2009
Сообщений: 273
25.03.2009, 16:22 #4
А может еще нужно "n1 != n3"? Может под парными понимается, чтобы не было одинаковых цифр.
0
NAG
8 / 8 / 1
Регистрация: 15.03.2009
Сообщений: 267
26.03.2009, 08:36  [ТС] #5
В общем все хорошо, но это должно делаться без массивов. Только с цыклами!
0
YurA_280784
Заблокирован
26.03.2009, 09:11 #6
Deicider - не нужно (n1 == n2 && n2 == n3), уже подразумевает проверку
n1 = n2 = n3
NAG напиши вместо massiv[30] напиши например int var, а в цикле вместо massiv[i] пиши var, короче
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
void main()
{
    int var;bool bContinue = true;
    printf("Sformirovannii massiv\r\n");
    int n1,n2,n3;
    for(int i = 0; i < 30; i++)
    {
        do
        {
            var = rand();
            n1 = massiv[i]/100;
            n2 = (massiv[i] - n1*100) / 10;
            n3 = (massiv[i] - n1*100 - n2*10);
            if(!(n1 == n2 && n2 == n3))
                if(999 < var)
                    bContinue = false;
        }while(bContinue);
        bContinue = true;
        printf("%d\t",var);
    }
    printf("Vvedite 1 chtobi sformirovat' eshe raz\r\n");
    if(getch() == 49)
        main();
}
Добавлено через 59 секунд
Упс, ещё здесь забыл изменить
C++
1
2
3
n1 = var/100;           
n2 = (var - n1*100) / 10;           
n3 = (var - n1*100 - n2*10);
0
svetlanka
0 / 0 / 0
Регистрация: 22.05.2009
Сообщений: 4
22.05.2009, 13:08 #7
а как такое реализовать на С?
0
Deicider
96 / 52 / 3
Регистрация: 18.03.2009
Сообщений: 273
22.05.2009, 14:57 #8
Это и есть на С. Из с++ тут ничего не используется, как я вижу.
0
NAG
8 / 8 / 1
Регистрация: 15.03.2009
Сообщений: 267
22.05.2009, 15:27  [ТС] #9
но программа именно ЭТА не работатет!(по крайнемерее у меня вБорланд С++ 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
#include  <stdio.h>
#include <conio.h>
#include <stdlib.h>
 
int main ()
{
clrscr ();
int i,numb;
randomize ();
puts ("Program by NAG");
for (i=1;i<=30;i++)
    {
    do
    {
    numb=random(899)+100;
    }
    while ( ((numb/100)%2)==0 || ((numb/10)%2)==0 || (numb%2) == 0 );
    printf ("\n Chuslo %d-e: %d", i,numb);
    }
    puts ("\nPres any kay to finish...");
    getch ();
    return 0;
}
0
svetlanka
0 / 0 / 0
Регистрация: 22.05.2009
Сообщений: 4
25.05.2009, 09:53 #10
а как вывести случайные буквы а не цифры?
0
Monte-Cristo
2794 / 1380 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
25.05.2009, 10:02 #11
символ (буква) - прдставлена ввиде кода в таблице Симовлов. Достаточно просто сделть нужну границу генерирования числа. А вывод будет таким, например:

C++
1
2
int someint; // генерируем int
cout << (char)somint;
0
25.05.2009, 10:02
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.05.2009, 10:02
Привет! Вот еще темы с решениями:

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

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

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

Генерация случайных чисел
Мне нужно заполнить множество матриц числами 0 или 1. Для этого использую...


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

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

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