AllanGd / DESAFIO-DE-PROGRAMACAO-ACADEMIA-CAPGEMINI

Repositório para adicionar o código do desafio de programação da academia Capgemini

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DESAFIO DE PROGRAMACAO - ACADEMIA-CAPGEMINI 2022

Na terceira etapa do processo de seleção para a Academia Capgemini 2022 tem como objetivo testar o conhecimento em lógica de programação. Para isso, foram preparados três questões com diferentes níveis de dificuldade.

1️⃣ Questão 1

Escreva um algoritmo que mostre na tela uma escada de tamanho n utilizando o caractere * e espaços. A base e altura da escada devem ser iguais ao valor de n. A última linha não deve conter nenhum espaço.

Exemplo:

Entrada:

n = 6

Saída:
     *
    **
   ***
  ****
 *****
******

2️⃣ Questão 2

Débora se inscreveu em uma rede social para se manter em contato com seus amigos. A página de cadastro exigia o preenchimento dos campos de nome e senha, porém a senha precisa ser forte. O site considera uma senha forte quando ela satisfaz os seguintes critérios:

  • Possui no mínimo 6 caracteres.
  • Contém no mínimo 1 digito.
  • Contém no mínimo 1 letra em minúsculo.
  • Contém no mínimo 1 letra em maiúsculo.
  • Contém no mínimo 1 caractere especial. Os caracteres especiais são: !@#$%^&*()-+

Débora digitou uma string aleatória no campo de senha, porém ela não tem certeza se é uma senha forte. Para ajudar Débora, construa um algoritmo que informe qual é o número mínimo de caracteres que devem ser adicionados para uma string qualquer ser considerada segura.

Exemplo:

Entrada:

Ya3

Saída:

3

3️⃣ Questão 3

Duas palavras podem ser consideradas anagramas de si mesmas se as letras de uma palavra podem ser realocadas para formar a outra palavra. Dada uma string qualquer, desenvolva um algoritmo que encontre o número de pares de substrings que são anagramas.

Exemplo:

Exemplo 1)

Entrada:

ovo

Saída:

3

Exemplo 2)

Entrada:

ifailuhkqq

Saída:

3


Linguagem de programação utilizada.

☕ Java 17.0.2.

IDE utilizada.

🌘 Eclipse 2021-12

Como executar os métodos referente a cada questão do desafio de programação

Na classe Desafio foram criado 3 metodos sendo:

  1. questao1 Desafio da escada.
  2. questao2 Desafio da senha.
  3. questao3 Desafio do anagrama.

Para executar cada método é utilizado o método main da classe Main. Instancie a classe Desafio.

    Desafios desafio = new Desafios();

E chame os métodos referente a cada questão.

    desafio.questao1(int n); // Invocando o método questao1 (escada de *)
    desafio.questao2(String senha); // Invocando o método questao2 (validação de senha)
    desafio.questao3(String palavra); // Invocando o método questao3 (verificação de anagrama)

❗ Observação

Cada metodo necessita que seja repassado os seguintes argumentos:

  • questao1 - Necessario que seja enviado como argumento um numero inteiro.
  • questao2 - Necessario que seja enviado como argumento uma palavra (string).
  • questao3 - Necessario que seja enviado como argumento uma palavra (string).

Documentação

A documentação pode ser encontrada na pasta docs/ ou clicando aqui.

About

Repositório para adicionar o código do desafio de programação da academia Capgemini


Languages

Language:Java 83.7%Language:HTML 16.3%