Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços |
Para a cobrança das contas dos seus consumidores, uma empresa de fornecimento de energia elétrica faz a leitura mensal dos medidores de consumo - Desafio de Programação Resolvido em JavaQuantidade de visualizações: 292 vezes |
Pergunta/Tarefa: Para a cobrança das contas dos seus consumidores, uma empresa de fornecimento de energia elétrica faz a leitura mensal dos medidores de consumo. Para cada leitura são registrados os seguintes dados: número da unidade consumidora, quantidade de kWh consumidos durante o mês e tipo de consumidor (residencial, comercial ou industrial). Sabendo-se que o preço, em reais, do kWh é de R$ 0,53224 para o consumidor residencial, de R$ 0,73214 para o consumidor comercial e de R$ 0,84322 para o consumidor industrial, faça um programa em Java que leia estes dados e calcule e imprima: a) número da unidade consumidora, a conta mensal e a categoria de cada consumidor; b) média de consumo dos consumidores industriais; c) número da unidade consumidora de maior consumo entre os consumidores comerciais; d) valor total a ser recebido pela empresa de seus consumidores. A leitura dos consumidores deverá ser interrompida quando o valor 0 for informado para o número da unidade consumidora. Assuma o valor 1 para o tipo residencial, 2 para o comercial e 3 para industrial. Seu programa Java deverá exibir uma saída parecida com: Informe a Unidade Consumidora: 1 Quantidade de kWh consumidos: 300 Residencial, Comercial ou Industrial [1, 2, 3] : 1 Unidade Consumidora: 1 Conta Mensal: 159.67200000000003 Categoria: Residencial Informe a Unidade Consumidora: 2 Quantidade de kWh consumidos: 150 Residencial, Comercial ou Industrial [1, 2, 3] : 2 Unidade Consumidora: 2 Conta Mensal: 109.821 Categoria: Comercial Informe a Unidade Consumidora: 3 Quantidade de kWh consumidos: 250 Residencial, Comercial ou Industrial [1, 2, 3] : 3 Unidade Consumidora: 3 Conta Mensal: 210.80499999999998 Categoria: Industrial Informe a Unidade Consumidora: 4 Quantidade de kWh consumidos: 280 Residencial, Comercial ou Industrial [1, 2, 3] : 3 Unidade Consumidora: 4 Conta Mensal: 236.1016 Categoria: Industrial Informe a Unidade Consumidora: 5 Quantidade de kWh consumidos: 320 Residencial, Comercial ou Industrial [1, 2, 3] : 2 Unidade Consumidora: 5 Conta Mensal: 234.28480000000002 Categoria: Comercial Informe a Unidade Consumidora: 0 Média Consumo Industrial: 223.45329999999998 Unidade Maior Consumo Comercial: 5 Valor total a ser recebido: 950.6844 Veja a resolução comentada 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) { // variáveis usadas na resolução do problema int unidade, quant_kwh_consumidos, tipo_consumidor; int unid_maior_consumo_comer = 0, quant_industriais = 0; double conta_mensal, media_industriais, soma_industriais = 0; double maior_consumo_comercial = 0; double valor_total = 0; // para a leitura da entrada do usuário Scanner entrada = new Scanner(System.in); do { // vamos ler os dados de cada consumidor System.out.print("\nInforme a Unidade Consumidora: "); unidade = Integer.parseInt(entrada.nextLine()); // a unidade é diferente de 0? if(unidade != 0){ System.out.print("Quantidade de kWh consumidos: "); quant_kwh_consumidos = Integer.parseInt(entrada.nextLine()); System.out.print("Residencial, Comercial ou Industrial [1, 2, 3] : "); tipo_consumidor = Integer.parseInt(entrada.nextLine()); // vamos calcular a conta mensal e exibir os dados desse consumidor System.out.println("\nUnidade Consumidora: " + unidade); if(tipo_consumidor == 1){ // Residencial conta_mensal = quant_kwh_consumidos * 0.53224; System.out.println("Conta Mensal: " + conta_mensal); System.out.println("Categoria: Residencial"); } else if(tipo_consumidor == 2){ // Comercial conta_mensal = quant_kwh_consumidos * 0.73214; System.out.println("Conta Mensal: " + conta_mensal); System.out.println("Categoria: Comercial"); // temos que registrar a unidade de maior consumo // comercial if(conta_mensal > maior_consumo_comercial){ unid_maior_consumo_comer = unidade; maior_consumo_comercial = conta_mensal; } } else { // Industrial conta_mensal = quant_kwh_consumidos * 0.84322; System.out.println("Conta Mensal: " + conta_mensal); System.out.println("Categoria: Industrial"); // vamos contar mais este cliente industrial quant_industriais = quant_industriais + 1; // temos também que somar mais essa conta soma_industriais = soma_industriais + conta_mensal; } // vamos somar mais esta conta ao valor total valor_total = valor_total + conta_mensal; } } while(unidade != 0); // vamos mostrar a média de consumo dos clientes industriais if(quant_industriais > 0){ media_industriais = soma_industriais / quant_industriais; System.out.println("\nMédia Consumo Industrial: " + media_industriais); } else{ System.out.println("\nNão houve consumo industrial"); } // vamos mostrar o número da unidade consumidora de maior // consumo entre os consumidores comerciais; System.out.println("Unidade Maior Consumo Comercial: " + unid_maior_consumo_comer); // vamos mostrar o valor total System.out.println("Valor total a ser recebido: " + valor_total); } } |
Link para compartilhar na Internet ou com seus amigos: |
C# ::: Desafios e Lista de Exercícios Resolvidos ::: Matemática e Estatística |
Exercícios Resolvidos de C# - Como calcular juros simples em C# - Um programa C# que lê o valor principal, o tempoQuantidade de visualizações: 311 vezes |
Pergunta/Tarefa: Saber como escrever um programa C# que recebe o valor principal, o tempo e a taxa de juros e retorna os juros simples a serem pagos ou recebidos é uma habilidade que todo programador deve aprender em algum ponto de sua carreira. Sendo assim, escreva um algoritmo em C# que pede para o usuário informar um valor a ser pago ou recebido, o tempo em dias, meses ou anos e a taxa de juros (sem dividi-la por 100) e retorne os juros simples a serem pagos ou recebidos. Note que, se você quiser mostrar o valor total a ser pago ou recebido, basta somar os juros ao valor principal. Antes, porém, veja a fórmula do cálculo de juros simples: \[\text{Juros} = \frac{\text{C} \times \text{i} \times \text{t}}{100}\] Onde: C é o valor a ser pago ou a ser recebido; i é a taxa de juros (sem dividir por 100); t é o tempo em dias, meses, anos, etc. Sua saída deverá ser parecida com: Informe o valor principal: 600 Taxa de juros: 12 Informe o tempo: 5 Juros a serem pagos ou recebidos: 360.0 Veja a resolução comentada deste exercício usando C#: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- using System; namespace Estudos { class Principal { // função principal do programa C# static void Main(string[] args) { // vamos ler o valor principal Console.Write("Informe o valor principal: "); double principal = Double.Parse(Console.ReadLine()); // agora vamos ler a taxa de juros Console.Write("Taxa de juros: "); double taxa = Double.Parse(Console.ReadLine()); // finalmente o tempo em dias, meses, anos, etc Console.Write("Informe o tempo: "); int tempo = Int32.Parse(Console.ReadLine()); // vamos calcular os juros double juros = (principal * taxa * tempo) / 100; // e mostramos o resultado Console.WriteLine("Juros a serem pagos ou recebidos: " + juros); Console.WriteLine("\nPressione uma tecla para sair..."); Console.ReadKey(); } } } |
Ruby ::: Fundamentos da Linguagem ::: Passos Iniciais |
Como ler a entrada do usuário em Ruby usando a função getsQuantidade de visualizações: 11567 vezes |
Em várias ocasições nossos programas Ruby precisam interagir com o usuário, ou seja, precisamos ler informações do usuário com o propósito de efetuar algum cálculo ou tomar decisões sobre as tarefas a serem realizadas. A entrada do usuário em um programa Ruby pode ser obtida por meio do método gets. Esta função recebe a entrada do usuário a partir do teclado em formato texto (string) e a armazena em uma variável do tipo string. Veja um exemplo no qual usamos a função gets para solicitar que o usuário informe o seu nome. Em seguida imprimimos o nome informado na tela: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # Este exemplo mostra como ler entrada do usuário # a partir do teclado print "Informe seu nome: " # Lê a entrada nome = gets # Remove o caractere de fim de linha nome = nome.chomp # Exibe o resultado puts "Seu nome é: #{nome}" Ao executar este código Ruby nós teremos o seguinte resultado: Informe seu nome: Osmar J. Silva Seu nome é: Osmar J. Silva Note o uso da função chomp para remover o caractere de fim de linha adicionando automaticamente pelo interpretador Ruby quando pressionamos a tecla Enter. |
PostgreSQL ::: Dicas & Truques ::: Comandos DDL (Data Definition Language - Linguagem de Definição de Dados) |
Como criar uma base de dados no PostgreSQL usando o comando DDL CREATE DATABASEQuantidade de visualizações: 4388 vezes |
Quando queremos criar uma nova base de dados no PostgreSQL, é comum usarmos o pgAdmin ou a ferramenta de linha de comando createdb. No entanto, há situações nas quais precisamos criar uma nova base de dados usando instruções SQL. Para isso podemos usar o comando DDL CREATE DATABASE. Veja sua sintáxe para o PostgreSQL:CREATE DATABASE name [ [ WITH ] [ OWNER [=] user_name ] [ TEMPLATE [=] template ] [ ENCODING [=] encoding ] [ LC_COLLATE [=] lc_collate ] [ LC_CTYPE [=] lc_ctype ] [ TABLESPACE [=] tablespace_name ] [ CONNECTION LIMIT [=] connlimit ] ] ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- CREATE DATABASE estudos; Este comando pode ser disparado via linha de comando SQL Shell (psql), na janela de Query do pgAdmin ou a partir de uma linguagem de programação. Se uma mensagem parecida com: Query returned successfully with no result in 7674 ms. for exibida, é sinal de que a base de dados foi criada com sucesso. Quando tentamos criar uma base de dados com um nome já existente, o PostgreSQL abortará a operação e exibirá a seguinte mensagem de erro: ERRO: banco de dados "estudos" já existe ********** Error ********** ERRO: banco de dados "estudos" já existe SQL state: 42P04 OWNER = postgres ENCODING = 'UTF8' TABLESPACE = pg_default LC_COLLATE = 'Portuguese_Brazil.1252' LC_CTYPE = 'Portuguese_Brazil.1252' CONNECTION LIMIT = -1; Em outras dicas desta seção você verá como personalizar cada um destes parâmetros no comando CREATE DATABASE. |
PHP ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas |
Como calcular o cateto oposto dadas as medidas da hipotenusa e do cateto adjascente em PHPQuantidade de visualizações: 984 vezes |
Todos estamos acostumados com o Teorema de Pitágoras, que diz que "o quadrado da hipotenusa é igual à soma dos quadrados dos catetos". Baseado nessa informação, fica fácil retornar a medida do cateto oposto quando temos as medidas da hipotenusa e do cateto adjascente. Isso, claro, via programação em linguagem PHP. Comece observando a imagem a seguir: Veja que, nessa imagem, eu já coloquei os comprimentos da hipotenusa, do cateto oposto e do cateto adjascente. Para facilitar a conferência dos cálculos, eu coloquei também os ângulos theta (que alguns livros chamam de alfa) e beta já devidamente calculados. A medida da hipotenusa é, sem arredondamentos, 36.056 metros. Então, sabendo que o quadrado da hipotenusa é igual à soma dos quadrados dos catetos (Teorema de Pitógoras): \[c^2 = a^2 + b^2\] Tudo que temos que fazer é mudar a fórmula para: \[a^2 = c^2 - b^2\] Veja que agora o quadrado do cateto oposto é igual ao quadrado da hipotenusa menos o quadrado do cateto adjascente. Não se esqueça de que a hipotenusa é o maior lado do triângulo retângulo. Veja agora como esse cálculo é feito em linguagem PHP: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <?php $c = 36.056; // medida da hipotenusa $b = 30; // medida do cateto adjascente // agora vamos calcular o comprimento da cateto oposto $a = sqrt(pow($c, 2) - pow($b, 2)); // e mostramos o resultado echo "A medida do cateto oposto é: " . $a; ?> Ao executar este código PHP nós teremos o seguinte resultado: A medida do cateto oposto é: 20.000878380711 Como podemos ver, o resultado retornado com o código PHP confere com os valores da imagem apresentada. |
C++ ::: Desafios e Lista de Exercícios Resolvidos ::: Recursão (Recursividade) |
Exercício Resolvido de C++ - Um método recursivo que conta de 0 até 10Quantidade de visualizações: 696 vezes |
Pergunta/Tarefa: Escreva um método recursivo que conta e exibe os valores de 0 até 10. Seu método deverá possuir a seguinte assinatura: void contar_recursivamente(int n){ // sua implementação aqui } Sua saída deverá ser parecida com: 0 1 2 3 4 5 6 7 8 9 10 Veja a resolução comentada deste exercício usando C++: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <iostream> #include <cstdlib> using namespace std; // método recursivo que conta de 0 até 10; void contar_recursivamente(int n){ // vamos exibir o número atual cout << n << " "; // devemos prosseguir com a recursividade? if(n < 10){ // incrementa o valor de n n++; contar_recursivamente(n); // e faz uma nova chamada recursiva } } // função principal do programa int main(int argc, char *argv[]){ // efetua uma chamada ao método recursivo fornecendo o primeiro valor contar_recursivamente(0); cout << "\n\n"; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de C++ |
Veja mais Dicas e truques de C++ |
Dicas e truques de outras linguagens |
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 |