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

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

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

Author24 — интернет-сервис помощи студентам
Помогите написать программу, а мучусь уже два часа.
Нужно сгенерировать 30 трёхзначных чисел, и что бы в цифры этих чисел не были парными!
Примечание: число- ХХХ, цифри числа - Х, Х, Х! Так на всякий случай!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.03.2009, 15:57
Ответы с готовыми решениями:

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

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

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

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

10
683 / 232 / 16
Регистрация: 15.10.2007
Сообщений: 1,247
25.03.2009, 16:00 2
как понять не были парными?
0
Заблокирован
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
98 / 54 / 3
Регистрация: 18.03.2009
Сообщений: 273
25.03.2009, 16:22 4
А может еще нужно "n1 != n3"? Может под парными понимается, чтобы не было одинаковых цифр.
0
8 / 8 / 1
Регистрация: 15.03.2009
Сообщений: 267
26.03.2009, 08:36  [ТС] 5
В общем все хорошо, но это должно делаться без массивов. Только с цыклами!
0
Заблокирован
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
0 / 0 / 0
Регистрация: 22.05.2009
Сообщений: 4
22.05.2009, 13:08 7
а как такое реализовать на С?
0
98 / 54 / 3
Регистрация: 18.03.2009
Сообщений: 273
22.05.2009, 14:57 8
Это и есть на С. Из с++ тут ничего не используется, как я вижу.
0
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
0 / 0 / 0
Регистрация: 22.05.2009
Сообщений: 4
25.05.2009, 09:53 10
а как вывести случайные буквы а не цифры?
0
2816 / 1407 / 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
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.05.2009, 10:02
Помогаю со студенческими работами здесь

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

Генерация случайных чисел
Подскажите пожалуйста правильно ли я осуществил перевод строк из С в С++, сомневаюсь С - ...

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

Генерация простых чисел
Всем привет! Кто знает не сложные и быстрые алгоритмы генерации больших простых и псевопростых...


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

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