Like Edgar commented, you need to check out Blink Without Delay (http://arduino.cc/en/Tutorial/BlinkWithoutDelay). Learn what they are doing and you will get this just fine.
Also, I recommend you learn to use libraries. This library can do exactly what you are asking for: http://playground.arduino.cc/Main/LibraryList#Timing --> click on the "Timer" library by Simon Monk & J Christensen. Follow the examples there. This library works great!
Here is a complete set of code to answer your question. It should work perfectly for you.
By Gabriel Staples
7 March 2015
To help this person here: http://arduino.stackexchange.com/questions/9089/vibriting-motors-with-different-intervals
boolean buzzMotor1Now = false, buzzMotor2Now = false, buzzMotor3Now = false;
unsigned int buzzTime = 1000; //ms
byte buzzPin1 = 11;
byte buzzPin2 = 12;
byte buzzPin3 = 13;
//set pins to outputs
//UPDATE YOUR BUZZMOTOR BOOLEANS HERE, and set to true if necessary
* This method will generate a pulse of pulseValue, starting immediately and of
* length period. The pin will be left in the !pulseValue state
//Function format: int8_t pulseImmediate(uint8_t pin, unsigned long period, uint8_t pulseValue);
//see here: https://github.com/JChristensen/Timer/blob/master/Timer.h
buzzMotor1Now = false; //reset
buzzMotor2Now = false; //reset
buzzMotor3Now = false; //reset
t.update(); //update all timer events
Note that only 10 timer events can be ongoing at any given time. If you want to have more you must increase the MAX_NUMBER_OF_EVENTS value in the Timer.h (https://github.com/JChristensen/Timer/blob/master/Timer.h) file.
PS. Also look into the "oscillate", "after", "every", and "pulse" functions, that the library also supports.
If this answer meets your needs please mark the green check beside it to indicate accepted answer. Thanks.