![]() |
|
||||
![]() Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica. |
|||||
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: 1235 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: // 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"); } } |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico |
Exercícios Resolvidos de Java - Um programa Java que solicita ao usuário que informe sua idade em anos, meses e dias e mostre sua idade em diasQuantidade de visualizações: 14143 vezes |
Pergunta/Tarefa: Escreva um programa Java que solicite ao usuário que informe sua idade em anos, meses e dias, ou seja, sua idade atual em anos e a quantidade de meses e dias decorridos desde seu aniversário. Seu programa deverá exibir uma saída parecida com: Informe sua idade em anos, meses e dias Anos: 25 Meses: 2 Dias: 12 Idade expressa em dias: 9197 Resposta/Solução: Veja a resolução comentada deste exercício usando Java console (lendo a entrada do usuário por meio do uso da classe Scanner): public static void main(String[] args){ // não se esqueça de adicionar um import para a classe Scanner // import java.util.Scanner; // vamos criar um objeto da classe Scanner Scanner entrada = new Scanner(System.in); // variáveis que vão guardar a idade em anos, meses e dias; int anos, meses, dias; int idade_dias; // guardará a idade em dias System.out.println("Informe sua idade em anos, meses e dias"); // obtém os anos System.out.print("Anos: "); anos = Integer.parseInt(entrada.nextLine()); // obtém os meses System.out.print("Meses: "); meses = Integer.parseInt(entrada.nextLine()); // obtém os dias System.out.print("Dias: "); dias = Integer.parseInt(entrada.nextLine()); // vamos calcular a idade em dias idade_dias = (anos * 365) + (meses * 30) + dias; // vamos exibir o resultado System.out.println("Idade expressa em dias: " + idade_dias); } |
Python ::: Dicas & Truques ::: Lista (List) |
Como pesquisar um item em uma list e removê-lo usando a função remove() do PythonQuantidade de visualizações: 8814 vezes |
Nesta dica mostrarei como é possível usar a função remove() do tipo de dados list para pesquisar um item em uma lista e removê-lo. Observe que, se o item a ser removido não for encontrado, um erro do tipo ValueError será exibido. Veja o código completo para o exemplo: # função principal do programa def main(): # cria uma lista de inteiros valores = [2, 5, 12, 2, 3, 32, 18] # exibe a lista print(valores) try: valor = int(input("Informe o valor a ser removido: ")) valores.remove(valor) except ValueError: print("O valor pesquisado nao foi encontrado") else: print("O valor foi removido com sucesso") # exibe a lista print(valores) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: [2, 5, 12, 2, 3, 32, 18] Informe o valor a ser removido: 2 O valor foi removido com sucesso [5, 12, 2, 3, 32, 18] Observe que a função remove() da list remove apenas o primeiro item encontrado, ou seja, se a lista possuir mais de um valor igual, apenas o primeiro será removido. |
C++ ::: Win32 API (Windows API) ::: Strings e Caracteres |
Como converter caracteres individuais para letras maiúsculas usando a função CharUpper() da API do Windows a partir de seus códigos C++Quantidade de visualizações: 9701 vezes |
Pode usar a função CharUpper() da API do Windows para converter um caractere para seu correspondente em letra maiúscula. Veja o protótipo da função:LPTSTR CharUpper( LPTSTR lpsz ); Veja um exemplo no qual usamos esta função para converter uma letra minúscula em maiúscula: #include <cstdlib> #include <iostream> #include <windows.h> using namespace std; int main(int argc, char *argv[]){ CHAR letra = 'a'; // vamos converter para letra maiúscula CharUpper(&letra); // vamos exibir o resultado cout << letra << endl; system("PAUSE"); return EXIT_SUCCESS; } Note que aqui nós fornecemos um ponteiro para o caractere que queremos transformar. Isso resulta em uma conversão sendo efetuada diretamente no caractere para o qual o ponteiro está apontando no momento. Podemos também obter o resultado da conversão em um outro ponteiro e usá-lo posteriormente. Veja: #include <cstdlib> #include <iostream> #include <windows.h> using namespace std; int main(int argc, char *argv[]){ CHAR letra = 'a'; // vamos converter para letra maiúscula CHAR *resultado = CharUpper(&letra); // vamos exibir o resultado cout << *resultado << endl; system("PAUSE"); return EXIT_SUCCESS; } |
Java ::: Java Swing - Gerenciadores de Layout ::: GridBagLayout |
Como posicionar os componentes nas linhas e colunas de um GridBagLayout do Java Swing usando as propriedades gridx e gridyQuantidade de visualizações: 12359 vezes |
A classe GridBagConstraints, usada para definir como os componentes serão distribuidos em um GridBagLayout, possui duas variáveis que permitem definir a linha e coluna nas quais o componente será colocado. Veja-as abaixo: gridx - Especifica a coluna na qual o componente será colocado. A primeira coluna possui o valor 0. Esta variável pode receber também o valor RELATIVE (valor padrão). Neste caso, o componente será colocado imediatamente após o último componente inserido (na horizontal). gridy - Especifica a linha na qual o componente será colocado. A primeira linha possui o valor 0. Esta variável pode receber também o valor RELATIVE (valor padrão). Neste caso, o componente será colocado imediatamente abaixo do último componente inserido (na vertical). Veja um trecho de código que mostra como posicionar seis botões nas linhas e colunas de um GridBagLayout: import javax.swing.*; import java.awt.*; public class Estudos extends JFrame{ public Estudos(){ super("Como usar a classe GridBagLayout"); // define o layout setLayout(new GridBagLayout()); // cria o GridBagConstraints GridBagConstraints gbc = new GridBagConstraints(); // adiciona componentes à janela gbc.gridy = 0; // linha gbc.gridx = 0; // coluna add(new JButton("Botão 1"), gbc); gbc.gridy = 0; // linha gbc.gridx = 1; // coluna add(new JButton("Botão 2"), gbc); gbc.gridy = 0; // linha gbc.gridx = 2; // coluna add(new JButton("Botão 3"), gbc); gbc.gridy = 1; // linha gbc.gridx = 0; // coluna add(new JButton("Botão 4"), gbc); gbc.gridy = 1; // linha gbc.gridx = 1; // coluna add(new JButton("Botão 5"), gbc); gbc.gridy = 1; // linha gbc.gridx = 2; // coluna add(new JButton("Botão 6"), gbc); setSize(350, 150); setVisible(true); } public static void main(String args[]){ Estudos app = new Estudos(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } |
Android Java ::: android.widget ::: Button |
Como detectar um clique em um botão do Android usando o evento onClick no XML de layoutQuantidade de visualizações: 2330 vezes |
Nesta dica mostrarei como podemos detectar um clique em um botão usando o evento onClick diretamente no arquivo XML de layout. No entanto, para usar este artifício, algumas regras devem ser seguidas: a) O método chamado pelo clique do botão deverá ser public e retornar void; b) O único parâmetro do método deverá conter apenas um objeto da classe View, representando a view na qual o evento onclick ocorreu. Veja um exemplo completo no qual detectamos o clique no botão e exibimos uma mensagem AlertDialog contendo apenas um botão OK. Comece analisando o XML de layout (o nome do botão foi definido no arquivo strings.xml): <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=" http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> tools:context=".MainActivity"> <Button xmlns:android=" http://schemas.android.com/apk/res/android" android:id="@+id/button_send" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/btn_enviar" android:onClick="enviarMensagem" /> </LinearLayout> Veja agora o código Java no MainActivity.java: package com.example.estudosandroid; import androidx.appcompat.app.AppCompatActivity; import android.content.DialogInterface; import android.os.Bundle; import android.view.View; import android.app.AlertDialog; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } // método público que será chamado ao clicarmos no botão public void enviarMensagem(View view) { AlertDialog dialogo = new AlertDialog.Builder(MainActivity.this).create(); dialogo.setTitle("Aviso"); dialogo.setMessage("Esta é uma mensagem de aviso"); dialogo.setButton(AlertDialog.BUTTON_NEUTRAL, "OK", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which){ dialog.dismiss(); // fecha o AlertDialog } } ); dialogo.show(); } } |
Delphi ::: Data Controls (Controles de Dados) ::: TDBGrid |
Como usar objetos da classe TColumn para representar as colunas individuais de um controle TDBGrid do DelphiQuantidade de visualizações: 10045 vezes |
Objetos da classe TColumn representam as colunas individuais em um data grid (TDBGrid). Cada controle DBGrid usa um objeto da classe TDBGridColumns para manter uma coleção de objetos TColumn, e, cada objeto TColumn representa as características visuais e ligação de dados de uma determinada coluna na grid. Um objeto TDBGridColumns é representado no controle TDBGrid pela propriedade Columns. Veja a posição da classe TColumn na hierarquia de classes do Delphi: System.TObject Classes.TPersistent Classes.TCollectionItem DBGrids.TColumn Veja um trecho de código no qual obtemos um objeto da classe TColumn representando a primeira coluna de um DBGrid e em seguida exibimos seu título: procedure TForm3.Button3Click(Sender: TObject); var coluna: TColumn; begin // vamos obter a primeira coluna do DBGrid coluna := DBGrid1.Columns[0]; // vamos mostrar o título da coluna obtida ShowMessage('O título da coluna é: ' + coluna.Title.Caption); end; Ao executar este código teremos uma mensagem parecida com: "O título da coluna é: Autor". Esta dica foi escrita e testada no Delphi 2009. |
C ::: C para Engenharia ::: Física - Mecânica |
Como calcular a Energia Potencial Gravitacional de um corpo dado a sua massa e altura em CQuantidade de visualizações: 2485 vezes |
A Energia Potencial Gravitacional ou Energia Gravitacional é a energia potencial que um objeto massivo tem em relação a outro objeto massivo devido à gravidade. É a energia potencial associada ao campo gravitacional, que é parcialmente convertida em energia cinética quando os objetos caem uns contra os outros. A energia potencial gravitacional aumenta quando dois objetos são separados. A fórmula para obtenção da Energia Potencial Gravitacional de um corpo em relação à sua massa e distância do chão, ou seja, da superfície terrestre, é: \[ E_\text{pg} = \text{m} \cdot \text{g} \cdot \text{h} \] Onde: Epg: energia potencial gravitacional (em joule, J). m: massa do corpo (em kg). g: aceleração da gravidade (m/s2). h: altura do objeto em relação ao chão (em metros). Como podemos ver, a Energia Potencial Gravitacional está diretamente relacionada à distância do corpo em relação à superfície terrestre. Dessa forma, quanto mais distante da terra o objeto estiver, maior a sua energia gravitacional. Isso nós diz também que, um objeto de altura zero possui Energia Potencial Gravitacional nula. Vamos ver um exemplo agora? Observe o seguinte enunciado: 1) Uma pessoa levanta um tijolo com peso de 2 quilogramas à distância de 1,5 metros do chão. Qual é a Energia Potencial Gravitacional deste corpo? Como o exercício nos dá a massa do objeto em kg e a distância dele em relação ao chão já está em metros, tudo que temos a fazer é jogar na fórmula. Veja o código C completo para o cálculo: #include <stdio.h> #include <stdlib.h> // função principal do programa int main(int argc, char *argv[]){ // gravidade terrestre em m/s2 float gravidade = 9.80665; // massa do corpo float massa = 2; // em kg // altura do corpo em relação ao chão float altura = 1.5; // em metros // vamos calcular a energia potencial gravitacional float epg = massa * gravidade * altura; // mostramos o resultado printf("A Energia Potencial Gravitacional é: %fJ", epg); printf("\n\n"); system("PAUSE"); return 0; } Ao executar este código C nós teremos o seguinte resultado: A Energia Potencial Gravitacional é: 29.419950J |
VB.NET ::: VB.NET para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como somar os elementos da diagonal principal de uma matriz em VB.NETQuantidade de visualizações: 319 vezes |
A Matriz quadrada é um tipo especial de matriz que possui o mesmo número de linhas e o mesmo número de colunas, ou seja, dada uma matriz Anxm, ela será uma matriz quadrada se, e somente se, n = m, onde n é o número de linhas e m é o número de colunas. Em geral as matrizes quadradas são chamadas de Matrizes de Ordem n, onde n é o número de linhas e colunas. Dessa forma, uma matriz de ordem 4 é uma matriz que possui 4 linhas e quatro colunas. Toda matriz quadrada possui duas diagonais, e elas são muito exploradas tanto na matemática quanto na construção de algorítmos. Essas duas diagonais são chamadas de Diagonal Principal e Diagonal Secundária. A diagonal principal de uma matriz quadrada une o seu canto superior esquerdo ao canto inferior direito. Veja: ![]() Nesta dica veremos como calcular a soma dos valores dos elementos da diagonal principal de uma matriz usando VB.NET. Para isso, só precisamos manter em mente que a diagonal principal de uma matriz A é a coleção das entradas Aij em que i é igual a j. Assim, tudo que temos a fazer é converter essa regra para código VB.NET. Veja um trecho de código VB.NET completo no qual pedimos para o usuário informar os elementos da matriz e em seguida mostramos a soma dos elementos da diagonal superior: Imports System Module Program ' função principal do programa VB.NET Sub Main(args As String()) ' vamos declarar e construir uma matriz de três linhas ' e três colunas Dim matriz(2, 2) As Integer ' guarda a soma dos elementos na diagonal principal Dim soma_diagonal As Integer = 0 For i As Integer = 0 To matriz.GetUpperBound(0) For j As Integer = 0 To matriz.GetUpperBound(1) Console.Write("Informe o valor para a linha " & i & " e coluna " _ & j & ": ") ' lê o número e guarda na linha e coluna especificadas matriz(i, j) = Integer.Parse(Console.ReadLine()) Next Next ' vamos mostrar a matriz da forma que ela foi informada Console.WriteLine(vbCrLf & "Valores na matriz: " & vbCrLf) For i As Integer = 0 To matriz.GetUpperBound(0) For j As Integer = 0 To matriz.GetUpperBound(1) Console.Write(matriz(i, j).ToString().PadLeft(5) & " ") Next ' passa para a próxima linha Console.WriteLine() Next ' vamos calcular a soma dos elementos da diagonal ' principal For i As Integer = 0 To matriz.GetUpperBound(0) For j As Integer = 0 To matriz.GetUpperBound(1) If i = j Then soma_diagonal = soma_diagonal + matriz(i, j) End If Next Next ' finalmente mostramos a soma da diagonal principal Console.WriteLine(vbCrLf & "A soma dos elementos da diagonal principal é: " _ & soma_diagonal) Console.WriteLine(vbCrLf & vbCrLf & "Pressione qualquer tecla para sair...") ' pausa o programa Console.ReadKey() End Sub End Module Ao executar este código VB.NET nós teremos o seguinte resultado: Informe o valor para a linha 0 e coluna 0: 3 Informe o valor para a linha 0 e coluna 1: 7 Informe o valor para a linha 0 e coluna 2: 9 Informe o valor para a linha 1 e coluna 0: 2 Informe o valor para a linha 1 e coluna 1: 4 Informe o valor para a linha 1 e coluna 2: 1 Informe o valor para a linha 2 e coluna 0: 5 Informe o valor para a linha 2 e coluna 1: 6 Informe o valor para a linha 2 e coluna 2: 8 3 7 9 2 4 1 5 6 8 A soma dos elementos da diagonal principal é: 15 |
C# ::: Dicas & Truques ::: Strings e Caracteres |
Como transformar todo o conteúdo de uma string para letras maiúsculas em C# usando a função ToUpper() da classe StringQuantidade de visualizações: 9974 vezes |
Em algumas situações nós precisamos converter todas as letras de uma palavra, frase ou texto para letras maiúsculas. Isso pode ser feito por meio do método ToUpper() da classe String da linguagem C#. Veja o exemplo a seguir: using System; namespace Estudos { class Program { static void Main(string[] args) { string texto = "Gosto de programar em C#"; Console.WriteLine("Sem converter para letras maiúsculas: " + texto); // converte tudo para letras maiúsculas texto = texto.ToUpper(); Console.WriteLine("Após a conversão para letras maiúsculas: " + texto); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código C# nós teremos o seguinte resultado: Sem converter para letras maiúsculas: Gosto de programar em C# Após a conversão para letras maiúsculas: GOSTO DE PROGRAMAR EM C# |
Nossas 20 dicas & truques de programação mais populares |
Você também poderá gostar das dicas e truques de programação abaixo |
Portugol - Como calcular o coeficiente angular de uma reta em Portugol dados dois pontos no plano cartesiano |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |