![]() |
|
|
Planilha de Dimensionamento de Tubulações
Hidráulicas Água Fria e Água Quente CompletaNossa planilha automática de dimensionamento de tubulações de água fria e quente é uma ferramenta desenvolvida para auxiliar engenheiros e projetistas no cálculo rápido e preciso das redes hidráulicas de edificaçoes. Por meio da inserçao de dados como vazao, diâmetro da tubulaçao, comprimento da rede, material do tubo e coeficientes hidráulicos, a planilha realiza automaticamente os cálculos necessários para verificar velocidade da água, perda de carga e dimensionamento adequado das tubulaçoes. |
||
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Programação Orientada a Objetos |
Exercícios Resolvidos de Java - Escreva uma classe Biblioteca que possui uma ArrayList de objetos da classe Livro. Forneça um menu para listar, cadastrar, pesquisar e excluir livrosQuantidade de visualizações: 894 vezes |
|
Pergunta/Tarefa: Escreva um programa Java contendo duas classes: Biblioteca e Livro. A classe Biblioteca deverá ter uma coleção de livros, ou seja, uma ArrayList de objetos da classe Livro. Além da coleção de livros a classe Biblioteca deverá conter um atributo nome, que será informado assim que a classe for instanciada. A classe Livro, por sua vez, deverá possuir os atributos id, titulo, autor e paginas. O atributo id deverá ser auto-incremento, isto é, 1 para o primeiro livro cadastrado, 2 para o segundo, e assim por diante. Além disso, a exclusão de livros deverá ser feita de acordo com o seu id ou título. Seu programa deverá exibir um menu de opções para as diversas operações da biblioteca. Uma boa opção em Java é usar a estrutura switch case para a criação do menu de opções. Atenção: todos os métodos de manipulação de livros deverão estar na classe Biblioteca, e não na classe principal do programa Java. Para finalizar, tanto a classe Biblioteca quanto a classe Livro deverão apresentar boas práticas de programação orientada a objetos: nomenclatura correta de classes, atributos e métodos, encapsulamento de dados e construtores. Sua saída deverá ser parecida com: ------------------------------------------------- :: Biblioteca Programação e Artes :: ------------------------------------------------- Bem-vindo(a) ao sistema. Escolha a opção desejada 1 - Novo Livro 2 - Listar Livros 3 - Pesquisar Livro 4 - Excluir Livro 5 - Sair Sua opção: 1 Título: JAVA PARA INICIANTES Autor: OSMAR J SILVA Quant Páginas: 480 O livro foi cadastrado com sucesso Veja a resolução comentada deste exercício em Java: Código para a classe Livro, que deve estar no arquivo Livro.java:
package estudos;
// definição da classe Livro
public class Livro {
private int id; // id do livro. Não pode repetir
private String titulo;
private String autor;
private int paginas;
// construtor vazio da classe Livro
public Livro() {}
// construtor cheio da classe Livro
public Livro(int id, String titulo, String autor, int paginas) {
this.id = id;
this.titulo = titulo;
this.autor = autor;
this.paginas = paginas;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getTitulo() {
return titulo;
}
public void setTitulo(String titulo) {
this.titulo = titulo;
}
public String getAutor() {
return autor;
}
public void setAutor(String autor) {
this.autor = autor;
}
public int getPaginas() {
return paginas;
}
public void setPaginas(int paginas) {
this.paginas = paginas;
}
}
Código para a classe Biblioteca, que deve estar no arquivo Biblioteca.java:
package estudos;
// imports necessários
import java.util.ArrayList;
import java.util.Scanner;
// definição da classe Biblioteca
public class Biblioteca {
String nome;
ArrayList<Livro> livros; // ArrayList para guardar os livros
// variável do tipo int para gerar IDs auto-incremento para os livros
int idUltimoLivroCadastrado = 0;
// construtor da classe
public Biblioteca(String nome) {
this.nome = nome;
this.livros = new ArrayList();
}
// exibe o menu de opções da biblioteca
public void exibirMenu(){
// para ler a entrada do usuário
Scanner entrada = new Scanner(System.in);
// variáveis temporárias
Livro temp;
String pesquisaLivro;
// um laço infinito com as opções do menu
while(true){
System.out.println("\n-------------------------------------------------");
System.out.println(":: " + this.nome + " ::");
System.out.println("-------------------------------------------------");
System.out.println("Bem-vindo(a) ao sistema. Escolha a opção desejada\n");
System.out.println("1 - Novo Livro");
System.out.println("2 - Listar Livros");
System.out.println("3 - Pesquisar Livro");
System.out.println("4 - Excluir Livro");
System.out.println("5 - Sair");
System.out.print("\nSua opção: ");
// lê a opção do usuário
int opcao = Integer.parseInt(entrada.nextLine());
// um menu switch para ler as opções do menu
switch(opcao){
case 1: // vamos cadastrar um novo livro
System.out.print("\nTítulo: ");
String titulo = entrada.nextLine();
System.out.print("Autor: ");
String autor = entrada.nextLine();
System.out.print("Quant Páginas: ");
int quantPaginas = Integer.parseInt(entrada.nextLine());
// vamos gerar o id deste livro
int id = ++this.idUltimoLivroCadastrado;
// agora vamos criar um novo objeto da classe Livro
Livro livro = new Livro(id, titulo, autor, quantPaginas);
// e o adicionamos no ArrayList de livros
livros.add(livro);
// e finalmente mostramos uma mensagem de sucesso.
System.out.println("\nO livro foi cadastrado com sucesso");
break;
case 2: // vamos listar os livros cadastrados
if(livros.isEmpty()){
System.out.println("\nNão há nenhum livro cadastrado.");
}
else{
for(int i = 0; i < livros.size(); i++){
temp = livros.get(i); // obtém o livro da iteração atual
System.out.println("\nId: " + temp.getId());
System.out.println("Título: " + temp.getTitulo());
System.out.println("Autor: " + temp.getAutor());
System.out.println("Quant. Paginas: " + temp.getPaginas());
}
}
break;
case 3: // vamos pesquisar um livro
System.out.print("\nInforme o id ou título do livro: ");
pesquisaLivro = entrada.nextLine();
// chamamos o método que pesquisa o livro
temp = this.pesquisarLivro(pesquisaLivro);
if(temp == null){ // livro não encontrado
System.out.println("\nO livro náo foi encontrado.");
}
else{
// mostra o livro encontrado
System.out.println("\nId: " + temp.getId());
System.out.println("Título: " + temp.getTitulo());
System.out.println("Autor: " + temp.getAutor());
System.out.println("Quant. Paginas: " + temp.getPaginas());
}
break;
case 4: // vamos excluir um livro
System.out.print("\nInforme o id ou título do livro a ser excluído: ");
pesquisaLivro = entrada.nextLine();
// chamamos o método que pesquisa o livro
temp = pesquisarLivro(pesquisaLivro);
if(temp == null){ // livro não encontrado
System.out.println("\nO livro não foi encontrado.");
}
else{
// vamos excluir este livro
livros.remove(temp);
System.out.println("\nLivro excluído com sucesso.");
}
break;
case 5: // sai da aplicação
System.out.println("\nObrigado por usar a biblioteca\n");
System.exit(0);
default:
System.out.println("\nOpção inválida\n");
break;
}
}
}
// método que pesquisa um livro pelo id ou e retorna um objeto da classe Livro
public Livro pesquisarLivro(String pesquisaLivro){
Livro livro = null;
// este livro existe?
for(int i = 0; i < livros.size(); i++){
// pesquisa pelo id
if(Integer.toString(livros.get(i).getId()).equals(pesquisaLivro)){
return livros.get(i);
}
// pesquisar por título
else if(livros.get(i).getTitulo().contains(pesquisaLivro)){
return livros.get(i);
}
}
return livro;
}
}
E aqui está o código para a classe principal Estudos, no arquivo Estudos.java:
package estudos;
public class Estudos {
public static void main(String[] args) {
// vamos criar um novo objeto da classe Biblioteca
Biblioteca b = new Biblioteca("Biblioteca Programação e Artes");
// mostra o menu da biblioteca
b.exibirMenu();
}
}
|
VB.NET ::: Dicas & Truques ::: Strings e Caracteres |
Como obter uma substring em uma string VB.NET usando o método Substring() da classe StringQuantidade de visualizações: 12930 vezes |
|
Nesta dica mostrarei como podemos usar o método Substring() da classe String do VB.NET para retornar parte de uma palavra, frase ou texto, ou seja, uma substring em uma string. Este método recebe o índice do caractere inícial da substring a ser obtida e a quantidade total de caracteres. O retorno é uma nova string. Veja o código completo para o exemplo:
Imports System
Module Program
Sub Main(args As String())
Dim frase As String = "Gosto muito de VB.NET"
' vamos mostrar a frase original
Console.WriteLine("Frase original: " & frase)
' vamos obter a substring "VB.NET"
Dim substring As String = frase.Substring(15, 6)
' exibe o resultado
Console.WriteLine("A substring é: " & substring)
Console.WriteLine(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: Frase original: Gosto muito de VB.NET A substring é: VB.NET |
C# ::: Coleções (Collections) ::: ArrayList |
Como percorrer os elementos de uma ArrayList do C# usando um objeto da interface IEnumeratorQuantidade de visualizações: 9049 vezes |
|
Um objeto da interface IEnumerator (no namespace System.Collections) pode ser usado para percorrer os elementos de uma coleção não-genérica, como é o caso da classe ArrayList. Podemos usar um enumerador para acessar os itens da lista individualmente, mas estes não poderão sofrer modificações por meio do enumerador. Um enumerador para uma ArrayList é obtido por meio do método GetEnumerator(). Veja: // vamos obter um enumerador para a lista IEnumerator enumerador = lista.GetEnumerator(); Observe agora um trecho de código no qual temos uma lista contendo 5 inteiros. Note o uso de um IEnumerator para percorrer os elementos e exibir o valor contido no elemento atual:
static void Main(string[] args){
// não se esqueça
// using System.Collections;
// Cria o ArrayList
ArrayList lista = new ArrayList();
// Adiciona 5 inteiros
lista.Add(65);
lista.Add(2);
lista.Add(13);
lista.Add(97);
lista.Add(4);
// vamos obter um enumerador para a lista
IEnumerator enumerador = lista.GetEnumerator();
// vamos percorrer a lista usando o enumerador
while(enumerador.MoveNext()){
Console.WriteLine(enumerador.Current);
}
Console.Write("\n\nPressione uma tecla para sair...");
Console.ReadKey();
}
Para saber mais sobre os enumeradores, consulte minhas dicas sobre a interface IEnumerator. |
C ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercício Resolvido de C - Usando um laço for para percorrer os elementos de uma matriz e exibir a soma dos valores positivos e a quantidade de valores negativosQuantidade de visualizações: 12360 vezes |
|
Exercícios Resolvidos de C - Usando um laço for para percorrer os elementos de uma matriz e exibir a soma dos valores positivos e a quantidade de valores negativos Pergunta/Tarefa: Considere a seguinte matriz de inteiros:
// uma matriz de inteiros contendo sete elementos
int valores[] = {-3, 9, 12, -34, -2, 20, 10};
Escreva um programa C que usa um laço for para percorrer todos os elementos desta matriz e exibir a soma dos valores positivos e a quantidade de valores negativos. Seu programa deverá exibir uma saída com a mensagem: A soma dos valores positivos é: 51 A quantidade de valores negativos é: 3 Resposta/Solução: Veja abaixo a resolução completa para esta tarefa:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
// uma matriz de inteiros contendo sete elementos
int valores[] = {-3, 9, 12, -34, -2, 20, 10};
// o primeiro passo é criar uma variável que vai receber a soma
// dos valores positivos
int soma_positivos = 0;
// agora uma variável para receber a quantidade de valores negativos
int quant_negativos = 0;
int i;
// agora vamos usar uma laço for para percorrer todos os elementos
// da matriz
for(i = 0; i < 7; i++){
// vamos verificar se o valor do elemento atual é negativo
if(valores[i] < 0){
quant_negativos++;
}
else{ // o valor é positivo
soma_positivos = soma_positivos + valores[i];
}
}
// vamos exibir a soma dos valores positivos
printf("A soma dos valores positivos é: %d\n", soma_positivos);
// vamos exibir a quantidade de valores negativos
printf("A quantidade de valores negativos é: %d\n", quant_negativos);
system("PAUSE");
return 0;
}
|
Nossas 20 dicas & truques de programação mais populares |
|
C# - Como detectar a mudança de estado da CheckBox do C# Windows Forms usando o evento CheckedChanged |
Você também poderá gostar das dicas e truques de programação abaixo |
|
JavaScript - Como arredondar um valor numérico de ponto-flutuante para cima usando a função ceil() do objeto Math do JavaScript |
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 |



