Neither a transistor nor an opamp will run a stepper motor correctly. The examples here use a darlington array (a group of double transistors) or one of two H-bridge chips. You might do better looking for a dedicated stepper motor driver, like these, these or this, than building one from scratch. Of course, building your own is a good lesson in electronics and frustration control.
I believe the part raschemmel was referring to was that you need to put your code in tags. As it is, it's difficult to read, and unwanted bbcode translations may appear.
[whoops - you did that while I was typing. Thanks!]
I'm sorry to be the one to tell you this but the questions you ask suggest you lack the experience to implement a DIY driver. Order something online.
I believe you have been given suggestions.
The second motor appears to be 4-wire, 30 ohm, 0.4A - is that correct?
Why choose that version? Its the least sensible combination - 4-wire and high impedance.
Normally you would choose 5, 6 or 8 wire high-impedance motor, or 4, 6 or 8 wire low-impedance
motor if you wanted performance (more than 150rpm or so) or microstepping.
For low-performance a 5-wire unipolar motor is very simple to drive, an ULN2803 or similar is all you
need.
4-wire low-impedance motor driven from a chopper driver like the DRV8825 will give much more
speed and torque-at-speed.