Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Eu to tentando entender a seguinte expressao:
maior = (x<y)?(x<z)? x:z:(y<z)?y:z;
Aqui ta o codigo do programa:
#include <stdio.h>
int main(){
int maior, x=1, z=2, y=3;
maior = (x<y)?(x<z)? x:z:(y<z)?y:z;
printf("%d\n", maior);
system("pause");
return 0;
}
se fosse uma expressao do tipo (x<y)? x:y; eu ate entenderia.
Obrigado pela atenção
O nome da variável é ruim.
Como assim o nome da variavel é ruim? eu coloco o nome q eu quiser kkkkkkkkkkkkk
:lol:
Isso nunca foi questionado.
Você tem todo direito de colocar o nome que quiser, ainda que ele seja horrível.
Este é o caso da sua variável "maior", que armazena o menor número dos 3.
"kkk"
Colocando alguns colchetes fica mais fácil de compreender:
(x<y)?[(x<z)? x:z]:[(y<z)?y:z];
Perceba que o que é feito, é uma condição ternária dentro de outra condição ternária. Semelhante a if's aninhados.