Barcode challenge

In this week’s challenge, you need to help your local post office whose package sorting system is broken. The packages have a barcode that, when scanned, are converted into a series of ones and zeroes (bits).

The destination country is written in the barcode. It is determined by the two first bits and by the last bit. Write a formula in column U that outputs the destination of the package.

Our solution (solves both medium and hard version):

=IF(AND(AND(M6;N6);T6);”Italy”;IF(AND(AND(M6;N6);XOR(N6;T6));”France”;IF(AND(AND(M6;T6);OR(T6;N6));”Germany”;
IF(AND(XOR(M6;N6);XOR(N6;T6));”Spain”;IF(AND(AND(NOT(M6);NOT(N6);NOT(T6)));”Russia”;

Since the barcodes are represented by bits, we have chosen to solve this challenge with boolean logic. Inside each IF-function we evaluate the specific countries only with logical operators (AND, OR, XOR & NOT).

https://www.i-programmer.info/babbages-bag/235-logic-logic-everything-is-logic.html

4 thoughts on “Barcode challenge”

1. Per Christensson says:

Expanded the Destination table with columns for pos 1, 2, 8. Called it Tdest and used INDEX(MATCH)
=INDEX(Tdest[Destination];XMATCHNING(1;(N(M6)=Tdest[Pos 1])*(N(N6)=Tdest[Pos 2])*(N(T6)=Tdest[Pos 8])))
Not figured out how to do it without helper columns. Swedish Excel version.

2. Gustav Rinstrom says:

In this case I prefer a solution to pick the right country from a table. But if I only allowed to use one column I made as follows:

=IF(ABS(M6&N6&T6)=111;”Italy”;IF(ABS(M6&N6&T6)=110;”France”;IF(ABS(M6&N6&T6)=101;”Germany”;
IF(ABS(M6&N6&T6)=10;”Spain”;IF(ABS(M6&N6&T6)=0;”Russia”;
IF(ABS(M6&N6&T6)=11;”USA”;””))))))

3. David Berg says:

Inte speciellt originellt eller elegant men:

=OM(SAMMAN(M6;N6;T6)=”SANTSANTSANT”;”Italien”;OM(SAMMAN(M6;N6;T6)=”SANTSANTFALSKT”;
“Frankrike”;OM(SAMMAN(M6;N6;T6)=”SANTFALSKTSANT”;”Tyskland”;OM(SAMMAN(M6;N6;T6)=
“FALSKTSANTFALSKT”;”Spanien”;OM(SAMMAN(M6;N6;T6)=”FALSKTFALSKTFALSKT”;
“Ryssland”;OM(SAMMAN(M6;N6;T6)=”FALSKTSANTSANT”;”USA”;””))))))

4. Jeffrey Johns says:

=SWITCH(CONCATENATE(M6;N6;T6);”111″;”Italy”;”110″;”France”;”101″;”Germany”;”010″;”Spain”;”000″;”Russia”;”011″;”USA”)

Kul med dessa pussel. Visste inte att Excel hade en switch statement innan jag fick klura på det. /Jeff

More blog posts

Tired of Googling?