Prof. Esp. Adriano Carvalho
O que é um Programa? Um arquivo contendo uma sequência de comandos em uma linguagem de programação especifica Esses comandosrespeitam regras de como serem escritos e quais são as palavras que podem ser utilizadas O programa contendo os comandos na linguagem humana precisam ser convertidospara linguagem de computador
Framework.Net Desenvolvido para melhorar a comunicação entre os serviços das aplicações (antes: win32, MFC, VB, COM, Asp, ADO, etc) Suporte a muitas Plataformas Linguagem Comum do Ambiente de Execução (CLR), suportando 15 linguagens Blindagem de Ambiente de Aplicação (Segurança entre dados e memórias) através de código gerenciável Coletor de Lixo (GC)
Framework.Net Sistema Operacional Programa Programa Programa.Net Win32 Win32 CLR Hardware
Por que C#? Utiliza Framework.Net Totalmente Orientado a Objetos Possui apurada forma de programar e resolver problemas, como: alocação tardia, propriedades, delegados, tipo nulo, LINQ, e outros
Visual Studio 2010 IDE para várias linguagens: C#, C++, VB, F# Intellisense Gera código automático Pedaço de códigos pré-fabricados (Snipets) Componentes gráficos
Tela Inicial Visual Studio 2010
Escolha New Project
Escolha Windows/EmptyProject ATENÇÃO: TenhacertezaqueestaescolhendoEmpty Project da linguagem de programação C#
Projeto Vazio Criado
Adiciona Classe Programa
Remova a linha namespace e as linhas using
Utilize o Atalho Ctrl+ K + D Quando você fizer alterações no seu programa, utilize o atalho Ctrl+ K + D para que ele ajude na estetica, reposicionando os códigos já digitados em todas as linhas do seu programa
Classe Programa Todo programa é uma classe Paradigma de orientação a objetos Deve abrigar o ponto de início
Classe Programa class Programa { }
Ponto de Início Todo programa, não importa a linguagem de programação, aponta de alguma forma as linhas de comandos que serão executadas inicialmente. No caso do C# as linhas de comando que serão procuradas são as que se encontrar dentro do bloco que tiver a assinatura static void Main(): static void Main() { } // os três pontos abaixo representam as linhas de comando...
Programa Básico class Programa { static void Main() { } }
EXERCÍCIO Execute o nosso primeiro programa pressionando F5 no VS2010 -Você verá que rapidamente uma janela preta se abre e fecha... Esse foi a execução do nosso primeiro programa em C#
Estrutura Básica Toda linha de comando termina com o sinal de ponto e virgula ; Pode-se utilizar de comentários colocando duas barras do teclado numérico na frente da linha // Todo bloco de linhas de comando precisa estar obrigatoriamente entre colchetes: { } Linhas de comando
Estrutura Básica Os comandos das linhas de comando estão geralmente em bibliotecas do sistema Para um programa utilizar algum comando é necessário acrescentar a biblioteca no projeto e utilizar o comando usingno topo do arquivo
Programa Básico Revisto using System; class Programa { } static void Main() { } // os três pontos abaixo representam as linhas de comando...
Comando Escrever na Tela System.Console.WriteLine( imprimir ); Onde imprimiré qualquer informação: texto, número, cálculos, etc ATENÇÃO: Informações do tipo Texto precisam estar entre aspas duplas ( )
EXERCÍCIO Escreva seu nome na tela
EXERCÍCIO RESOLVIDO using System; class Programa { } static void Main() { } Console.WriteLine("Meu Nome");
Mensagem de Erro Pode acontecer se alguma linha não estiver de acordo com o compilador, quando você pressionar F5, pode aparecer esta janela: Escolha sempre NOe vendo na lista de erros arrume e volte a pressionar F5
Lista de Erros Se clicar 2x na linha onde esta o erro, na janela lista de erros, o cursor irá direto para lá
Comando para Segurar a Tela Console.ReadKey();
Não Digite os Comandos Como jáfoiditoa IDE do Visual Studio 2010 possuium recurso chamado Intellisense onde ele procura sugerir o quevocêirádigitar, semprese listandoas opções possíveis, informações sobre parâmetros, etc EntãoNÃODIGITE O COMANDO, apenasiniciee assimqueelemostrar, escolhacom o tecladooucom o mouse o quevocêprecisa
EXERCÍCIO Faça um programa que escreva seu nome na tela e não deixe a tela sumir até você pressionar qualquer tecla
EXERCÍCIO RESOLVIDO using System; class Programa { } static void Main() { } Console.WriteLine("Meu Nome"); Console.ReadLine();
Operadores Simples Estes operadores podem ser utilizados para realizar cálculos: + Adição - Subtração * Multiplicação / Divisão % Módulo
EXERCÍCIO Utilizando o comando de escrever na tela, descubra quanto é: (235 /2) 2
EXERCÍCIO RESOLVIDO using System; class Programa { } static void Main() { } Console.WriteLine( (235 / 2) * (235 / 2) ); Console.ReadLine();
Variáveis Local onde se armazena informações, durante a execução do programa Pode ser comparada a gavetas digitais onde você guarda informações Pode ser de vários tipos: int números Inteiro bool boleano string caracteres do tipo letras e números float números com ponto flutuante DateTime datas e horários
Variáveis Para criar uma variável e guardar um valor basta no inicio da linha de comando especificar o tipo de dado que a variável irá guardar, e em seguida seu nome: string texto; Pode-se guardar um valor já no inicio da sua criação: string texto = linha de comando no vs2010 ;
EXERCÍCIO Escreva um programa que cria uma variável do tipo stringcom um valor de texto, e em seguida chame o comando de escrever na tela utilizando como parâmetro esta variável
EXERCÍCIO RESOLVIDO using System; class Programa { } static void Main() { } string texto = "Imprime este texto na Tela"; Console.WriteLine( texto); Console.ReadLine();
Concatenação de Valores Em uma variável pode se concatenar (juntar) valores de texto, bem como misturar texto e números utilizando o operador soma + stringdata = hoje é + 28 + / + 4 + / + 2012;
EXERCÍCIO Utilizando o comando de escrever na tela, faça um programa que mostre na tela a tabuada de 2e 3: Utilize uma linha em branco para separar as 2 tabuadas
EXERCÍCIO RESOLVIDO (parte1) using System; class Programa { static void Main() { Console.WriteLine("Tabuada de 2"); Console.WriteLine("============"); Console.WriteLine("2 x 0 = " + 2 * 0); Console.WriteLine("2 x 1 = " + 2 * 1); Console.WriteLine("2 x 2 = " + 2 * 2); Console.WriteLine("2 x 3 = " + 2 * 3); Console.WriteLine("2 x 4 = " + 2 * 4); Console.WriteLine("2 x 5 = " + 2 * 5); Console.WriteLine("2 x 6 = " + 2 * 6); Console.WriteLine("2 x 7 = " + 2 * 7); Console.WriteLine("2 x 8 = " + 2 * 8); Console.WriteLine("2 x 9 = " + 2 * 9); Console.WriteLine("2 x 10 = " + 2 * 10); Console.WriteLine("");
EXERCÍCIO RESOLVIDO (parte2) Console.WriteLine(""); Console.WriteLine("Tabuada de 3"); Console.WriteLine("============"); Console.WriteLine("3 x 0 = " + 3 * 0); Console.WriteLine("3 x 1 = " + 3 * 1); Console.WriteLine("3 x 2 = " + 3 * 2); Console.WriteLine("3 x 3 = " + 3 * 3); Console.WriteLine("3 x 4 = " + 3 * 4); Console.WriteLine("3 x 5 = " + 3 * 5); Console.WriteLine("3 x 6 = " + 3 * 6); Console.WriteLine("3 x 7 = " + 3 * 7); Console.WriteLine("3 x 8 = " + 3 * 8); Console.WriteLine("3 x 9 = " + 3 * 9); Console.WriteLine("3 x 10 = " + 3 * 10); } Console.ReadKey(); }
Limpando a Tela Utilize o comando Clearpara limpar a tela: Console.Clear();
Capturando Dados do Teclado Caso seja necessário é possível fazer com que o programa peça que o usuário entre com informações via teclado Estas informações podem ser capturadas e armazenadas em variáveis O programairáficaresperandoatéo usuáriopressionara tecla Enter para prosseguir O comando é: string dados = Console.ReadLine();
EXERCÍCIO Faça um programa que pergunte ao usuário seus dados pessoais (nome, endereço e telefone). Peça um dado por vez, sendo obrigado o usuário a pressionar Enter quando terminado cada dado Após entrar a informação do telefone, limpe a tela e apresente todas as informações digitadas pelo usuário, porém formatadas para parecer o melhor possível
EXERCÍCIO RESOLVIDO (parte1) using System; class Programa { static void Main() { Console.WriteLine("Digite o seu Nome: "); string nome = Console.ReadLine(); Console.WriteLine(""); Console.WriteLine("Digite o seu Endereço: "); string endereco = Console.ReadLine(); Console.WriteLine(""); Console.WriteLine("Digite o seu Telefone: "); string telefone = Console.ReadLine();
EXERCÍCIO RESOLVIDO (parte2) Console.Clear(); Console.WriteLine("========================================="); Console.WriteLine(""); Console.WriteLine("Nome: " + nome); Console.WriteLine(""); Console.WriteLine("Endereço: " + endereco); Console.WriteLine(""); Console.WriteLine("Telefone: " + telefone); Console.WriteLine(""); Console.WriteLine("========================================="); } Console.ReadKey(); }
Operadores de Comparação Estes operadores podem ser utilizados em quaisquer declarações onde se utilizar de condições: < Menor que > Maior que <= Menorouiguala que >= Maiorouiguala que == Igualdade!= Diferente
Tomando Decisões O comando IF é utilizado para fazer testes, e caso seja verdadeiro executar um comando ou um bloco de comandos. Caso o resultado seja falso, pode se escrever um comando ou bloco de comando para ser executado também if (condição) {... // caso seja verdadeiro } else {... // caso seja falso }
Tomando Decisões Um exemplo poderia ser pedir para o usuário entrar com a sua idade, e em seguida mostrar uma mensagem de acordo com o valor digitado: if (idade < 18) { Console.WriteLine("Você é menor de idade!"); } else { Console.WriteLine("Você é de maior!"); }
EXERCÍCIO Faça um programa que pergunte para o usuário se ele quer fazer uma pausa, tendo que responder sim caso positivo, e não caso negativo Faça com que de acordo com as respostas fornecidas pelo usuário, as respostas escritas na tela sejam diferentes
EXERCÍCIO RESOLVIDO using System; class Programa { static void Main() { Console.WriteLine("Você gostaria de fazer uma pausa?"); string resposta; resposta = Console.ReadLine(); } if (resposta == "sim") { // caso seja verdadeiro o teste Console.WriteLine("Quero fazer uma pausa!"); } else { // caso seja falso Console.WriteLine("Não quero fazer pausa!"); } Console.ReadKey(); }
Conversão tipo stringpara int Os dados capturados via ReadLine() sempre serão texto Caso seja necessário fazer operações matemáticas com esses dados é necessário convertê-los resposta = Console.ReadLine(); int numero = Convert.ToInt16(resposta);
Conversão tipo intpara string Caso seja necessário converter um número para string, basta utilizar a função ToString() existente dentro de cada variável do tipo número resposta = Console.ReadLine(); int numero = Convert.ToInt16(resposta); string texto = numero.tostring();
EXERCÍCIO Faça um programa que peça ao usuário 2 números. Depois de digitar o último número limpe a tela, multiplique os 2 números em uma variável e apresente os números entrados e o resultado na tela de forma formatada
EXERCÍCIO RESOLVIDO (parte1) using System; class Programa { static void Main() { string resposta; Console.WriteLine("Digite o 1o número:"); resposta = Console.ReadLine(); int num1 = Convert.ToInt16(resposta); Console.WriteLine("Digite o 2o número:"); resposta = Console.ReadLine(); int num2 = Convert.ToInt16(resposta);
EXERCÍCIO RESOLVIDO (parte2) Console.Clear(); intproduto = num1 * num2; Console.WriteLine("O numero " + num1 + " x " + num2 + " é igual a: " + produto); } Console.ReadKey(); }