Você está aqui: Dart ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Escreva um programa Dart para encontrar o segundo maior valor em um vetor de inteiros - Lista de Exercícios Resolvidos de DartQuantidade de visualizações: 798 vezes |
Pergunta/Tarefa: Dado o seguinte array de int: // vamos declarar e construir um vetor (List) com 5 inteiros List<int> valores = [4, 8, 7, 1, 2]; Sua saída deverá ser parecida com: O maior valor é: 8 O segundo maior valor é: 7 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) ---------------------------------------------------------------------- void main(){ // vamos declarar e construir um vetor (List) com 5 inteiros List<int> valores = [4, 8, 7, 1, 2]; // vamos assumir que tanto o maior quanto o segundo // maior são o primeiro elemento do vetor int maior = valores[0]; int segundoMaior = valores[0]; // percorremos todos os elementos do vetor for (int i = 0; i < valores.length; i++){ // o elemento atual é maior que o maior? if(valores[i] > maior){ // o segundo maior recebe quem era o maior segundoMaior = maior; // e o maior recebe o elemento atual maior = valores[i]; } // o elemento atual é menor que o maior e maior que o // segundo maior? if(valores[i] < maior && valores[i] > segundoMaior){ // segundo maior recebe o elemento atual segundoMaior = valores[i]; } } // mostra o resultado print("O maior valor é: $maior"); print("O segundo maior valor é: $segundoMaior"); } |
Link para compartilhar na Internet ou com seus amigos: |
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: 919 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."); } } |
Dart ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas |
Como calcular o ponto de interseção de duas retas em Dart - Geometria Analítica e Álgebra Linear em DartQuantidade de visualizações: 1549 vezes |
Duas retas podem encontrar-se em 0, 1 ou 2 pontos. No primeiro caso, elas são chamadas paralelas; no segundo, elas são chamadas concorrentes e o ponto de encontro entre elas é chamado ponto de interseção; no terceiro caso, se duas retas possuem dois pontos em comum, então elas obrigatoriamente apresentam todos os pontos em comum e são chamadas coincidentes. Nesta dica mostrarei como podemos encontrar o ponto de interseção (ou intersecção) de duas retas usando Dart. Mas, antes de vermos o código, dê uma olhada na seguinte imagem: Note que temos os pontos A e B correspondentes ao segmento de reta AB e os pontos C e D correspondentes ao segmento de reta CD. Nossa tarefa é encontrar o ponto exato de intersecção entre esses dois segmentos de reta. Veja o código Dart completo que nos auxilia na resolução deste problema: ---------------------------------------------------------------------- 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"; // Classe usada para representar um ponto no // plano 2d (Plano Cartesiano) class Ponto{ double x, y; // construtor da classe Ponto(double x, double y){ this.x = x; this.y = y; } } void main(){ // vamos construir os quatro pontos Ponto A = new Ponto(5, 7); Ponto B = new Ponto(9, -4); Ponto C = new Ponto(-8, 2); Ponto D = new Ponto(11, 6); // vamos obter a representação do segmento AB double a1 = B.y - A.y; double b1 = A.x - B.x; double c1 = (a1 * A.x) + (b1 * A.y); // vamos obter a representação do segmento CD double a2 = D.y - C.y; double b2 = C.x - D.x; double c2 = (a2 * C.x) + (b2 * C.y); // obtém o determinante double determinante = (a1 * b2) - (a2 * b1); // as duas retas são paralelas? if(determinante == 0){ print("\nAs duas retas são paralelas.\n"); } else{ // e construímos o ponto de intersecção double x = ((b2 * c1) - (b1 * c2)) / determinante; double y = ((a1 * c2) - (a2 * c1)) / determinante; Ponto inters = new Ponto(x, y); print("O ponto de interseção é: " + "x = ${x.toStringAsFixed(2)}; y = ${y.toStringAsFixed(2)}"); } } Ao executar este código Dart nós teremos o seguinte resultado: O ponto de interseção é: x = 5,76; y = 4,90 De fato, se você olhar a imagem novamente e desenhar este ponto, verá que ele se situa exatamente na intersecção das retas indicadas. |
Dart ::: Desafios e Lista de Exercícios Resolvidos ::: Laços |
Exercício Resolvido de Dart - Escreva um programa Dart que usa o laço for para desenhar um padrão de diamante de estrelasQuantidade de visualizações: 1199 vezes |
Pergunta/Tarefa: Neste exercício para a prática da linguagem Dart você deverá usar o laço for para desenhar o famoso padrão de diamante de estrelas. Você pode também usar o laço while, se assim você o desejar. O programa deverá pedir que o usuário informe a quantidade de linhas que marcará a metade do diamante. Seu programa deve apresentar a seguinte saída: Informe a quantidade de linhas: 5 * *** ***** ******* ********* ******* ***** *** * Veja a resolução comentada deste exercício em 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 linhas, estrelas, espacos; // vamos pedir a quantidade de linhas stdout.write("Informe a quantidade de linhas: "); // vamos ler a entrada do usuário linhas = int.parse(stdin.readLineSync()); estrelas = 1; // começamos com uma estrela (no topo do diamante) // se linhas for igual a 5 nós começamos com 4 espaços espacos = linhas - 1; // repete duas vezes a quantidade de linhas informadas for(int i = 1; i < linhas * 2; i++){ // vamos imprimir os espaços for(int j = 1; j <= espacos; j++){ stdout.write(" "); } // agora vamos imprimir estrelas for(int j = 1; j < estrelas * 2; j++){ stdout.write("*"); } // passamos para a próxima linha stdout.write("\n"); if(i < linhas){ // é a parte superior do diamante espacos--; // diminui os espaços estrelas++; // e aumenta as estrelas } else{ // é a parte inferior do diamente espacos++; // aumenta os espaços estrelas--; // e diminui as estrelas } } } |
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 |