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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.05.2010, 00:51   #1
Катюшенька
Пользователь
 
Аватар для Катюшенька
 
Регистрация: 08.12.2008
Сообщений: 32
По умолчанию Нужен результат программы...

Все ничего.. есть готовая прога для Борланд Си++

У меня переустановлена система..
И сам Борланд не установила..
Мне нужны данный на тест проги..

Просто введите последовательность 10001110101100 и сктньте результаты файлов... вот и программа:

Код:
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <time.h>
#include <stdlib.h>

int powD(int n) //функция для возведения 2 в степень n
{
 int i=1,j=1,k;
 if(n==0)
 return 1;
 else
  {
   for(i;i<=n;++i)
   j*=2;
   return j;
  }
}

void main()
{ 
 clrscr();
 randomize();
 int A[40]; //создаем и задаем начальное состояние LFSR
 for(int LFSR=0;LFSR<40;++LFSR)
 A[LFSR]=random(2);
 int B[55];
 for( LFSR=0;LFSR<55;++LFSR)
 B[LFSR]=random(2);
 int C[31];
 for( LFSR=0;LFSR<31;++LFSR)
 C[LFSR]=random(2);
 int a,b,c,w,j,k,t=0,q,buf=0;
 char psp;
 FILE *out=fopen("PSP(char).dat","w"); //создаем файл для хранения ПСП
 FILE *oud=fopen("PSP(bit).dat","w");
 unsigned long int r=0;
 printf("Vvedite razmer PSP\n");
 scanf("%d",&r);
 printf("Podozhdite>>>>>>>>\n");
 r=r*1048576*8;
 for(unsigned long int i=0;i<r;i++) //цыкл для отследывания длины ПСП

  {
   a=A[9]^A[4]^A[0]; //Находим начальный элемент каждой LFSR
   b=B[7]^B[3]^B[0];
   c=C[20]^C[3]^C[0];
   if(t==8) t=0;
   if(A[0]==1) //находим колличество LFSR кончающиеся 1
   buf++;
   if(B[0]==1)
   buf++;
   if(C[0]==1)
   buf++;
   if(buf>1) //если больше чем 1

    {
     fprintf(oud,"%d",1); //записуем в файл 1
     psp=psp+powD(t); //и изменяем соотвествуюющий бит переменной ПСП на 1
    }

   else //1 или меньше

    {
     fprintf(oud,"%d",0); //записываем в файл ноль
    }

   if(t==7) fprintf(out,"%c",psp); //если t = 7 записываем ПСП в файл
   t++;
   for(LFSR=0;LFSR<40;LFSR++) //сдвигаем LFSR

    {
     A[LFSR]=A[LFSR+1];
    }

   A[39]=a;
   for(j=0;j<55;j++)

    {
     B[j]=B[j+1];
    }

   B[54]=b;
   for(k=0;k<31;k++)

    {
     C[k]=C[k+1];
    }

   C[30]=c;
   buf=0;
  }

 printf("vse!"); //конец
 getch();
}
Верю... Надеюсь... Люблю...
Катюшенька вне форума Ответить с цитированием
Старый 17.05.2010, 09:53   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Мадмуазель ваша жестокая программа генерит 972 МБ (1*019*659*179 байт)
Вас ничего не смущает?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Определить результат выполнения программы. Joker<777> Паскаль, Turbo Pascal, PascalABC.NET 2 23.04.2010 02:15
Нужен С++ программист для легкого апгрейда программы. Гаур-Мяур Фриланс 4 30.12.2009 12:17
не читает результат работы консольной программы Consol Работа с сетью в Delphi 0 21.08.2009 12:21
Нужен помощник в написании программы Bazilizk Фриланс 2 12.08.2009 10:36