Baixe o app para aproveitar ainda mais
Prévia do material em texto
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS Bacharelado em Sistemas de Informação Disciplina Laboratório de Computação 2 - Aula Prática 01 Classes Exercício 01: Etapa 1: Crie e compile o código fonte abaixo, relativo à Classe CVetor: using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace PrimeiraPratica { class CVetor { private int tam = 10; private int[] Vetor; public CVetor() { Vetor = new int[tam]; Console.WriteLine("\nVetor assumigo com {0} posiçoes.",tam); LeVetor(); } private void LeVetor() { for (int i = 0; i < this.tam; i++) { Console.Write("\nIngresse o valor de Vet[{0}]: ",i+1); // para o usuário, o vetor vai de 1 a 10 e não de 0 a 9 . Vetor[i] = int.Parse(Console.ReadLine()); } } public CVetor(int t) { if (t < 1) { Vetor = new int[tam]; Console.WriteLine("\nValor inválido para o tamanho do Vetor."); Console.WriteLine("\nVetor assumigo com {0} posiçoes.", this.tam); LeVetor(); } else { this.tam = t; Vetor = new int[tam]; Console.WriteLine("\nVetor a ser construído com as {0} posiçoes.", this.tam); for (int i = 0; i < tam; i++) { Console.Write("\nIngresse o valor de Vet[{0}]: ", i + 1); // para o usuário, o vetor vai de 1 a 10 e não de 0 a 9 . Vetor[i] = int.Parse(Console.ReadLine()); } } } public void ProdEscalar(int x) { for(int i = 0; i < tam; i++) Vetor[i] *= x; } public void MostraVetor() { int qtel; Console.Write("\nQuantos elementos, por linha de impressão, deseja mostrar? R: "); qtel = int.Parse(Console.ReadLine()); MostraVetor(qtel); } private void MostraVetor(int elxlinha) { for (int i = 0; i < this.tam; i++) { if ((((i+1) % elxlinha) == 0) ||((i+1) == this.tam)) Console.WriteLine("{0}", this.Vetor[i]); else Console.Write("{0} |", this.Vetor[i]); } } } } Etapa 2: Crie e compile o código fonte abaixo, relativo ao Método Main(), incluído na classe Program: // Definição da classe Program (que contém o método Main) namespace PrimeiraPratica { class Program { static void Main() { CVetor V1,V2,V3; V1 = new CVetor(); V2 = new CVetor(4); V3 = new CVetor(-5); V2.MostraVetor(); V2.ProdEscalar(3); V2.MostraVetor(); Console.WriteLine("var1 = {0} \n var2 = {1}\n var3 = {2}", "ira@hotmail.com", @"c:\temp\nara.txt","c:\temp\nara.txt"); } } } Etapa 3: Antes de executar o programa, responda: 1) Quantos objetos da classe Cvetor foram criados? R: _______________ 2) Quantos métodos construtores Cvetor possui? R: _______________ Exercício 02: Considere a definição de classe abaixo. Conta: Atributos: • numero (inteiro) - Número da conta • titular (String) - Titular da conta • saldo (real) - Saldo da conta Métodos: • getSaldo() - Retorna o saldo da conta • debito(real) - Faz débito em conta • credito(real) - Faz crédito em conta • imprimeDadosConta() - Imprime todas informações da conta Crie a classe Conta, seguindo as orientações abaixo: 1) Comece com a definição da classe: class Conta 2) Inclua os atributos número, titular e saldo. 3) Inclua o construtor para a classe Conta que recebe os parâmetros número, titular e saldo e inicializa os atri- butos. 4) Inclua os métodos acima definidos, sendo que: a. O método credito(double d) acrescenta o valor d ao saldo do cliente. b. O método debito(double d) recebe um parâmetro d e diminui o valor do saldo de d. c. O método imprimeDadosConta() quando invocado para um objeto, a conta de FHC por exemplo, im- prime a seguinte saída na tela: -=- Informações de Conta -=- Número: 11 Titular: FHC Saldo: 1000000.00 Saldo OK Saída na tela quando o saldo está negativo -=- Informações de Conta -=- Número: 13 Titular: Maria saldo: -456.34 Atenção cliente seu saldo está negativo 5) Digite, compile e execute a classe TestaConta abaixo. Essa classe serve para criar vários objetos do tipo Conta. class TestaConta { public static void Main() { Conta c1 = new Conta(1, "José", 500); c1.imprimeDadosConta(); c1.debito(12222); c1.imprimeDadosConta(); Conta c2 = new Conta(2, "Marcos", 1500); c2.imprimeDadosConta(); c2.debito(12222); c2.imprimeDadosConta(); Conta c3 = new Conta(3, "Maria", 1500); c3.imprimeDadosConta(); c3.debito(12222); c3.imprimeDadosConta(); } } 6) Construa novos objetos do tipo Conta. Execute e teste a classe TestaConta com os objetos listados abaixo. Crie objetos do tipo conta com os seguintes valores: Conta: • numero: 11 • titular: Paulo • saldo: 1000000.00 • numero: 12 • titular: João • saldo: 45.3 • numero: 13 • titular: Maria • saldo: -456.34 7) Para resolver o problema de fazer um débito sem saldo suficiente, introduza um teste no método correspon- dente. Se o valor a ser debitado é maior que o saldo, imprima uma mensagem “Saldo inválido!” e não faça o débito. Caso o saldo seja suficiente, o débito é realizado normalmente.
Compartilhar