aspose file tools*
The moose likes Beginning Java and the fly likes truth table Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Spring in Action this week in the Spring forum!
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "truth table" Watch "truth table" New topic
Author

truth table

Lenny Leon
Greenhorn

Joined: Feb 21, 2005
Posts: 3
I'm just starting out learning Java and need a little help. I'm supposed to take this truth table and alter it so it displays 1's and 0's instead of true false. I'm assumed to do this I would just need to change the variable type and replace true and false with 1 and 0 but every way I try this does not work. I would just like for someone to point me in the right direction. I would like an explanation so I could understand instead of just an awnser. Thanks in advance



Liam Tiarnach
Ranch Hand

Joined: Aug 06, 2004
Posts: 51
Originally posted by Lenny Leon:
I'm just starting out learning Java and need a little help. I'm supposed to take this truth table and alter it so it displays 1's and 0's instead of true false. I'm assumed to do this I would just need to change the variable type and replace true and false with 1 and 0 but every way I try this does not work. I would just like for someone to point me in the right direction. I would like an explanation so I could understand instead of just an awnser. Thanks in advance


okay, so break down what !p means...
! = a boolean operator that inverts the value of a boolean...
So...

if p is true then !p ( NOT p ) is false, otherwise...
if p is false then !P ( NOT p ) is true... Hmmm... the opposite...

so if you use integers... then you could look at it like this...

if p is 1 then !p ( NOT p) then p is 0, else
if p is 0 then !p ( NOT p) then p is ???
... you can take it from here...

now you got some of the logic, making it work should be easier...


- Liam...<br />- ' He who never sleeps... '
Lenny Leon
Greenhorn

Joined: Feb 21, 2005
Posts: 3
I've got it to work (though I don't think its correct) but in order for it to work I removed the ! operator. It won't compile when I leave it in. How do I fix this so it includes the ! operator?

This is the code with the NOT operator still in. It would not compile this way

Nigel Browne
Ranch Hand

Joined: May 15, 2001
Posts: 673
I didn't want to do all your work for you but look at the code below and see if you can work from there.

hope this helps
Joel McNary
Bartender

Joined: Aug 20, 2001
Posts: 1821

The important lesson to learn here is that Nigel did not change the underlying code in the program...he kept the data types the same and simply changed the user interface to display 1's and 0's instead of trues and falses.

You could also then change it to display Y/N, T/F (or, for the really sadistic, A/B or even N/Y.....)

You might want to add a could of static variables:


If you were yo use these in the code, you could change the displays to whatever your heart desired with very little effort.


Piscis Babelis est parvus, flavus, et hiridicus, et est probabiliter insolitissima raritas in toto mundo.
Ben Don
Greenhorn

Joined: Jun 25, 2014
Posts: 2
In order to compile, I had to adapt this code below by inserting parenthesis around the ternary operator section. For example - System.out.print((p? 1:0) + "\t"); How did you get around this?

Nigel Browne wrote:I didn't want to do all your work for you but look at the code below and see if you can work from there.

hope this helps

Campbell Ritchie
Sheriff

Joined: Oct 13, 2005
Posts: 39436
    
  28
Welcome to the Ranch

You have a + operator in that line, which has a higher precedence than ?:. So without the () you would offer it the choice between printing 1 and printing "0\t"; those are incompatible types (int and String), so the compiler wouldn't be happy.
What about using % tags
System.out.printf("%d\t", p ? 1 : 0);
fred rosenberger
lowercase baba
Bartender

Joined: Oct 02, 2003
Posts: 11422
    
  16

You guys realize this thread is nine years old, right?


There are only two hard things in computer science: cache invalidation, naming things, and off-by-one errors
Ben Don
Greenhorn

Joined: Jun 25, 2014
Posts: 2
Yes, but the answer didn't work as written. The problem hasn't changed.
Campbell Ritchie
Sheriff

Joined: Oct 13, 2005
Posts: 39436
    
  28
Please explain what you expect to happen and what is actually happening.
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: truth table