Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Recursão (Recursividade) |
Um método recursivo que calcula o fatorial de um determinado número inteiro - Lista de Exercícios Resolvidos de JavaQuantidade de visualizações: 2358 vezes |
Pergunta/Tarefa: Na matemática, o fatorial de um número natural n, representado por n!, é o produto de todos os inteiros positivos menores ou iguais a n. O fatorial de um número n pode ser definido recursivamente da seguinte forma: 0! = 1; n! = n x (n - 1)!; sendo n > 0 public static long fatorial(int n){ // sua implementação aqui } Informe um número inteiro: 5 O fatorial do número informado é: 120 Veja a resolução comentada deste exercício usando Java console: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package estudos; import java.util.Scanner; public class Estudos { public static void main(String[] args) { // cria um novo objeto da classe Scanner Scanner entrada = new Scanner(System.in); // vamos solicitar o número inteiro System.out.print("Informe um número inteiro: "); // lê o número int numero = Integer.parseInt(entrada.nextLine()); // calcula o fatorial corresponde ao número informado System.out.print("O fatorial do número informado é: " + fatorial(numero)); System.out.println("\n"); } // método recursivo que calcula o fatorial de um inteiro informado public static long fatorial(int n){ if(n == 0){ // caso base....retornar return 1; } else{ return n * fatorial(n - 1); // efetua mais uma chamada recursiva } } } |
Link para compartilhar na Internet ou com seus amigos: |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços |
Exercício Resolvido de Java - Um programa que solicita ao usuário que informe um número e verifica se tal número é um número perfeitoQuantidade de visualizações: 2636 vezes |
Exercícios Resolvidos de Java - Um programa que solicita ao usuário que informe um número e verifica se tal número é um número perfeito Pergunta/Tarefa: Em Matemática, um número perfeito é um número inteiro para o qual a soma de todos os seus divisores positivos próprios (excluindo ele mesmo) é igual ao próprio número. Por exemplo, o número 6 é um número perfeito, pois: 6 = 1 + 2 + 3. O próximo número perfeito é o 28, pois 28 = 1 + 2 + 4 + 7 + 14. Todo número perfeito é um número triangular, bem como um número hexagonal. Escreva um programa Java que solicita um número inteiro ao usuário e verifica se tal número é um número perfeito. Sua saída deve ser parecida com: Informe um número: 6 O número informado é um número perfeito. Veja a resolução comentada deste exercício usando Java console: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package estudos; import java.util.Scanner; public class Estudos { public static void main(String[] args) { Scanner entrada = new Scanner(System.in); // vamos pedir que o usuário informe um número System.out.print("Informe um número: "); int numero = Integer.parseInt(entrada.nextLine()); // vamos verificar se o número informado é um número perfeito int soma = 0; // vamos contar de 1 até a metade do número informado for(int i = 1; i <= numero / 2; i++){ if(numero % i == 0){ // o número informado é divisível pelo valor de i? soma = soma + i; } } // a soma é igual ao numero informado? if(soma == numero){ System.out.println("O número informado é um número perfeito."); } else{ System.out.println("O número informado não é um número perfeito."); } System.out.println("\n"); } } |
Java ::: Fundamentos da Linguagem ::: Tipos de Dados |
Como usar o tipo de dados float do Java - Usando o tipo de dados float da linguagem JavaQuantidade de visualizações: 22496 vezes |
O tipo de dados float é usado quando precisamos armazenar números de ponto-flutuante (com parte fracionária) na faixa 1.401298464324817e-45f até 3.402823476638528860e+38f. Este tipo ocupa 32 bits na memória (o mesmo que um int) e possui precisão de 6 ou 7 dígitos significativos. Veja um exemplo de seu uso:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- public class Estudos{ public static void main(String args[]){ float valor = 54.5f; System.out.println("O valor da variável é: " + valor); System.exit(0); } } Antes de prosseguir, veja que inserí a letra "f" (ou "F") após o valor literal atribuído à variável. Se retirássemos esta letra, o compilador emitiria a seguinte mensagem de erro: Estudos.java:3: possible loss of precision found : double required: float float valor = 54.5; ^ 1 error Isso acontece porque, por padrão, um literal de ponto-flutuante é no mínimo do tipo double. E um double não cabe em um float. A definição da letra "f" ou "F" informa ao compilador que estamos realmente definindo um literal float. O tipo de dados float pode ser convertido (sem a necessidade de cast) para os seguintes tipos: float -> double Se precisarmos converter o tipo float para os tipos char, byte, short, int ou long, teremos que lançar mão de uma coerção (cast), também conhecida como conversão forçada. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- float valor = 54.5f; int valor2 = (int)(valor); É preciso ficar atento ao fato de que uma coerção de um tipo de ponto-flutuante para um tipo integral (inteiro) resulta na perda da parte fracionária do valor que está sofrendo o cast. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico |
Exercício Resolvido de Java - Escreva um algoritmo Java que leia o nome de um vendedor, o seu salário fixo e o total de vendas efetuadas por ele no mêsQuantidade de visualizações: 10939 vezes |
Pergunta/Tarefa: Escreva um algoritmo Java que leia o nome de um vendedor, o seu salário fixo e o total de vendas efetuadas por ele no mês (em dinheiro). Sabendo que este vendedor ganha 15% de comissão sobre suas vendas efetuadas, informar o seu nome, o salário fixo e o salário no final do mês. Sua saída deverá ser parecida com: Nome do vendedor: CAMILA REIS Informe o salário fixo: 1850 Total de vendas efetuadas: 5000 Resultados: Nome do vendedor: CAMILA REIS Salário fixo: 1850.0 Salário final do mês: 2600.0 Veja a resolução deste exercício usando Java: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package estudos; import java.util.Scanner; public class Estudos { public static void main(String[] args) { // para ler a entrada do usuário Scanner entrada = new Scanner(System.in); // vamos ler o nome do vendedor System.out.print("Nome do vendedor: "); String nome = entrada.nextLine(); // vamos ler o salário fixo System.out.print("Informe o salário fixo: "); double salario_fixo = Double.parseDouble(entrada.nextLine()); // vamos o total de vendas efetuadas pelo vendedor System.out.print("Total de vendas efetuadas: "); double total_vendas = Double.parseDouble(entrada.nextLine()); // agora vamos calcular o total da comissão a ser paga double total_comissao = total_vendas * (15.0 / 100.0); // calculamos o salário final double salario_final = salario_fixo + total_comissao; // e mostramos os resultados System.out.println("\nResultados:\n"); System.out.println("Nome do vendedor: " + nome); System.out.println("Salário fixo: " + salario_fixo); System.out.println("Salário final do mês: " + salario_final); } } |
Vamos testar seus conhecimentos em Python |
Qual é a forma correta de se criar funções em Python? A) defun calcular(): B) def calcular(): C) void calcular(): D) def calcular(){} E) function calcular(): Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Estruturas de Aço e Madeira |
O aço no edifício A estrutura de estabilização da moldura estrutural da edificação da figura abaixo, que se caracteriza pelo fato de não possuir amarrações diagonais nem paredes de cisalhamento para assegurar a estabilidade lateral, pode ser chamada de: A) Estrutura contraventada. B) Moldura amarrada excentricamente. C) Moldura resistente a momentos. D) Paredes de cisalhamento. E) Nenhuma das alternativas anteriores. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Python |
Qual o resultado da execução do seguinte código Python?soma = 0 for i in range(0, 10): if i == 4 or i == 6: continue soma = soma + 3 print("A soma é: {0}".format(soma)) A) A soma é: 24 B) A soma é: 15 C) A soma é: 28 D) A soma é: 23 E) A soma é: 20 Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em JavaScript |
Qual é a forma correta de se exibir um diálogo de alerta em JavaScript? A) msgBox("Texto do aviso"); B) alertBox("Texto do aviso"); C) alert("Texto do aviso"); D) msg("Texto do aviso"); Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Python |
Qual o resultado da execução do seguinte código Python?estados = {"SP": "SÃO PAULO", "GO": "GOIÁS", "RJ": "RIO DE JANEIRO", "MG": "MINAS GERAIS"} print("GO" in estados) A) "GO" B) True C) False D) "SP", "GO", "RJ", "MG" E) "GOIÁS" Verificar Resposta Estudar Cards Todas as Questões |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
PHP - Programação Orientada a Objetos em PHP - Como passar um objeto de uma classe para uma função PHP |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |