1) Dada uma string, imprima-a com todos os caracteres maiúsculos, e depois todos os caracteres minúsculos.
Dica: Use os métodos string.ToUpper() e string.ToLower().
2) Faça um programa que pergunta ao usuário a sua data de nascimento, e imprime quantos anos ele tem.
Dica: Use as classes DateTime e TimeSpan.
3) Faça um programa que mostra quantos dias falta para o próximo natal.
Dica: Use as classes DateTime e TimeSpan.
4) Dada uma coleção de números inteiros digitada pelo usuário em uma única linha, imprimi-la na ordem inversa.
Dica: Use o método string.Split().
5) Dado um número N, imprimi-lo como uma soma de múltiplos de 10 mais a sua unidade.
Exemplo: 472 = 400 + 70 + 2
Dica: Use o método string.ToCharArray().
6) Números palíndromos são aqueles que são lidos da direita para a esquerda da mesma maneira que da esquerda para a direita.
Exemplo: o número 12321 é palíndromo, enquanto 123 não é.
Dado um número N, informar se ele é palíndromo ou não.
Dica: Use o método string.ToCharArray().
7) Faça um programa que, a cada número N digitado pelo usuário, gere e imprima um número aleatório contido entre 0 e N. O programa acaba quando o usuário digitar 0.
Dica: Use a classe System.Random.
8) Peça para o usuário alimentar um vetor com N cores. Depois o programa deve imprimir "Minha cor favorita é " e escolher aleatoriamente uma cor do vetor.
Dica: Use a classe System.Random.
9) Crie uma biblioteca chamada Calculadora.dll com uma classe Calculadora com os seguintes métodos:
Crie um programa para usar essa biblioteca. Solicite dois números ao usuário e mostre o resultado usando as 4 funções acima.
// Calculadora.dll
using System;
namespace MinhaBiblioteca
{
public class Calculadora
{
public Calculadora()
{
}
public double Soma(double a, double b)
{
return a + b;
}
public double Subtracao(double a, double b)
{
return a - b;
}
public double Multiplicacao(double a, double b)
{
return a * b;
}
public double Divisao(double a, double b)
{
if (b != 0)
return a / b;
else
{
Console.WriteLine("Calculadora.Divisao: Denominador não pode ser igual a zero!");
return 0.0;
}
}
}
}
// Lista2Exercicio09.exe
using System;
using MinhaBiblioteca;
namespace Lista2Exercicio09
{
class MainClass
{
public static void Main(string[] args)
{
Calculadora c;
double a, b;
Console.Write("Digite o valor de A: ");
a = double.Parse(Console.ReadLine());
Console.Write("Digite o valor de B: ");
b = double.Parse(Console.ReadLine());
c = new Calculadora();
Console.WriteLine("A soma de A e B = {0}", c.Soma(a, b));
Console.WriteLine("A subtração de A e B = {0}", c.Subtracao(a, b));
Console.WriteLine("A multiplicação de A e B = {0}", c.Multiplicacao(a, b));
Console.WriteLine("A divisão de A e B = {0}", c.Divisao(a, b));
Console.ReadKey();
}
}
}
10) Crie uma biblioteca chamada EntradaDeDados.dll com uma classe Variaveis com os seguintes métodos:
Cada método solicita ao usuário um valor de um determinado tipo. Caso o usuário digitar o valor incorretamente, o método deverá solicitar novamente, até que o usuário digite corretamente.
Dica: Use os métodos int.TryParse(), double.TryParse(), char.TryParse() e DateTime.TryParse().
A sua biblioteca EntradaDeDados.dll também deverá ter uma classe Vetores com os seguintes métodos:
Cada método da classe Vetores deve primeiramente perguntar ao usuário o número de elementos do vetor, e depois ler cada elemento usando a classe Variaveis.
Crie um programa para usar essa biblioteca e utilize cada um dos exemplos acima.
// EntradaDeDados.dll - Variaveis.cs
using System;
namespace EntradaDeDados
{
public class Variaveis
{
public Variaveis()
{
}
public int LeInt()
{
bool digitou_certo;
int valor;
do
{
Console.Write("Digite um número inteiro: ");
digitou_certo = int.TryParse(Console.ReadLine(), out valor);
if (!digitou_certo)
Console.WriteLine("Erro, valor digitado não é um número inteiro.");
}
while (!digitou_certo);
return valor;
}
public int LeInt(string p_mensagem)
{
bool digitou_certo;
int valor;
do
{
Console.Write(p_mensagem);
digitou_certo = int.TryParse(Console.ReadLine(), out valor);
if (!digitou_certo)
Console.WriteLine("Erro, valor digitado não é um número inteiro.");
}
while (!digitou_certo);
return valor;
}
public double LeDouble()
{
bool digitou_certo;
double valor;
do
{
Console.Write("Digite um número real: ");
digitou_certo = double.TryParse(Console.ReadLine(), out valor);
if (!digitou_certo)
Console.WriteLine("Erro, valor digitado não é um número real.");
}
while (!digitou_certo);
return valor;
}
public double LeDouble(string p_mensagem)
{
bool digitou_certo;
double valor;
do
{
Console.Write(p_mensagem);
digitou_certo = double.TryParse(Console.ReadLine(), out valor);
if (!digitou_certo)
Console.WriteLine("Erro, valor digitado não é um número real.");
}
while (!digitou_certo);
return valor;
}
public char LeChar()
{
bool digitou_certo;
char valor;
do
{
Console.Write("Digite um caractere: ");
digitou_certo = char.TryParse(Console.ReadLine(), out valor);
if (!digitou_certo)
Console.WriteLine("Erro, valor digitado não é um caractere.");
}
while (!digitou_certo);
return valor;
}
public char LeChar(string p_mensagem)
{
bool digitou_certo;
char valor;
do
{
Console.Write(p_mensagem);
digitou_certo = char.TryParse(Console.ReadLine(), out valor);
if (!digitou_certo)
Console.WriteLine("Erro, valor digitado não é um caractere.");
}
while (!digitou_certo);
return valor;
}
public string LeString()
{
Console.Write("Digite um texto: ");
return Console.ReadLine();
}
public string LeString(string p_mensagem)
{
Console.Write(p_mensagem);
return Console.ReadLine();
}
public DateTime LeDateTime()
{
bool digitou_certo;
DateTime valor;
do
{
Console.Write("Digite uma data/hora: ");
digitou_certo = DateTime.TryParse(Console.ReadLine(), out valor);
if (!digitou_certo)
Console.WriteLine("Erro, valor digitado não é uma data/hora.");
}
while (!digitou_certo);
return valor;
}
public DateTime LeDateTime(string p_mensagem)
{
bool digitou_certo;
DateTime valor;
do
{
Console.Write(p_mensagem);
digitou_certo = DateTime.TryParse(Console.ReadLine(), out valor);
if (!digitou_certo)
Console.WriteLine("Erro, valor digitado não é uma data/hora.");
}
while (!digitou_certo);
return valor;
}
}
}
// EntradaDeDados - Vetores.cs
using System;
using System.Collections.Generic;
namespace EntradaDeDados
{
public class Vetores
{
private Variaveis variaveis;
public Vetores()
{
this.variaveis = new Variaveis();
}
public int[] LeVetorEstaticoInt()
{
int[] vetor;
int n;
n = this.variaveis.LeInt("Digite o número de elementos do vetor: ");
vetor = new int[n];
for (int i = 0; i < n; i++)
vetor[i] = this.variaveis.LeInt("Digite o elemento " + i.ToString() + ": ");
return vetor;
}
public double[] LeVetorEstaticoDouble()
{
double[] vetor;
int n;
n = this.variaveis.LeInt("Digite o número de elementos do vetor: ");
vetor = new double[n];
for (int i = 0; i < n; i++)
vetor[i] = this.variaveis.LeDouble("Digite o elemento " + i.ToString() + ": ");
return vetor;
}
public char[] LeVetorEstaticoChar()
{
char[] vetor;
int n;
n = this.variaveis.LeInt("Digite o número de elementos do vetor: ");
vetor = new char[n];
for (int i = 0; i < n; i++)
vetor[i] = this.variaveis.LeChar("Digite o elemento " + i.ToString() + ": ");
return vetor;
}
public string[] LeVetorEstaticoString()
{
string[] vetor;
int n;
n = this.variaveis.LeInt("Digite o número de elementos do vetor: ");
vetor = new string[n];
for (int i = 0; i < n; i++)
vetor[i] = this.variaveis.LeString("Digite o elemento " + i.ToString() + ": ");
return vetor;
}
public DateTime[] LeVetorEstaticoDateTime()
{
DateTime[] vetor;
int n;
n = this.variaveis.LeInt("Digite o número de elementos do vetor: ");
vetor = new DateTime[n];
for (int i = 0; i < n; i++)
vetor[i] = this.variaveis.LeDateTime("Digite o elemento " + i.ToString() + ": ");
return vetor;
}
public List<int> LeVetorDinamicoInt()
{
List<int> vetor;
int n;
n = this.variaveis.LeInt("Digite o número de elementos do vetor: ");
vetor = new List<int>();
for (int i = 0; i < n; i++)
vetor.Add(this.variaveis.LeInt("Digite o elemento " + i.ToString() + ": "));
return vetor;
}
public List<double> LeVetorDinamicoDouble()
{
List<double> vetor;
int n;
n = this.variaveis.LeInt("Digite o número de elementos do vetor: ");
vetor = new List<double>();
for (int i = 0; i < n; i++)
vetor.Add(this.variaveis.LeDouble("Digite o elemento " + i.ToString() + ": "));
return vetor;
}
public List<char> LeVetorDinamicoChar()
{
List<char> vetor;
int n;
n = this.variaveis.LeInt("Digite o número de elementos do vetor: ");
vetor = new List<char>();
for (int i = 0; i < n; i++)
vetor.Add(this.variaveis.LeChar("Digite o elemento " + i.ToString() + ": "));
return vetor;
}
public List<string> LeVetorDinamicoString()
{
List<string> vetor;
int n;
n = this.variaveis.LeInt("Digite o número de elementos do vetor: ");
vetor = new List<string>();
for (int i = 0; i < n; i++)
vetor.Add(this.variaveis.LeString("Digite o elemento " + i.ToString() + ": "));
return vetor;
}
public List<DateTime> LeVetorDinamicoDateTime()
{
List<DateTime> vetor;
int n;
n = this.variaveis.LeInt("Digite o número de elementos do vetor: ");
vetor = new List<DateTime>();
for (int i = 0; i < n; i++)
vetor.Add(this.variaveis.LeDateTime("Digite o elemento " + i.ToString() + ": "));
return vetor;
}
}
}
// Teste.exe - Program.cs
using System;
using System.Collections.Generic;
using EntradaDeDados;
namespace Lista2Exercicio10
{
class MainClass
{
public static void Main(string[] args)
{
Variaveis variaveis;
int i;
double d;
char c;
string s;
DateTime t;
Vetores vetores;
int[] vei;
double[] ved;
char[] vec;
string[] ves;
DateTime[] vet;
List<int> vdi;
List<double> vdd;
List<char> vdc;
List<string> vds;
List<DateTime> vdt;
variaveis = new Variaveis();
vetores = new Vetores();
Console.WriteLine("Exemplo de uso da biblioteca EntradaDeDados para variáveis:");
Console.WriteLine();
i = variaveis.LeInt();
Console.WriteLine();
d = variaveis.LeDouble();
Console.WriteLine();
c = variaveis.LeChar();
Console.WriteLine();
s = variaveis.LeString();
Console.WriteLine();
t = variaveis.LeDateTime();
Console.WriteLine();
Console.WriteLine("Exemplo de uso da biblioteca EntradaDeDados para vetores estáticos:");
Console.WriteLine();
Console.WriteLine("Vetor de int: ");
vei = vetores.LeVetorEstaticoInt();
Console.WriteLine();
Console.WriteLine("Vetor de double: ");
ved = vetores.LeVetorEstaticoDouble();
Console.WriteLine();
Console.WriteLine("Vetor de char: ");
vec = vetores.LeVetorEstaticoChar();
Console.WriteLine();
Console.WriteLine("Vetor de string: ");
ves = vetores.LeVetorEstaticoString();
Console.WriteLine();
Console.WriteLine("Vetor de DateTime: ");
vet = vetores.LeVetorEstaticoDateTime();
Console.WriteLine();
Console.WriteLine("Exemplo de uso da biblioteca EntradaDeDados para vetores dinâmicos:");
Console.WriteLine();
Console.WriteLine("Vetor de int: ");
vdi = vetores.LeVetorDinamicoInt();
Console.WriteLine();
Console.WriteLine("Vetor de double: ");
vdd = vetores.LeVetorDinamicoDouble();
Console.WriteLine();
Console.WriteLine("Vetor de char: ");
vdc = vetores.LeVetorDinamicoChar();
Console.WriteLine();
Console.WriteLine("Vetor de string: ");
vds = vetores.LeVetorDinamicoString();
Console.WriteLine();
Console.WriteLine("Vetor de DateTime: ");
vdt = vetores.LeVetorDinamicoDateTime();
Console.WriteLine();
Console.ReadKey();
}
}
}