Pular para o conteúdo principal

Questão de Programação — Java — CESGRANRIO 2023

ProgramaçãoJava
Código
cg019890
Banca
CESGRANRIO
Órgão
Transpetro
Ano
2023
Nível
Superior
Cargo
Profissional de Nível Superior - Junior: Ênfase: 4: Análise de Sistemas - Infraestrutura
Deseja-se escrever um método Java que inverta a ordem dos caracteres existentes em um array recebido como parâmetro, conforme exemplificado na Figura a seguir.Imagem associada para resolução da questãoEsse método receberá como parâmetros o array a ser invertido e o índice do primeiro elemento do array, devendo funcionar com arrays de quaisquer comprimentos, inclusive com os de comprimentos iguais a zero.Qual método executa essa inversão da ordem dos caracteres de acordo com as especificações apresentadas?
  1. Apublic static void inverte(char [] vet, int i) {int m=vet.length / 2;if(i < m)return;inverte(vet, i+1);char aux=vet[i];vet[i]=vet[vet.length - i - 1];vet[vet.length - i - 1] = aux;}
  2. Bpublic static void inverte(char [] vet, int i) {for ( ; i <= vet.length; i++) {char aux=vet[i];vet[i]=vet[vet.length - i - 1];vet[vet.length - i - 1] = aux;}}
  3. Cpublic static void inverte(char [] vet, int i) {do {char aux=vet[i];vet[i]=vet[vet.length - i - 1];vet[vet.length - i - 1] = aux;i++;} while (i < vet.length);}
  4. Dpublic static void inverte(char [] vet, int i) {int m=vet.length / 2;do {char aux=vet[i];vet[i]=vet[vet.length - i - 1];vet[vet.length - i - 1] = aux;i++;} while (i < m);}
  5. Epublic static void inverte(char [] vet, int i) {int m=vet.length / 2;if(i == m)return;char aux=vet[i];vet[i]=vet[vet.length - i - 1];vet[vet.length - i - 1] = aux;inverte(vet, i+1);}
Revelar gabarito e comentário

GabaritoE — public static void inverte(char [] vet, int i) { int m=vet.length / 2; if(i == m) return; char aux=vet[i]; vet[i]=vet[vet.length - i - 1]; vet[vet.length - i - 1] = aux; inverte(vet, i+1); }

Link permanente: /questoes/cg019890