2013-06-17 19 views
5

Tworzę pasek "Wyszukiwanie podstawowe", który użytkownicy mogą wpisywać w terminach. Nie jestem pewien kolejność operacji dla logiki Boole'a.Logika logiczna (kolejność operacji) A i B lub C

Jeśli wpisze warunki (bez cudzysłowów):

A i B lub C

Jaka jest poprawna sposobem leczenia tego?

(A i B) lub (C)

LUB

(A) i (B lub C)

+1

Myślę, że to należy do ux.stackexchange.com, ale FWIW w standardowej logice Boole'a zasady pierwszeństwa NIE tworzą najwyższej, potem AND, a następnie OR. – dodgethesteamroller

+0

@dodgethesteamroller Dlaczego? Nie ma wzmianki o systemie Unix itp. w pytaniu ..? – RBarryYoung

+0

@RBarryYoung 'ux' w ux.stackexchange.com jest dla" user experience ", a nie Unix. Chodzi mi o to, że istnieją tu implicite problemy dotyczące sposobu przedstawienia opcji wyszukiwania Boolean - czy aplikacja taka ma na celu zrozumienie logiki Boole'a (np. W kontekście programowania), czy też będą one ledwie opanowane przez komputer (np. w poszukiwaniu katalogu kart bibliotecznych) lub gdzieś pomiędzy? Jeśli OP jest "niepewny kolejności operacji", to czy jest on pewny, że jego użytkownicy nie są równie niepewni? – dodgethesteamroller

Odpowiedz

-1

Dobrze, że zależy od tego jak chcesz zaprojektować system . Wiem, że w Javie i C++ AND ma wyższy poziom (jeden poziom) niż OR, ale robisz ten system, więc ty decydujesz.

+4

Niejawna spójność, która łamie standardy, jest gorsza niż brak spójności w ogóle. – dodgethesteamroller

-3

(A) i (B i C)

i oznacza przecięcie lub "jak" jedności

Podobnie jak w matematyce

"AND" jest jak mnożącego i "I", jak suma

w "tabeli prawdy"

LUB
a | B | wynik
prawda | prawda | prawda
prawda | false | prawda
prawda | false | true
false | false | false

ORAZ
A | B | wynik
prawda | prawda | prawda
prawda | false | false
prawda | false | false
false | false | false

+0

OP nie pyta o znaczenie AND i OR, ale ich względne pierwszeństwo. – dodgethesteamroller