Logic gate counter on 7 segment display
I'm not sure I can agree with Dean's answer; you can't answer the question "how can I make a BCD-to-7-segment decoder?" with "use a BCD-to-7-segment decoder". His truth table a good start, however. Cut away the bottom part so that you retain a table for the digits 0 to 3:



This shouldn't be too hard. What do we see?


First thing we notice is that segment \$b\$ is always on, so that's not a decoded output.
The codes for column \$g\$ are the same as the \$B\$ column.  
Columns \$a\$ and \$d\$ are identical.  
Columns \$a\$, \$c\$ and \$d\$ have one 0 and three 1s. That's what the truth table of an OR-gate has. Check which of the inputs you have to invert to make those outputs an OR-function of the (inverted) inputs.  
Similar for column \$f\$: it has one 1 and three zeros, which an AND-gate  will give you. How do you have to change the inputs to use an AND-gate here?  
Columns \$e\$ can be created from just one input. Which one?


If you can't see the relationships right away, then add two intermediate results, which you derive from the inputs: that's \$A\$ and \$B\$ inverted.

Your function table could look like this:  


  \$ a = \overline{A} + B \$
  \$ b = 1 \$
  \$ c = A + \overline{B} \$
  \$ d = \overline{A} + B \$
  \$ e = \overline{A} \$
  \$ f = \overline{A} \cdot \overline{B} \$
  \$ g = B \$


If you think I've done all the work for you, think again. The real work starts now: create a circuit from this using as few gates as possible.