Java ::: Desafios e Lista de Exercícios Resolvidos ::: Métodos, Procedimentos e Funções |
Métodos - Exercícios Resolvidos de Java - Ex. 3 - Um método estático que recebe um número inteiro e retorna true se ele for par e false em caso contrárioQuantidade de visualizações: 3529 vezes |
|
Pergunta/Tarefa: Escreva um método Java que recebe um número inteiro e retorna true se o número for par e false em caso contrário. Este método deverá ter a seguinte assinatura:
public static boolean isPar(int n){
// sua implementação aqui
}
Sua saída deverá ser parecida com: ![]() Resposta/Solução: Veja a resolução comentada deste exercício usando Java console: ----------------------------------------------------------------------
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) {
Scanner entrada = new Scanner(System.in);
// vamos solicitar que o usuário informe um número inteiro
System.out.print("Informe um número inteiro: ");
int numero = Integer.parseInt(entrada.nextLine());
// vamos verificar se o número informado e par
if(isPar(numero)){
System.out.println("O número informado é par");
}
else{
System.out.println("O número informado é ímpar");
}
System.out.println("\n");
}
// um método estático que recebe um número inteiro e retorna true se ele par
// e false em caso contrário
public static boolean isPar(int n){
// o número é par?
if(n % 2 == 0){
return true;
}
else{
return false; // é ímpar
}
}
}
|
C# ::: Windows Forms ::: DataGridView |
Como retornar a quantidade de linhas em um DataGridView do C# Windows FormsQuantidade de visualizações: 15041 vezes |
A quantidade de linhas em um DataGridView do C# Windows Forms pode ser obtida por meio da propriedade RowCount. Veja: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
private void button2_Click(object sender, EventArgs e){
// vamos adicionar três colunas no DataGridView
dataGridView1.Columns.Add("cidade", "Cidade");
dataGridView1.Columns.Add("estado", "Estado");
dataGridView1.Columns.Add("populacao", "População");
// vamos adicionar três linhas
dataGridView1.Rows.Add("Goiânia", "GO", "3.453,39");
dataGridView1.Rows.Add("Cuiabá", "MT", "1.876,12");
dataGridView1.Rows.Add("Curitiba", "PR", "5.346,98");
// não vamos permitir que o usuário adicione novas
// linhas (o que daria uma linha a mais na nossa
// contagem
dataGridView1.AllowUserToAddRows = false;
// vamos obter a quantidade de linhas no DataGridView
int quant_linhas = dataGridView1.RowCount;
// exibe o resultado
MessageBox.Show("O DataGridView contém " +
quant_linhas + " linhas");
}
É possível também usar a propriedade RowCount para definir a quantidade de linhas em um DataGridView: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- dataGridView1.RowCount = 6; Há algumas considerações importantes sobre a propriedade RowCount: 1) Se seu valor for definido como 0, todas as linhas do DataGridView serão removidas; 2) Se o novo valor for menor que o valor atual, as linhas excedentes serão removidas no final da coleção Rows; 3) Se o novo valor for maior que o valor atual, as novas linhas serão adicionadas no final da coleção Rows; 4) Se tentarmos alterar o valor desta propriedade após a definição da propriedade DataSource, uma exceção InvalidOperationException será lançada. |
C# ::: Dicas & Truques ::: Arquivos e Diretórios |
Como excluir um diretório em C# usando a função Delete() da classe DirectoryInfoQuantidade de visualizações: 1 vezes |
|
O método Delete() da classe DirectoryInfo do C# é muito útil quando precisamos excluir um diretório. Esta função é do tipo void, ou seja, não retorna nada. Veja um código completo demonstrando o seu uso: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
using System;
using System.IO;
namespace Estudos {
class Principal {
static void Main(string[] args) {
// vamos criar uma nova instância da classe DirectoryInfo
DirectoryInfo dir = new DirectoryInfo(@"C:\estudos_csharp\imagens");
// vamos tentar excluir o diretório
try {
dir.Delete();
Console.WriteLine("Diretório excluído com sucesso.");
}
catch (Exception e) {
Console.WriteLine("Não foi possível excluir o diretório: {0}", e.ToString());
}
Console.WriteLine("\nPressione uma tecla para sair...");
Console.ReadKey();
}
}
}
Ao executar este código C# nós teremos o seguinte resultado: Diretório excluído com sucesso. Se o diretório a ser excluido não estiver vazio, a chamada ao método System.IO.DirectoryInfo.Delete() poderá gerar o seguinte erro: Não foi possível excluir o diretório: System.IO.IOException: A pasta não está vazia. : 'C:\estudos_csharp\imagens' at System.IO.FileSystem.RemoveDirectoryInternal(String fullPath, Boolean topLevel, Boolean allowDirectoryNotEmpty) at System.IO.FileSystem.RemoveDirectory(String fullPath, Boolean recursive) at System.IO.DirectoryInfo.Delete() at Estudos.Principal.Main(String[] args) in C:\estudos_c#\Estudos\Principal.cs:line 12 |
C++ ::: Dicas & Truques ::: Ponteiros, Referências e Memória |
Como alocar memória dinâmica usando o operador new do C++Quantidade de visualizações: 12486 vezes |
|
Em algumas situações precisamos alocar memória dinamicamente. Em C++ isso é feito com o auxílio do operador new. Este operador permite alocar uma determinada quantidade de bytes, alinhados de forma a representar o objeto para o qual queremos reservar memória. Veja um exemplo de código no qual alocamos memória dinâmica para uma variável do tipo int: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
#include <iostream>
using namespace std;
int main(int argc, char *argv[]){
// aloca memória para um objeto do tipo int
int *ponteiro = new int;
// vamos definir o valor para o objeto recém-alocado
*ponteiro = 20;
// vamos exibir seu valor
cout << *ponteiro << endl;
// vamos liberar a memória
delete ponteiro;
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Note que aqui a memória foi alocada e guardada em um ponteiro. Veja também o uso do operador delete para liberar a memória alocada. Isso evita os vazamentos de memória tão frequentes em aplicações que lidam com a memória dinâmica. É claro que este não é o exemplo mais prático. Qual a vantagem de se alocar memória para um int? Declarar uma variável teria sido mais eficiente. A alocação de memória dinâmica é mais útil quando estamos lidando com objetos mais complexos que os tipos básicos. Alguns exemplos envolvem a criação de objetos de classes, matrizes, estruturas de dados, etc. Veja um exemplo no qual temos uma declaração de uma classe chamada Cliente e em seguida alocamos memória para uma instância desta classe: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
#include <iostream>
#include <string>
using namespace std;
// declaração da classe Cliente
class Cliente{
public:
Cliente();
string obterNome();
void definirNome(string);
private:
string nome;
};
// implementação dos métodos da classe
Cliente::Cliente(){} // construtor vazio
// obtém o nome do cliente
string Cliente::obterNome(){
return this->nome;
}
// define o nome do cliente
void Cliente::definirNome(string nome){
this->nome = nome;
}
int main(int argc, char *argv[]){
// aloca memória para um objeto da classe Cliente
Cliente *c = new Cliente();
// vamos definir o nome do cliente
c->definirNome("Osmar J. Silva");
// vamos exibir o nome do cliente
cout << c->obterNome() << endl;
// vamos liberar a memória usada
delete c;
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Ao executar este código C++ nós teremos o seguinte resultado: Nome do cliente: Osmar J. Silva |
Nossas 20 dicas & truques de programação mais populares |
Você também poderá gostar das dicas e truques de programação abaixo |
|
C - Como escrever uma função C personalizada que copia os caracteres de uma string para outra string |
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 |






