Translated example codes to Portuguese (#31189)
The translation was made to make more sense for readers who do not speak English
This commit is contained in:
@ -1,7 +1,8 @@
|
|||||||
---
|
---
|
||||||
title: Ternary Operator
|
title: Ternary Operator
|
||||||
localeTitle: Operador Ternário
|
localeTitle: Operador Ternário
|
||||||
---
|
---
|
||||||
|
## Operador Ternário
|
||||||
|
|
||||||
Os programadores usam operadores ternários em C para tomar decisões em lugar de declarações condicionais, **se** e **mais** . O operador ternário é um operador que leva três argumentos. O primeiro argumento é um argumento de comparação, o segundo é o resultado em uma comparação verdadeira e o terceiro é o resultado em uma comparação falsa. Se isso ajudar você pode pensar no operador como uma forma abreviada de escrever uma instrução if-else.
|
Os programadores usam operadores ternários em C para tomar decisões em lugar de declarações condicionais, **se** e **mais** . O operador ternário é um operador que leva três argumentos. O primeiro argumento é um argumento de comparação, o segundo é o resultado em uma comparação verdadeira e o terceiro é o resultado em uma comparação falsa. Se isso ajudar você pode pensar no operador como uma forma abreviada de escrever uma instrução if-else.
|
||||||
|
|
||||||
@ -24,9 +25,9 @@ Este exemplo leva mais de 10 linhas, mas isso não é necessário. Você pode es
|
|||||||
|
|
||||||
### Sintaxe
|
### Sintaxe
|
||||||
|
|
||||||
|
`condicao ? valor_se_verdadeiro : valor_se_falso`
|
||||||
|
|
||||||
|
A condição é avaliada para declaracao\_1 se a condição for verdadeira e declaracao\_2 caso contrário.
|
||||||
|
|
||||||
Aqui está o exemplo acima reescrito para usar o operador ternário:
|
Aqui está o exemplo acima reescrito para usar o operador ternário:
|
||||||
|
|
||||||
@ -46,30 +47,30 @@ A saída do exemplo deve ser:
|
|||||||
|
|
||||||
`c` é igual a `a` , porque a condição `a<b` era verdadeira.
|
`c` é igual a `a` , porque a condição `a<b` era verdadeira.
|
||||||
|
|
||||||
|
Isso parece bem simples, certo? Observe que `valor_se_verdadeiro` e `valor_se_falso` devem ter o mesmo tipo e não podem ser instruções completas, mas simplesmente expressões.
|
||||||
|
|
||||||
O operador ternário também pode ser aninhado da mesma forma que as instruções if-else aninhadas. Considere esta declaração if-else aninhada:
|
O operador ternário também pode ser aninhado da mesma forma que as instruções if-else aninhadas. Considere esta declaração if-else aninhada:
|
||||||
|
|
||||||
```c
|
```c
|
||||||
```c
|
int a = 1, b = 2, resp;
|
||||||
if (a == 1) {
|
if (a == 1) {
|
||||||
if (b == 2) {
|
if (b == 2) {
|
||||||
if (b == 2) {
|
resp = 3;
|
||||||
} else {
|
} else {
|
||||||
} else {
|
resp = 5;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
} else {
|
resp = 0;
|
||||||
}
|
}
|
||||||
}
|
printf ("%d\n", resp);
|
||||||
```
|
```
|
||||||
|
|
||||||
Aqui está o código acima reescrito usando o operador ternário aninhado:
|
Aqui está o código acima reescrito usando o operador ternário aninhado:
|
||||||
|
|
||||||
```c
|
```c
|
||||||
```c
|
int a = 1, b = 2, resp;
|
||||||
int a = 1, b = 2, ans;
|
resp = (a == 1 ? (b == 2 ? 3 : 5) : 0);
|
||||||
ans = (a == 1 ? (b == 2 ? 3 : 5) : 0);
|
printf ("%d\n", resp);
|
||||||
```
|
```
|
||||||
|
|
||||||
A saída de ambos os códigos acima deve ser:
|
A saída de ambos os códigos acima deve ser:
|
||||||
|
Reference in New Issue
Block a user