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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.05.2011, 23:50   #1
D.176
 
Регистрация: 24.03.2011
Сообщений: 9
По умолчанию Поиск фиктивных переменных

Помогите написать программу.
Программа делает следующее:
1) Задается количество (n) размер набора булевых переменных
2) Задается значение (массив из 2^n переменных) булевой функции
3) Начинается алгоритм поиска:
а) на первом этапе массив делим пополам и сравниваем половины. Если они равны то пишем что переменная фиктивна.
б) на втором этапе массив делим на 4 части и сравниваем четвертинки. Если они равны то опять же выводим что переменная фиктивна
в) на третьем этапе делим массив на 8 частей и сравниваем восьмиринки...
и так n раз
Вот мой код:
Код:
#include <iostream.h>
#include <conio.h>
#include <math.h>

void main (){
 const int n=3;
 int P[10], Z[n], O[n], m=1,i,f=0,j,k=0,c;
 clrscr();
 for (i=0; i<n; i++){
  m=m*2;
 }

 for (i=0; i<m; i++){
   cin>>P[i];
 }

 cout<<endl;
  k=m/2;
  c=2;
  for (i=0; i<n; i++){             //цикл по количеству переменных
  for (j=0; j < c*2 ; j=j+m/c*2){   // здесь разбиваем массив
  for (f=j; f < j+m/c; f++){        //здесь идет сравнение
   if (P[f]==P[f+k]) {
    Z[i]=1;
   }
   else{
    Z[i]=0;
    break;
   }
  }
  }
  c=c*2;
  k=k/2;
  }

 for (i=0; i<n; i++){
  if (Z[i]==1)
   cout<<"X"<<i+1<<" фиктивная ";
  else
   cout<<"X"<<i+1<<" не фиктивная ";
 }

 getch();
}
Программа работает но валится на значениях типа 11001100
Пишу в BORLAND C 3.1
Помогите найти ошибку или подскажите как сделать лучше.
D.176 вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сравнение переменных snikers987 PHP 26 12.02.2011 01:01
Объявление переменных Hemul Общие вопросы C/C++ 11 06.02.2011 16:37
алгоритм search, поиск в векторе ссылочных переменных the_deer_one Общие вопросы C/C++ 13 04.09.2010 21:10
Видимость переменных tae1980 Microsoft Office Excel 3 26.03.2009 18:34
Много переменных Altera Общие вопросы Delphi 15 18.07.2008 08:06