Problem with reading 3 if's

Could you please help us with this problem of the 3 if’s?
The problem is in the last 3 if’s, the program only reads the last if and ignores the others, could you please help us to solve this problem?

#include <VarSpeedServo.h>

#include <Keypad.h>
const int EchoPin = 11;
const int TriggerPin = 12;
const byte rowsCount = 4;
const byte columsCount = 3;
const int LDR1 =A5;
const int LDR2 =A3;
const int LDR3 =A2;
const int LDR4 =A1;
const int LDR5 =A0;
const int catalunya=13;
const int alemania=18;
const int finlandia=3;
const int polonia=4;
const int espania=5;
int valor_LDR1;
int valor_LDR2;
int valor_LDR3;
int valor_LDR4;
int valor_LDR5;
int valor_catalunya=710;
int valor_alemania=770;
int valor_finlandia=710;
int valor_polonia=700;
int valor_espania=705;
int rempalago = 10;
VarSpeedServo myservo1;
VarSpeedServo myservo2;
int contador_rempalago;
char keys[rowsCount][columsCount] = { 
   { '1','2','3' }
};
 
const byte rowPins[rowsCount] = {2};
const byte columnPins[columsCount] = { 6, 7, 8 };

 Keypad keypad = Keypad(makeKeymap(keys), rowPins, columnPins, rowsCount, columsCount); 
 
void setup() {
myservo1.attach(9);
  myservo2.attach(10);
  Serial.begin(9600);
  pinMode(LDR1,INPUT);
  pinMode(LDR2,INPUT);
  pinMode(LDR3,INPUT);
  pinMode(LDR4,INPUT);
  pinMode(LDR5,INPUT);
  pinMode(catalunya,OUTPUT);
  pinMode(alemania,OUTPUT);
  pinMode(finlandia,OUTPUT);
  pinMode(polonia,OUTPUT);
  pinMode(espania,OUTPUT);
  myservo1.write(0,30,true);
  myservo2.write(0,30,true);
  Serial.begin(9600);
  

}

void loop() {
  char key = keypad.getKey();
  
 Serial.println("key: ");
Serial.println(key);
  Serial.println("LDR1= ");
 Serial.println(valor_LDR1);
Serial.println("LDR2= ");
 Serial.println(valor_LDR2);
 Serial.println("LDR3= ");
 Serial.println(valor_LDR3);
 Serial.println("LDR4= ");
 Serial.println(valor_LDR4);
 Serial.println("LDR5= ");
 Serial.println(valor_LDR5);
 Serial.println("catalunya= ");
 Serial.println(valor_catalunya);
 Serial.println("alemania= ");
 Serial.println(valor_alemania);
 Serial.println("finlandia= ");
 Serial.println(valor_finlandia);
 Serial.println("polonia= ");
 Serial.println(valor_polonia);
 Serial.println("espania= ");
 Serial.println(valor_catalunya);
int cm = ping(TriggerPin, EchoPin);
  
  if (cm<=rempalago&&contador_rempalago==0)
  {
    myservo1.write(180,30,false);
    myservo2.write(180,30,false);
    contador_rempalago++;
  }
  else if (cm>=rempalago&&contador_rempalago==0)
  {
    myservo1.write(90,30,false);
    myservo2.write(90,30,false);
    contador_rempalago++;
  }
 
   if(valor_LDR1<=valor_catalunya)
   {
    digitalWrite(catalunya,HIGH);
    digitalWrite(alemania, LOW);
  digitalWrite(finlandia, LOW);
  digitalWrite(polonia, LOW);
  digitalWrite(espania, LOW);
  }
  
  
   valor_LDR2=analogRead(LDR2);
   
    if(valor_LDR2<=valor_alemania)
  {
    digitalWrite(alemania,LOW);
    digitalWrite(catalunya, LOW);
  digitalWrite(finlandia, LOW);
  digitalWrite(polonia, LOW);
  digitalWrite(espania, LOW);
  }
  
  valor_LDR3=analogRead(LDR3);
    if(valor_LDR3<=valor_finlandia)
  {
    digitalWrite(finlandia,LOW);
    digitalWrite(catalunya, LOW);
  digitalWrite(alemania, LOW);
  digitalWrite(polonia, LOW);
  digitalWrite(espania, LOW);
  }
  
  valor_LDR4=analogRead(LDR4);
    if(valor_LDR4<=valor_polonia)
  {
    digitalWrite(polonia,HIGH);
    digitalWrite(catalunya, LOW);
  digitalWrite(alemania, LOW);
  digitalWrite(finlandia, LOW);
  digitalWrite(espania, LOW);
  }
  
  valor_LDR5=analogRead(LDR5);
    if(valor_LDR5<=valor_espania)
  {
    digitalWrite(espania,HIGH);
    digitalWrite(catalunya, LOW);
  digitalWrite(alemania, LOW);
  digitalWrite(finlandia, LOW);
  digitalWrite(polonia, LOW); 
    }
  if(valor_LDR1>=valor_catalunya&&valor_LDR2>=valor_alemania&&valor_LDR3>=valor_finlandia&&valor_LDR4>=valor_polonia&&valor_LDR5>=valor_espania)
  {
    digitalWrite(espania,LOW);
    digitalWrite(catalunya, LOW);
  digitalWrite(alemania, LOW);
  digitalWrite(finlandia, LOW);
  digitalWrite(polonia, LOW);
  }
  
 
  if(valor_LDR1<=valor_catalunya)
   {
    digitalWrite(catalunya,HIGH);
    digitalWrite(alemania, LOW);
  digitalWrite(finlandia, LOW);
  digitalWrite(polonia, LOW);
  digitalWrite(espania, LOW);
  }
  
   valor_LDR2=analogRead(LDR2);
   
    if(valor_LDR2<=valor_alemania)
  {
    digitalWrite(alemania,HIGH);
    digitalWrite(catalunya, LOW);
  digitalWrite(finlandia, LOW);
  digitalWrite(polonia, LOW);
  digitalWrite(espania, LOW);
  }
  
  valor_LDR3=analogRead(LDR3);
    if(valor_LDR3<=valor_finlandia)
  {
    digitalWrite(finlandia,HIGH);
    digitalWrite(catalunya, LOW);
  digitalWrite(alemania, LOW);
  digitalWrite(polonia, LOW);
  digitalWrite(espania, LOW);
  }
  
  valor_LDR4=analogRead(LDR4);
    if(valor_LDR4<=valor_polonia)
  {
    digitalWrite(polonia,HIGH);
    digitalWrite(catalunya, LOW);
  digitalWrite(alemania, LOW);
  digitalWrite(finlandia, LOW);
  digitalWrite(espania, LOW);
  }
  
  valor_LDR5=analogRead(LDR5);
    if(valor_LDR5<=valor_espania)
  {
    digitalWrite(espania,HIGH);
    digitalWrite(catalunya, LOW);
  digitalWrite(alemania, LOW);
  digitalWrite(finlandia, LOW);
  digitalWrite(polonia, LOW); 
    }
  if(valor_LDR1>=valor_catalunya&&valor_LDR2>=valor_alemania&&valor_LDR3>=valor_finlandia&&valor_LDR4>=valor_polonia&&valor_LDR5>=valor_espania)
  {
    digitalWrite(espania,LOW);
    digitalWrite(catalunya, LOW);
  digitalWrite(alemania, LOW);
  digitalWrite(finlandia, LOW);
  digitalWrite(polonia, LOW);
  }
 

 

  valor_LDR1=analogRead(LDR1);
  
     if(valor_LDR1<=valor_catalunya)
   {
    digitalWrite(catalunya,HIGH);
    digitalWrite(alemania, LOW);
  digitalWrite(finlandia, LOW);
  digitalWrite(polonia, LOW);
  digitalWrite(espania, LOW);
  }
  
   valor_LDR2=analogRead(LDR2);
   
    if(valor_LDR2<=valor_alemania)
  {
    digitalWrite(alemania,HIGH);
    digitalWrite(catalunya, LOW);
  digitalWrite(finlandia, LOW);
  digitalWrite(polonia, LOW);
  digitalWrite(espania, LOW);
  }
  
  valor_LDR3=analogRead(LDR3);
    if(valor_LDR3<=valor_finlandia)
  {
    digitalWrite(finlandia,HIGH);
    digitalWrite(catalunya, LOW);
  digitalWrite(alemania, LOW);
  digitalWrite(polonia, LOW);
  digitalWrite(espania, LOW);
  }
  
  valor_LDR4=analogRead(LDR4);
    if(valor_LDR4<=valor_polonia)
  {
    digitalWrite(polonia,HIGH);
    digitalWrite(catalunya, LOW);
  digitalWrite(alemania, LOW);
  digitalWrite(finlandia, LOW);
  digitalWrite(espania, LOW);
  }
  
  valor_LDR5=analogRead(LDR5);
    if(valor_LDR5<=valor_espania)
  {
    digitalWrite(espania,HIGH);
    digitalWrite(catalunya, LOW);
  digitalWrite(alemania, LOW);
  digitalWrite(finlandia, LOW);
  digitalWrite(polonia, LOW); 
    }
  if(valor_LDR1>=valor_catalunya&&valor_LDR2>=valor_alemania&&valor_LDR3>=valor_finlandia&&valor_LDR4>=valor_polonia&&valor_LDR5>=valor_espania)
  {
    digitalWrite(espania,LOW);
    digitalWrite(catalunya, LOW);
  digitalWrite(alemania, LOW);
  digitalWrite(finlandia, LOW);
  digitalWrite(polonia, LOW);
  }
   if(key='1'){
  valor_catalunya=710;
  valor_alemania=0;
  valor_finlandia=0;
  valor_polonia=0;
  valor_espania=705;
  
 }
 if (key='2'){
  valor_catalunya=710;
  valor_alemania=770;
  valor_finlandia=0;
  valor_polonia=700;
  valor_espania=705;
 }

 else if(key='3'){
  valor_catalunya=710;
  valor_alemania=770;
  valor_finlandia=710;
  valor_polonia=700;
  valor_espania=705;
}

contador_rempalago=0;

}


int ping(int TriggerPin, int EchoPin) {
   long duration, distanceCm;
   
   digitalWrite(TriggerPin, LOW);
   delayMicroseconds(4);
   digitalWrite(TriggerPin, HIGH);
   delayMicroseconds(10);
   digitalWrite(TriggerPin, LOW);
   
   duration = pulseIn(EchoPin, HIGH);
   
   distanceCm = duration * 10 / 292/ 2;
   return distanceCm;
}

Crikey ... not read all that , put a few print statements to follow the program , variable values etc to help you know what is going on.

You probably/maybe need some extra brackets in those if statements . ... if (( whatever) &&( somevariable==O))
{
Do something
}

You might want to look at switch/case as another method

  if (cm<=rempalago&&contador_rempalago==0)

Thecompilerdoesn’tcarebutpeopledo.Usesomespaces.

You can be assured that the Arduino evaluated every one of your if statements properly. If the results were not what you expected, it is your expectations that are wrong.

As hammy suggested, add some Serial.print() statements to determine why your expectations are wrong.

Extra parentheses are not needed, but won’t hurt. Spaces would certainly improved the readability of your code, as would some more carriage returns.

The compiler sees

  if(valor_LDR1>=valor_catalunya&&valor_LDR2>=valor_alemania&&valor_LDR3>=valor_finlandia&&valor_LDR4>=valor_polonia&&valor_LDR5>=valor_espania)

and

  if(valor_LDR1 >= valor_catalunya &&
     valor_LDR2 >= valor_alemania &&
     valor_LDR3 >= valor_finlandia &&
     valor_LDR4 >= valor_polonia &&
     valor_LDR5 >= valor_espania)

as exactly the same code, but the second one is far easier to read and understand, and doesn’t require scrolling to hell and back.

  if (key = '1')

Whoops