Você está aqui: Dart ::: Desafios e Lista de Exercícios Resolvidos ::: Laços |
Como testar se um número informado pelo usuário é binário usando Dart - Lista de Exercícios Resolvidos de DartQuantidade de visualizações: 617 vezes |
Pergunta/Tarefa: Escreva um programa Dart que solicita ao usuário um número inteiro e informa se o valor informado é um número binário, ou seja, composto apenas pelos dígitos 0 e 1. Sua saída deverá ser parecida com: Informe um número binário: 100110 O número informado é binário. Veja a resolução comentada deste exercício usando Dart: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- // Vamos importar a biblioteca dart:io import "dart:io"; void main(){ // variáveis que vamos usar na resolução do problema int numero, temp; // vamos solicitar um número binário stdout.write("Informe um número binário: "); // vamos ler a entrada do usuário numero = int.parse(stdin.readLineSync()); // agora usamos um laço while para quebrar o número em // seus dígitos individuais e verificar se cada um é diferente // de 1 e 0. Se for, o número não é binário while(numero > 0){ temp = numero % 10; if(temp != 0 && temp != 1){ stdout.write("O número informado não é binário."); break; } numero = numero ~/ 10; if(numero == 0){ stdout.write("O número informado é binário."); } } } |
Link para compartilhar na Internet ou com seus amigos: |
Dart ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
Exercícios Resolvidos de Dart - Ler os lados de um triângulo e informar se ele é isósceles, escaleno ou equiláteroQuantidade de visualizações: 1030 vezes |
Pergunta/Tarefa: Um triângulo é uma forma geométrica (polígono) composta de três lados, sendo que cada lado é menor que a soma dos outros dois lados. Assim, para que um triângulo seja válido, é preciso que seus lados A, B e C obedeçam à seguinte regra: A < (B + C), B < (A + C) e C < (A + B). Escreva um programa Dart que leia os três lados de um triângulo e verifique se tais valores realmente formam um triângulo. Se o teste for satisfatório, informe se o triângulo é isósceles (dois lados iguais e um diferente), escaleno (todos os lados diferentes) ou equilátero (todos os lados iguais). Sua saída deverá ser parecida com: Informe o primeiro lado do triângulo: 30 Informe o segundo lado do triângulo: 40 Informe o terceiro lado do triângulo: 60 O triângulo é escaleno Veja a resolução comentada deste exercício usando Dart: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- // Vamos importar a biblioteca dart:io import 'dart:io'; void main(){ // vamos ler o primeiro lado do triângulo stdout.write("Informe o primeiro lado do triângulo: "); int lado_a = int.parse(stdin.readLineSync()); // vamos ler o segundo lado do triângulo stdout.write("Informe o segundo lado do triângulo: "); int lado_b = int.parse(stdin.readLineSync()); // vamos ler o terceiro lado do triângulo stdout.write("Informe o terceiro lado do triângulo: "); int lado_c = int.parse(stdin.readLineSync()); // os lados informados formam um triângulo? if((lado_a < (lado_b + lado_c)) && (lado_b < (lado_a + lado_c)) && (lado_c < (lado_a + lado_b))){ // é um triângulo equilátero (todos os lados iguais)? if((lado_a == lado_b) && (lado_b == lado_c)){ stdout.write("\nO triângulo é equilátero\n"); } else{ // é isósceles (dois lados iguais e um diferente)? if((lado_a == lado_b) || (lado_a == lado_c) || (lado_c == lado_b)){ stdout.write("\nO triângulo é isósceles\n"); } else{ // é escaleno stdout.write("\nO triângulo é escaleno\n"); } } } else{ stdout.write("\nOs lados informados não formam um triângulo.\n"); } } |
Dart ::: Dicas & Truques ::: Aplicativos e Outros |
Como calcular a distância entre dois pontos na terra em DartQuantidade de visualizações: 1405 vezes |
Nesta dica mostrarei como calcular a distância em quilômetros entre dois pontos na terra dadas suas latitudes e longitudes. Neste exemplo eu coloquei o valor de 6378.137 para o raio da terra, mas você pode definir para o valor que achar mais adequado. O cálculo usado neste código se baseia na Fórmula de Haversine, que determina a distância do grande círculo entre dois pontos em uma esfera, dadas suas longitudes e latitudes. Veja o código Dart completo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- // Vamos importar a biblioteca dart:io import "dart:io"; // vamos importar a biblioteca dart:math import "dart:math"; void main(){ // vamos ler as latitudes e longitudes das duas // localizações stdout.write("Informe a primeira latitude: "); double lat1 = double.parse(stdin.readLineSync()); stdout.write("Informe a primeira longitude: "); double lon1 = double.parse(stdin.readLineSync()); stdout.write("Informe a segunda latitude: "); double lat2 = double.parse(stdin.readLineSync()); stdout.write("Informe a segunda longitude: "); double lon2 = double.parse(stdin.readLineSync()); // vamos calcular a distância entre os dois pontos em Kms double distancia = calcularDistancia(lat1, lat2, lon1, lon2); // mostramos o resultado print("Distância entre os dois pontos: ${distancia} kms"); } // função que recebe dois pontos na terra e retorna a distância // entre eles em quilômetros double calcularDistancia(double lat1, double lat2, double lon1, double lon2){ double raio_terra = 6378.137; // raio da terra em quilômetros // o primeiro passo é converter as latitudes e longitudes // para radianos lon1 = grausParaRadianos(lon1); lon2 = grausParaRadianos(lon2); lat1 = grausParaRadianos(lat1); lat2 = grausParaRadianos(lat2); // agora aplicamos a Fórmula de Haversine double dlon = lon2 - lon1; double dlat = lat2 - lat1; double a = pow(sin(dlat / 2), 2) + cos(lat1) * cos(lat2) * pow(sin(dlon / 2),2); double c = 2 * asin(sqrt(a)); // e retornamos a distância return(c * raio_terra); } // função que permite converter graus em radianos double grausParaRadianos(double graus){ return graus * (pi / 180); } Ao executar este código Dart nós teremos o seguinte resultado: Informe a primeira latitude: -16.674551 Informe a primeira longitude: -49.303598 Informe a segunda latitude: -15.579321 Informe a segunda longitude: -56.10009 A distância entre os dois pontos é: 736.9183827638687kms Neste exemplo eu calculei a distância entre as cidades de Goiânia-GO e Cuibá-MT. A latitude é a distância ao Equador medida ao longo do meridiano de Greenwich. Esta distância mede-se em graus, podendo variar entre 0o e 90o para Norte(N) ou para Sul(S). A longitude é a distância ao meridiano de Greenwich medida ao longo do Equador. |
Dart ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
Exercício Resolvido de Dart - Como testar se um ano é bissexto em Dart - Um programa que lê um ano com quatro dígitos e informa se ele é bissexto ou nãoQuantidade de visualizações: 878 vezes |
Pergunta/Tarefa: Chama-se ano bissexto o ano ao qual é acrescentado um dia extra, ficando ele com 366 dias, um dia a mais do que os anos normais de 365 dias, ocorrendo a cada quatro anos (exceto anos múltiplos de 100 que não são múltiplos de 400). Isto é feito com o objetivo de manter o calendário anual ajustado com a translação da Terra e com os eventos sazonais relacionados às estações do ano. O último ano bissexto foi 2012 e o próximo será 2016. Um ano é bissexto se ele for divisível por 4 mas não por 100, ou se for divisível por 400. Escreva um programa Dart que pede ao usuário um ano com quatro dígitos e informa se ele é bissexto ou não. Sua saída deverá ser parecida com: Informe o ano: 2024 O ano informado é bissexto. Veja a resolução comentada deste exercício usando Dart: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- // Vamos importar a biblioteca dart:io import "dart:io"; void main(){ // vamos solicitar que o usuário informe um ano stdout.write("Informe o ano: "); int ano = int.parse(stdin.readLineSync()); // vamos verificar se o ano informado é bissexto if(((ano % 4 == 0) && (ano % 100 != 0)) || (ano % 400 == 0)){ print("O ano informado é bissexto."); } else{ print("O ano informado não é bissexto."); } } |
Vamos testar seus conhecimentos em |
Cisalhamento e detalhamento de vigas O arranjo das armaduras de uma viga de concreto armado deve atender tanto à função estrutural quanto às condições adequadas de execução, principalmente em relação ao lançamento e ao adensamento do concreto. Uma viga de concreto C20 está sujeita a um carregamento Vd de 500kN. Essa viga tem seção igual a 25 x 60cm e altura útil de 57cm. Determine o espaçamento máximo da armadura transversal dessa viga: A) 17cm. B) 21cm. C) 25cm. D) 27cm. E) 30cm. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica |
Viscosidade dos fluidos A velocidade é um fator determinante na viscosidade de um fluido. Muitos estudos apresentam o cálculo da viscosidade a partir da velocidade média de um fluido viscoso. Como é chamado o fluido com viscosidade variável com a velocidade em que a tensão de cisalhamento não é diretamente proporcional à taxa de deformação? A) Fluido compressível. B) Fluido não compressível. C) Fluido newtoniano. D) Fluido não newtoniano. E) Fluido relativo. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Hidrologia |
Cálculo da vazão de dimensionamento de uma galeria de águas pluviais FEMPERJ-2012-TCE-RJ: A vazão de dimensionamento de uma galeria de águas pluviais que drena uma área densamente urbanizada de 10 hectares, considerando-se uma chuva de projeto com intensidade de 60 mm/hora, duração igual ao tempo de concentração da bacia e coeficiente de escoamento superficial igual a 0,90, através do Método Racional, é: A) 150 m3/s B) 0,150 l/s C) 1,5 m3/s D) 150 l/s E) 15 m3/s Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Hidrologia |
As bacias hidrográficas do Brasil, em razão da sua extensão, abarcam ainda países vizinhos ao território brasileiro. São exemplos de bacias localizadas no Brasil e em partes dos países vizinhos: A) Bacia Amazônica e São Francisco. B) Bacia do Uruguai e Nordestina. C) Bacia do São Francisco e Platina. D) Bacia Amazônica e Platina. E) Bacia do Tocantins e Paraguaia. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Dimensionamento de pilares de canto A disposição dos pilares e a determinação das medidas de sua transversal estão entre as primeiras etapas em um dimensionamento de pilares de canto. Segundo a NBR 6118, um pilar não pode ter dimensões menores do que 19cm. Quando isso ocorre, deve ser adotado um coeficiente adicional (yn) para a majoração dos esforços solicitantes como medida de segurança, a ser determinado de acordo com a menor dimensão do pilar. Analise os pilares a seguir: Qual o valor do coeficiente adicional (yn) que deve ser adotado para os referidos pilares, respectivamente? A) yn1 = 1,05. yn2 = 1,25. yn3 = 1,50. yn4 = 1,35. B) yn1 = 1,05. yn2 = 1,00. yn3 = 1,00. yn4 = 1,25. C) yn1 = 1,05. yn2 = 1,00. yn3 = 1,15. yn4 = 1,75. D) yn1 = 2,50. yn2 = 1,85. yn3 = 1,25. yn4 = 1,75. E) yn1 = 2,50. yn2 = 1,00. yn3 = 1,65. yn4 = 2,25. Verificar Resposta Estudar Cards Todas as Questões |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Dart |
Veja mais Dicas e truques de Dart |
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 |