Buscar

609669_Aula1

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 4 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

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.

Continue navegando