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

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

Войти
Регистрация
Восстановить пароль
 
puma3085
38 / 1 / 0
Регистрация: 27.03.2014
Сообщений: 38
#1

Рандомные значения - C++

20.04.2014, 18:35. Просмотров 704. Ответов 1
Метки нет (Все метки)

Есть прога. Хочу если пользователь ввел в строке элементы n или x, то они заменились. Но прога не работает. В чем ошибка?(Например при вводе NDRF6xnx выводилось NDRF67H9 )
код :
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
#include <cstdlib>
#include<iostream>
#include <ctime>
#include <string>
 
using namespace std;
char RandomNum()
{
    int lower = 2, upper = 9, val;
    srand(time(0));
    val = lower + rand() % (upper - lower + 1); 
    return val;
}
char RandomChar(){
    char a;
    int i = 0;
    srand(time(0));
    a = rand() % ('z' - 'a' + 1) + 'a';
    return a;
}
int main()
{
    int a, rc,rn,lk;
    char kod[10];
    string n;
    cout << "Insert mask!"<< endl;
    cin >> n;
    a=n.length();
    for(int i(0);i<a;i++) kod[i] = n[i]; 
    for(int j(0); j<a;j++)
    {
        if(kod[j] == 'x') {rn =RandomNum();kod[j]=rn;}
        else if(kod[j] == 'n') {rc =RandomChar();kod[j]=rc;}
        else lk++;
    }
    cout << "wait"<<endl;
    cout << "kod[2] = " << kod[2]<<endl;
    for(int i(0);i < a;i++) cout << kod[i];
    system("pause");return 0;
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.04.2014, 18:35     Рандомные значения
Посмотрите здесь:

Рандомные числа - C++
Доброго времени суток:) Вот задача:Для каждого из следующих наборов целых чисел напишите единственный оператор ,который будет печатать...

Рандомные числа - C++
Здравствуйте форумчанине... Хотелось бы спросить, как сгенирировать случайные числа от 1 до 100000 причем так чтобы не повторяться?

Рандомные числа - C++
Есть программа, которая считает функцию. На второй таблице значение точности Е должно становиться случайным от 10^-1 до 10^-7 Помогите...

сделать рандомные числа - C++
/* Задан массив Z(m) целых чисел. Если массив является знакочередующимся, то упорядочить его в порядке возрастания модулей, если нет,...

Массив и рандомные числа - C++
Прошу прощения за возможно глупый вопрос но я никак не пойму где ошибка. По непонятным мне причинам rand() % 50; не работает , может я...

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

Вывести из файла рандомные числа - C++
Помогите,не могу понять. Вот у меня есть файл,скажем в нем 30 000 чисел . Мне нужно считать от туда скажем 1000 рандомных чисел и вывести...

Не получается создавать рандомные числа - C++
Вот мой код программы #include &lt;iostream&gt; #include &lt;stdlib.h&gt; using namespace std; int i; int main() { for(i=0;i&lt;10;i++) ...

Рандомные числа при компиляции - C++
Гуглю уже час, но простого примера не нашел. Как можно сгенерировать рандомное число в таком виде? constexpr some_random_number =...

Рандомные дроби с 2-3 знаками после запятой - C++
Помогите пожалуйста сгенерировать 10 000 чисел в интервале от 2 до 8 при помощи randomize() но с условием что бы эти числа были дробные....

Баг в коде(псевдо-рандомные числа) - C++
Здраствуйте, суть программы в том чтобы в цикле выдавало определенное количество рандомных значений элементом массива, например если 10...

Как сделать рандомные выводы слов и стихов - C++
m:cout &lt;&lt; &quot;Любимая,выбери то что хочешь увидеть:&quot; &lt;&lt; endl&lt;&lt;endl &lt;&lt; &quot;1.Стих&quot;&lt;&lt;endl&lt;&lt;endl &lt;&lt; &quot;2.Комплимент&quot;&lt;&lt;endl&lt;&lt;endl &lt;&lt;...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ProNoooob
72 / 72 / 6
Регистрация: 14.10.2009
Сообщений: 121
20.04.2014, 19:13     Рандомные значения #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Я старался сильно не менять код.
Ошибка в непонимании разницы между символом, числом и кодом символа.

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
#include <cstdlib>
#include <iostream>
#include <ctime>
#include <string>
 
using namespace std;
char RandomNum()
{
    int lower = 2, upper = 9, val;
    val = 2 + (rand() % (int) (9 - 2 + 1));
    return val;
}
char RandomChar(){
    char a;
    int i = 0;
    a = (rand() % ('z' - 'a' + 1)) + 'a';
    return a;
}
int main()
{
    int a, rc, rn;
    char buffer[2];
    char kod[10];
    string n;
 
    srand(clock());
 
    cout << "Insert mask!" << endl;
    cin >> n;
    a = n.length();
    for (int i(0); i<a; i++) kod[i] = n[i];
    for (int j(0); j<a; j++)
    {
        if (kod[j] == 'x') { rn = RandomNum(); itoa(rn, buffer, 10); kod[j] = buffer[0]; }
        if (kod[j] == 'n') { rc = RandomChar(); kod[j] = rc; }
    }
    cout << "============================" << endl;
    for (int i = 0; i < a; i++) cout << kod[i];
    cout << endl << "============================" << endl;
    system("pause"); return 0;
}
Ответ Создать тему
Опции темы

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