Giter Site home page Giter Site logo

lucasrmagalhaes / desafios-dio Goto Github PK

View Code? Open in Web Editor NEW
346.0 6.0 127.0 351 KB

Resolução dos desafios de C Sharp, Java, JavaScript, Kotlin e Ruby da Digital Innovation One. :books:

Home Page: https://digitalinnovation.one/

License: MIT License

JavaScript 27.52% Java 27.15% C# 39.55% Ruby 2.70% Kotlin 3.08%
dio desafios js java csharp desafios-resolvidos challenges challenges-solved digital-innovation-one bootcamp

desafios-dio's Introduction

Routine

🏬 I'm currently working on FIERGS as Information Technology Analyst.
❤️ I'm passionate about tech, music, movie, dog, cat, games and of course my family!
💬 Ask me about anything here.
🔗 My Social Networks.

LinkedIn Gmail Profile views


Most Used Languages and Trophies 📊 🏆
Projects and Courses 💾
Projects
Name Website Languages
Personal Portfolio Website 🌐

Snake 🌐
COVID-19 🌐
dt money 🌐
Event Platform 🌐
GitHub Explorer 🌐
Courses
Name Languages
Exceções com C#
CSS: Animation
Menu hamburguer e morphing menu com CSS transitions
Git e GitHub - Comandos e Conceitos
Anotações da Biblioteca JasperReports
Como Modelar um Banco de Controle de Séries Assistidas com MySQL
Desenvolvimento Web Avançado com PHP, Laravel e Vue.JS

Segurança da Informação com Python
Introdução Prática ao TypeScript
Fundamentos Node.js e Jest
Spotify Recently Played ▶️

desafios-dio's People

Contributors

lucasrmagalhaes avatar rbalves avatar webdevcampos avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

desafios-dio's Issues

Gerando um Array de Números Primos

Desafio
Faça um algoritmo em Js Implemente um algoritmo em JavaScript que receba um número inteiro N e retorne um array com os N primeiros números primos.

Entrada
Um número inteiro N.

Saída
Um array com os N primeiros números primo

//Desafios JavaScript na DIO têm funções "gets" e "print" acessíveis globalmente:
//- "gets" : lê UMA linha com dado(s) de entrada (inputs) do usuário;
//- "print": imprime um texto de saída (output), pulando linha.

function isPrime(num) {
// TODO: implemente a lógica para verificar se um número é primo e retorne true ou false

}

function getPrimes(n) {
// TODO: implemente a lógica para retornar os n primeiros números primos em um array

}

// TODO: transforme o array em uma string com os números separados por vírgula e coloque entre colchetes

Resolvendo algoritmos com C#

Para quem estiver tendo dificuldades com o exercicio Fórmula de Bhaskara

image

(coloquei aqui pois vi pessoas com dificuldades e não achando a solução, se quiser incluir no seu git fique a vontade, percebi que não o possui)
Codigo Resolvido:

using System; 

class minhaClasse {

    static void Main(string[] args) { 

            double a, b, c, x1, x2;

            var input = Console.ReadLine().Split(' ');
            a = Convert.ToDouble(input[0]);
            b = Convert.ToDouble(input[1]);
            c = Convert.ToDouble(input[2]);

            if ((b * b - 4 * a * c) >= 0 && (2 * a) != 0)
            {
                x1 = (-b + Math.Sqrt(Math.Pow(b, 2) - 4 * a * c)) / (2 * a);

                x2 = (-b - Math.Sqrt(Math.Pow(b, 2) - 4 * a * c)) / (2 * a);

                Console.WriteLine("R1 = {0:0.00000}", x1);

                Console.WriteLine("R2 = {0:0.00000}", x2);

            }

            else
            {
                Console.WriteLine("Impossivel calcular");
            }

    }

}

Ruby

Adicionar os desafios e soluções de Ruby.

[Bug] Descrição de desafio incorreta ou duplicada

No README, nas soluções implementadas em JavaScript, na tabela "Ordenação e Filtros em Javascript", o título do primeiro desafio está incorreto ou duplicado. O link está direcionando para a solução do desafio "Ordenando Números Pares e Ímpares".

image

[Solução][JavaScript] Encontre a maior substring

Encontre a maior substring

Desafio

Encontre a maior substring comum entre as duas strings informadas. A substring pode ser qualquer parte da string, inclusive ela toda. Se não houver subseqüência comum, a saída deve ser “0”. A comparação é case sensitive ('x' != 'X').

Entrada

A entrada contém vários casos de teste. Cada caso de teste é composto por duas linhas, cada uma contendo uma string. Ambas strings de entrada contém entre 1 e 50 caracteres ('A'-'Z','a'-'z' ou espaço ' '), inclusive, ou no mínimo uma letra ('A'-'Z','a'-'z').

Saída

O tamanho da maior subsequência comum entre as duas Strings.

Desafio

Desculpa, não achei outra forma de entra em contato com você, mas estou preso nesse desafio, e olhando aqui no Git vi seu código, mas ao usar ele, o mesmo não passou.
Estou tentando resolver esse desafio e não consigo

Table HTML - Ruby

Criar a tabela dos desafios: Praticando com Desafios Intermediários em Ruby

[Solução][JavaScript] Gincana no Acampamento

Gincana no Acampamento

Desafio

Nas férias de Dezembro, várias escolas se organizam e levam seus alunos para um acampamento de férias por uma semana. Nestes acampamentos os alunos são divididos em cabanas coletivos por gênero e idade, sempre com um adulto que, além de dormir com o grupo no cabana, também são responsáveis por criar e executar várias atividades, como por exemplo jogos, excursões, Gincanas Noturnas, etc.

No primeiro dia foi realizada uma gincana em que a atividade constituia em agrupar os alunos em um círculo (organizado no sentido anti-horário) do qual seriam retiradas uma a uma até que sobrasse apenas um aluno, que seria o vencedor.

No momento em que entra no círculo, cada aluno recebe uma pequena ficha que contém um valor de 1 a 500. Depois que o círculo é formado, conta-se, iniciando no aluno que está ao lado da primeira que entrou no círculo, o número correspondente à ficha que o primeiro detém. O aluno onde o número contado cair, deve ser retirado do grupo, e a contagem inicia novamente segundo a ficha do aluno que acabou de ser eliminado. Para ficar mais interessante, quando o valor que consta na ficha é par, a contagem é feita no sentido horário e quando o valor que consta na ficha é ímpar, a contagem é feita no sentido anti-horário.

Desenvolva um programa para que no próximo evento o responsável pela brincadeira saiba previamente qual criança irá ser a vencedora de cada grupo, com base nas informações fornecidas.

Entrada

A entrada contém vários casos de teste. A primeira linha de cada caso de teste contém um inteiro N (1 ≤ N ≤ 100), indicando a quantidade de alunos que farão parte de cada círculo. Em seguida, as N linhas de cada caso de teste conterão duas informações, o Nome e o Valor (1 ≤ Valor ≤ 500) que consta na ficha de cada aluno, separados por um espaço, na ordem de entrada na formação do círculo inicial.

OBS: O Nome de cada aluno não deverá ultrapassar 30 caracteres e contém apenas letras maiúsculas e minúsculas, sem acentos, e o caractere “_”. O final da entrada é indicado pelo número zero.

Saída

Para cada caso de teste, deve-se apresentar a mensagem Vencedor(a): xxxxxx, com um espaço após o sinal ":" indicando qual é o aluno do grupo que venceu a brincadeira.

[Solução][JavaScript] Fila do banco

Fila do banco

Desafio

O banco que você trabalha sempre tem problemas para organizar as filas de atendimento dos clientes.

Após uma reunião com a gerência ficou decidido que os clientes ao chegar na agência receberão uma senha numérica em seu aparelho de celular via sms e que a ordem da fila será dada não pela ordem de chegada, mas sim pelo número recebido via sms. A ordem de atendimento será decrescente: aqueles que receberam número maior deverão ser atendidos primeiro.

Então, dada a ordem de chegada dos clientes reordene a fila de acordo com o número recebido via sms, e diga quantos clientes não precisaram trocar de lugar nessa reordenação.

Entrada

A primeira linha contém um inteiro N, indicando o número de casos de teste a seguir.

Cada caso de teste inicia com um inteiro M (1 ≤ M ≤ 1000), indicando o número de clientes. Em seguida haverá M inteiros distintos Pi (1 ≤ Pi ≤ 1000), onde o i-ésimo inteiro indica o número recebido via sms do i-ésimo cliente.

Os inteiros acima são dados em ordem de chegada, ou seja, o primeiro inteiro diz respeito ao primeiro cliente a chegar na fila, o segundo inteiro diz respeito ao segundo cliente, e assim sucessivamente.

Saída

Para cada caso de teste imprima uma linha, contendo um inteiro, indicando o número de clientes que não precisaram trocar de lugar mesmo após a fila ser reordenada.

[Solução][JavaScript] Uniformes de final de ano

Uniformes de final de ano

Desafio

O professor Girafales organizou a confecção de um uniforme para as turmas da escola para comemorar o final do ano. Após algumas conversas, ficou decidido com os alunos que eles poderiam escolher a cor do uniforme entre branco ou vermelho. Assim sendo, Girafales precisa de sua ajuda para organizar as listas de quem quer o uniforme em cada uma das turmas, relacionando estas camisetas pela cor, tamanho (P, M ou G) e por último pelo nome.

Entrada

Cada caso de teste inicia com um valor N, (1 ≤ N ≤ 60) inteiro e positivo, que indica a quantidade de uniformes a serem feitas para aquela turma. As próximas N*2 linhas contém informações de cada um dos uniformes (serão duas linhas de informação para cada uniforme). A primeira linha irá conter o nome do estudante e a segunda linha irá conter a cor do uniforme ("branco" ou "vermelho") seguido por um espaço e pelo tamanho do uniforme "P" "M" ou "G". A entrada termina quando o valor de N for igual a zero (0) e esta valor não deverá ser processado.

Saída

Para cada caso de entrada deverão ser impressas as informações ordenadas pela cor em ordem ascendente, seguido pelos tamanhos em ordem descendente e por último por ordem ascendente de nome, conforme o exemplo abaixo.

Implementando Maior e Menor Salário

Desafio
Você está trabalhando em um projeto para uma empresa que gerencia dados de funcionários de uma grande organização. Cada funcionário é representado por um objeto com as propriedades: nome, cargo, salário. A empresa precisa saber qual funcionário tem o maior e o menor salário.

Entrada
Um array com três objetos, representando os funcionários. Cada objeto tem as seguintes propriedades:

nome: string

cargo: string

salario: número

Saída
Dois números que representam o maior salário e o menor salário entre os funcionários dessa empresa.

//Desafios JavaScript na DIO têm funções "gets" e "print" acessíveis globalmente:
//- "gets" : lê UMA linha com dado(s) de entrada (inputs) do usuário;
//- "print": imprime um texto de saída (output), pulando linha.

const funcionarios = [
{ nome: gets(), cargo: gets(), salario: gets() },
{ nome: gets(), cargo: gets(), salario: gets() },
{ nome: gets(), cargo: gets(), salario: gets() }
];

// TODO: Implemente a função encontrarMaiorEMenorSalario que recebe um array de funcionarios e retorna um array com o maior e o menor salário:

/ TODO: Chame a função encontrarMaiorEMenorSalario com o array de funcionarios e armazene o resultado nas variáveis maiorSalario e menorSalario.

[Solução][JavaScript] Validador de senhas com requisitos

Validador de senhas com requisitos

Desafio

Pedro e Fernando são os desenvolvedores em uma stratup e vão desenvolver o novo sistema de cadastro, e pediram a sua ajuda. Sua task é fazer o código que valide as senhas que são cadastradas, para isso você deve atentar aos requisitos a seguir:

  • A senha deve conter, no mínimo, uma letra maiúscula, uma letra minúscula e um número;
  • A mesma não pode ter nenhum caractere de pontuação, acentuação ou espaço;
  • Além disso, a senha pode ter de 6 a 32 caracteres.

Entrada

A entrada contém vários casos de teste e termina com final de arquivo. Cada linha tem uma string S, correspondente a senha que é inserida pelo usuário no momento do cadastro.

Saída

A saída contém uma linha, que pode ser “Senha valida.”, caso a senha tenha cada item dos requisitos solicitados anteriormente, ou “Senha invalida.”, se um ou mais requisitos não forem atendidos.

Desafios Médios JavaScript - Polígonos Regulares Simples

Na geometria Euclidiana, um polígono regular é um polígono em que todos os ângulos são iguais e todos os lados tem o mesmo comprimento. Um polígono simples é aquele cujos segmentos de reta não se interceptam. Abaixo pode-se ver vários mosaicos feitos por polígonos regulares.

https://ibb.co/5G1wDdm
C-1

Você deve escrever um programa que, dados o número e o comprimento dos lados de um polígono regular, mostre seu perímetro.

Entrada
A entrada tem dois inteiros positivos: N e L, que são, respectivamente, o número de lados e o comprimento de cada lado de um polígono regular (3 ≤ N ≤ 1000000 and 1 ≤ L ≤ 4000).

Saída
A saída é o perímetro P do polígono regular em uma única linha.

https://ibb.co/whmTTSm
s

CODIGO DE INICIO

`let lines = gets().split("\n");
let line = lines.shift().split(' ');

//continue o seu código aqui`

Calculando Idade

//Desafios JavaScript na DIO têm funções "gets" e "print" acessíveis globalmente:
//- "gets" : lê UMA linha com dado(s) de entrada (inputs) do usuário;
//- "print": imprime um texto de saída (output), pulando linha.

class Age {

//TODO: Crie um construtor que receba a data de nascimento como parâmetro

//TODO Criar uma função que calcula a idade

}

// TODO: Leia uma linha de entrada com a data de nascimento (formato: "yyyy-mm-dd"):

// TODO: Crie um objeto Age com a data de nascimento lida:

// TODO: Imprima a idade calculada usando a função calculateAge() do objeto Age:

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.