Você está aqui: Dart ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Escreva um método Dart que recebe um vetor de inteiros e informe se os elementos do array estão classificados em ordem crescente - Lista de Exercícios Resolvidos de DartQuantidade de visualizações: 894 vezes |
Pergunta/Tarefa: Escreva um método Dart que recebe um vetor de inteiros de qualquer tamanho e informe se os elementos do array estão classificados em ordem crescente, ou seja, ordenados do menor para o maior. O método deverá retornar um valor true ou false. Considerando o vetor: // vamos criar um vetor (List) com 5 elementos do tipo int List<int> valores = [1, 2, 3, 4, 5]; O vetor está classificado em ordem crescente Veja a resolução completa para o exercício em Dart, comentada linha a linha: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- void main(){ // vamos criar um vetor (List) com 5 elementos do tipo int List<int> valores = [1, 2, 3, 4, 5]; // vamos verificar se os elementos do vetor estão classificados em // ordem crescente if(isOrdemCrescente(valores)){ print("O vetor está classificado em ordem crescente"); } else{ print("O vetor não está classificado em ordem crescente"); } } // função que recebe um vetor e informe se seus elementos estão // ordenados em ordem crescente bool isOrdemCrescente(List vetor){ // o vetor possui apenas um elemento ou está vazio? if(vetor.length == 1 || vetor.length == 0){ return true; } // vamos verificar se os valores do vetor estão ordenados // em ordem crescente for(int i = 1; i < vetor.length; i++){ // este elemento é menor que o anterior? if(vetor[i] < vetor[i - 1]){ return false; } } // se chegou até aqui então o teste foi verdadeiro return true; } |
Link para compartilhar na Internet ou com seus amigos: |
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: 1490 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: 1147 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 } } } |
Dart ::: Dicas de Estudo e Anotações ::: Estruturas de Controle |
Como usar o laço while da linguagem DartQuantidade de visualizações: 2311 vezes |
O laço while (enquanto), ou loop while, é usado quando queremos repetir uma ou mais instruções ENQUANTO uma condição estiver sendo satisfeita. A condição para a execução desse laço é o retorno de uma condição true ou false. Veja um exemplo no qual usamos o laço while para contar de 0 até 10: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- void main() { int cont = 1; while (cont < 10) { print(cont); cont++; // aumenta cont em 1 } } Este código, quando executado, gera o seguinte resultado: 1 2 3 4 5 6 7 8 9 É importante observar que um laço while pode nunca ser executado. Para isso basta que o teste condicional na entrada do laço retorne um resultado falso. Veja agora como usar um laço while para encontrar os 10 primeiros múltiplos de 5 e 7: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- void main() { int cont = 0; int numero = 1; // queremos encontrar 10 múltiplos de 5 e 7 while (cont < 10) { if ((numero % 5 == 0) && (numero % 7 == 0)) { print(numero); cont++; } // incrementa o número numero++; } } Quando executamos este código nós obtemos o seguinte resultado: 35 70 105 140 175 210 245 280 315 350 |
Vamos testar seus conhecimentos em Python |
Qual das formas abaixo é usada para criar uma LIST em Python? A) valores = {5, 1, 9, 4} B) valores = [5, 1, 9, 4] C) valores = (5, 1, 9, 4) D) valores = [5.. 1.. 9.. 4] E) valores = list[5, 1, 9, 4] Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Dimensionamento de pilares intermediários O pilar P6 é classificado como pilar intermediário porque as vigas são contínuas sobre o pilar, não originando flexão importante que deva ser considerada no cálculo do pilar. Considerando que a largura do pilar seja de 14cm, o coeficiente de majoração da carga yn é 1,25. Dados: Nk = 600kN lex = ley = 280cm Qual é a força normal de cálculo? A) 750kN. B) 1.050kN. C) 700kN. D) 690kN. E) 840kN. 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?valor = 5 for i in range(0, 4): valor++ print("O valor final é: {0} ".format(valor)) A) O valor final é: 8 B) O valor final é: 9 C) Erro de SyntaxError: invalid syntax na linha 3 D) O valor final é: 7 E) Erro de SyntaxError: invalid syntax na linha 2 Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais |
Sistema domiciliar de abastecimento de água Há diversas opções de materiais empregados nas instalações de água fria. Cada tipo de material se enquadra às condições em que será utilizado. Nas instalações residenciais do Brasil, o material mais empregado é o PVC, por apresentar diversas vantagens. Quais das opções a seguir apresentam as principais características desse tipo de material? I. Leve (1,4g/cm3), o que facilita seu manuseio e aplicação. II. Por ser tóxico, apresenta risco à saúde humana. III. Sólido e resistente a choques. IV. Durável: sua vida útil em construções é superior a 50 anos. As afirmações corretas são: A) I e II, apenas. B) I, III e IV, apenas. C) I, II e III, apenas. D) II e III, apenas. E) I, II, III e IV. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais |
Sistema domiciliar de abastecimento de água Uma instalação hidrossanitária será construída numa residência. Ela apresenta dois banheiros, uma cozinha e uma área de serviços. Cada banheiro tem uma bacia com caixa de descarga, um chuveiro elétrico e um lavatório. A cozinha apresenta duas pias, e a área de serviços tem um tanque e duas torneiras de uso geral. Com base nesses dados, qual é vazão estimada de água fria em função dos pesos atribuídos às peças de utilização, em litros por segundo? A) 0,57. B) 0,65. C) 0,68. D) 0,78. E) 0,91 Verificar Resposta Estudar Cards Todas as Questões |
Veja mais Dicas e truques de Dart |
Dicas e truques de outras linguagens |
Java - Como converter Coordenadas Cartesianas para Coordenadas Polares usando Java - Java para Engenharia |
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 |