Controlling multiple LED inside one loop

I have to Send a signal to each of the following LED lamp with different functionalities:

LED-W will blink (Pin 11),
LED-G will shine (Pin 10),
LED-Y will shine during 5 s (Pin 9),
LED-R will blink 10 times (Pin 8.)

Now the problem is with the LED-Y. Wherever I put the logic for it (inside the loop), it affects other LEDs and don't let them work properly. How could I fix this so that no LED affects other LEDs and all get the signal accordingly?

My code:

int LED = 0; //used for the Red light to blink 10 times
// the setup function runs once when you press reset or power the board
void setup() {
  //initialization
  pinMode(11, OUTPUT);//White LED; for blink
  pinMode(10, OUTPUT);//Green LED; for shine
  pinMode(9, OUTPUT);//Yellow LED; for shine 5s
  pinMode(8, OUTPUT);//Red LED; blink 10 times

}

// the loop function runs over and over again forever
void loop() {

  //blink the white light
  digitalWrite(11, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);
  digitalWrite(11, LOW);
  delay(1000);
  //shine the green light
  digitalWrite(10, HIGH);



  //shine the yellow light during 5s
  //digitalWrite(9, HIGH);   // turn the LED on (HIGH is the voltage level)
  //delay(5000);
  //digitalWrite(11, LOW);

  //blink the red light for 10 times.
  if (LED < 10) { //blink 10 times
    digitalWrite(8, HIGH);   // turn the LED on (HIGH is the voltage level)
    delay(1000);
    digitalWrite(8, LOW);
    delay(1000);
    LED = LED + 1;
  }
}

NOTE: I am using arduino diecimila.

Do not use delay()s they are evil.
Master the BlinkWithoutDelay BWD technique which is an example in the IDE examples.
.

See Robin2's discussion.

http://forum.arduino.cc/index.php?topic=223286.0

You cannot use delay() and expect it to work reliably when you are trying to do more than one thing at a time.

If you want a ready made solution look at my Multiblink sketch at my libraries site, link below.

Try this:

int LED = 0; //used for the Red light to blink 10 times
// the setup function runs once when you press reset or power the board
void setup() {
  //initialization
  pinMode(11, OUTPUT);//White LED; for blink
  pinMode(10, OUTPUT);//Green LED; for shine
  pinMode(9, OUTPUT);//Yellow LED; for shine 5s
  pinMode(8, OUTPUT);//Red LED; blink 10 times

}

// the loop function runs over and over again forever
void loop() {

  digitalWrite(10, HIGH); //shine the green light
  digitalWrite(9, HIGH); //shine the yellow light
  digitalWrite(11, HIGH); //blink the white light

  while (LED < 10) { //blink 10 times
    digitalWrite(8, HIGH);   // turn the LED on (HIGH is the voltage level)
    delay(1000);
    digitalWrite(8, LOW);
    if (LED == 0) digitalWrite(11, LOW); //blink the white light
    if (LED == 2) digitalWrite(9, LOW); //turn off the yellow light after 5s
    delay(1000);
    LED = LED + 1;
  }
}

You can do more than one thing at once with delay() if it is as simple as your example!