Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2007.05.20;
Скачать: [xml.tar.bz2];

Вниз

Как.?   Найти похожие ветки 

 
doob   (2007-04-16 15:38) [0]

Как перебрать все возможные варианты, логической таблици..?
Состоящей из 4-х столбцов.

0 0 0 0
1 1 1 1
1 0 0 0
1 1 0 0
1 1 1 0
0 0 0 1
0 0 1 1
0 1 1 1
0 1 1 0
1 0 0 1
1 0 1 0
0 1 0 1

Какая закономерность..? Сколько должно быть вариантов этого перебора???


 
Kolan ©   (2007-04-16 15:41) [1]

> Как перебрать все возможные варианты, логической таблици&#133?

В цикле. for, while, repeat&#133


 
Сергей М. ©   (2007-04-16 15:42) [2]


> doob   (16.04.07 15:38)


Двойка тебе в кондуит светит)


 
TUser ©   (2007-04-16 15:45) [3]

4 штуки забыл


 
homm ©   (2007-04-16 15:46) [4]

Развод?


 
alien1769 ©   (2007-04-16 15:48) [5]


> homm ©   (16.04.07 15:46) [4]
> Развод?

посмотри ветку начинающим, еще не то узнаешь.


 
boriskb ©   (2007-04-16 15:52) [6]

Это уже проявление характера.

Математику из принципа не учат.


 
doob   (2007-04-16 16:13) [7]


> TUser ©   (16.04.07 15:45) [3]

Какие?


 
alien1769 ©   (2007-04-16 16:18) [8]

Двоичная система.
2^n. Дальше сам


 
Алхимик ©   (2007-04-16 16:18) [9]

> [7] doob   (16.04.07 16:13)
>
> > TUser ©   (16.04.07 15:45) [3]
>
> Какие?

Комбинаторику учить надо было. Четыре позиции, в каждой позиции 2 варианта - 4^2 = 16


 
Алхимик ©   (2007-04-16 16:20) [10]

rem т.е. 2^4 = 16


 
tesseract ©   (2007-04-16 16:22) [11]


> Комбинаторику учить надо было. Четыре позиции, в каждой
> позиции 2 варианта - 4^2 = 16


У меня это называлось теорией чисел :-) Там было основание системы счисления в степени количества цифр.


 
Витян ©   (2007-04-16 19:56) [12]


> doob   (16.04.07 15:38)


Всего будет 2^n вариантов. В твоем случае 2^4=16.
Называется это "выборки" или "строки".
Получить их можно используя рекурсивную процедуру.

var
   a: array[1..4] of byte;
   n: byte;

procedure solve(k: byte);
var
   i: byte;
begin
   if k>4 then begin
       for i:=1 to 4 do write(a[i]," ");
       writeln;
       exit;
   end;
   a[k]:=1;
   solve(k+1);
   a[k]:=0;
   solve(k+1);
end;

begin
   solve(1);
   readln;
end.


 
palva ©   (2007-04-16 21:18) [13]

Наверно проще считать в цикле от нуля до 15 и для каждого числа печатать его двоичное представление (код неотлаженный)

var
 i, ii, j: Integer;
begin
 for i:=0 to 15 do begin
   ii := i;
   for j:=1 to 4 do begin
     if odd(ii) then write("1")
     else write("0");
     ii := ii shr 1
   end
   writeln
 end
end.


 
Витян ©   (2007-04-16 23:51) [14]


> palva ©


Тогда уж лучше так это реализовать:

const
   n = 4;
var
   mask,i: byte;
begin
   for mask:=0 to (1 shl n)-1 do begin
       for i:=0 to n-1 do write(ord(mask and (1 shl i)<>0));
       writeln;
   end;
   readln;
end.


 
palva ©   (2007-04-17 09:41) [15]

write будет печатать слова True False ?


 
Витян ©   (2007-04-17 15:11) [16]


> palva


Нет! 1 и 0


 
{RASkov}   (2007-04-17 17:50) [17]

> [15] palva ©   (17.04.07 09:41)

ORD(Boolean)... ORD(True)=1; ORD(False)=0;
:)


 
palva ©   (2007-04-17 17:56) [18]

Да, я уже заметил. Витян мне ответил и я разобрался.



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2007.05.20;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.036 c
15-1177060687
IMHO
2007-04-20 13:18
2007.05.20
Latex


8-1154874180
.ruslan
2006-08-06 18:23
2007.05.20
Тень от формы


15-1176831012
Суслик
2007-04-17 21:30
2007.05.20
FastScript и FastReport


2-1178119436
I-New
2007-05-02 19:23
2007.05.20
Открыть папку explorer ом из Delphi


3-1172611235
Master_
2007-02-28 00:20
2007.05.20
Ttable и проблемма транзакций





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский