program problema1 ; var e, f, h, v1, v2, v3, v4, v5, v6, v7, v8 : boolean; begin writeln ('O Hospital recebe agua nas seguintes combinacoes de valvulas: '); writeln; for v1 := false to true do begin for v2 := false to true do begin for v3 := false to true do begin for v4 := false to true do begin for v5 := false to true do begin for v6 := false to true do begin for v7 := false to true do begin for v8 := false to true do begin h := (v1 and v4 and v6) or (v2 and v3 and v4 and v6); if h = true then begin write ('v1 = ',v1,', v2 = ',v2,', v3 = ',v3,', v4 = ',v4,', v5 = ',v5,', v6 = ',v6,', v7 = ',v7); writeln (', v8 = ',v8,'.'); end; end; end; end; end; end; end; end; end; writeln; writeln ('A Escola recebe agua nas seguintes combinacoes de valvulas: '); writeln; for v1 := false to true do begin for v2 := false to true do begin for v3 := false to true do begin for v4 := false to true do begin for v5 := false to true do begin for v6 := false to true do begin for v7 := false to true do begin for v8 := false to true do begin e := (v1 and v4 and v7) or (v1 and v2 and v7) or (v1 and v5 and v7) or (v3 and v7); if e = true then begin write ('v1 = ',v1,', v2 = ',v2,', v3 = ',v3,', v4 = ',v4,', v5 = ',v5,', v6 = ',v6,', v7 = ',v7); writeln (', v8 = ',v8,'.'); end; end; end; end; end; end; end; end; end; writeln; writeln ('A Fabrica recebe agua nas seguintes combinacoes de valvulas: '); writeln; for v1 := false to true do begin for v2 := false to true do begin for v3 := false to true do begin for v4 := false to true do begin for v5 := false to true do begin for v6 := false to true do begin for v7 := false to true do begin for v8 := false to true do begin f := (v1 and v4 and v8) or (v1 and v2 and v8) or (v1 and v5 and v8) or (v3 and v8); if f = true then begin write ('v1 = ',v1,', v2 = ',v2,', v3 = ',v3,', v4 = ',v4,', v5 = ',v5,', v6 = ',v6,', v7 = ',v7); writeln (', v8 = ',v8,'.'); end; end; end; end; end; end; end; end; end; readln; end.