Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.11.2012, 20:14   #1
Faton 11
Пользователь
 
Регистрация: 04.10.2011
Сообщений: 74
По умолчанию Почему random генерирует только единицы??

Добрый вечер! В программе рандомом должен заполняться массив из 127 элементов, эмитирующий 127-разрядный регистр.
Далее
1. сдвигаем содержимое регистра на 1 вправо
2. производим операцию исключающее или между 2 и 5 битом, результат записываем в 1-й бит. Этот же результат подается на "выход" генератора
3. возвращаемся к пункту 1

Но почему-то random выдает все единички. Почему?:-(

Код:
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>
#include <string>
#include <sstream>

using namespace std;

int mas[127];
int a;
int mas_c[200];
int j;

int main ()
{ 
for(int i=1;i<128;++i)
{
    srand ( time(NULL) );
    a= rand()%2;
    mas[i]=a;
    cout<<mas[i]<<endl;
}
cout<<"znacheniya:"<<endl;
//======смещение на 1 вправо========

loop:
    for (int i=127; i>0;i--)
	{
    mas[i]=mas[i-1];
    
    }
	
//исключающее или
	int c=mas[2]^mas[5];
	cout<<c<<endl;
	mas[1]=c;

	mas_c[j]=c;
	j=j++;
	if (j!=200)
	{
	goto loop;
	}
	else
    system ("pause");

}
Faton 11 вне форума Ответить с цитированием
Старый 13.11.2012, 20:24   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

srand ( time(NULL) ); за цикл вынеси.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.11.2012, 21:14   #3
Faton 11
Пользователь
 
Регистрация: 04.10.2011
Сообщений: 74
По умолчанию

Теперь, кажется, работает, спасибо =)
Faton 11 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Почему -1 это 32 единицы в двоичке? Cathrin C# (си шарп) 1 15.02.2012 20:42
Задача в PascalABC.NET с Random (только подсказать) AntoshkaK Паскаль, Turbo Pascal, PascalABC.NET 2 16.11.2011 18:47
Комментарии. Только при пин-коде. Почему работает только 1 пи код? Bushel PHP 1 23.10.2010 18:21
Почему одни единицы ? vasyapupkin Общие вопросы C/C++ 1 12.04.2010 17:43
Почему ошибка только в DLL? AidarBik Общие вопросы Delphi 13 08.10.2007 14:49