Programação C# + ASP.NET Prof. MSc. Daniel Menin Tortelli e-mail: danielmenintortelli@gmail.com Site: http://sites.google.com/site/danielmenintortelli/home 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 1
A Estrutura de Seleção IF Uma estrutura de seleção é usada para se escolher cursos de ação alternativos. Por exemplo, suponha que a nota para passar em um exame seja 60. O comando em pseudocódigo: Se a nota do estudante é maior que ou igual a 60 Imprima Aprovado Se a condição é true. então é impresso Aprovado e o próximo comando em pseudocódigo na seqüência é executado (lembre que o pseudocódigo não é uma linguagem de programação real). Se a condição é false, o comando de impressão é ignorado e o próximo comando em pseudocódigo na seqüência é executado. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 2
A Estrutura de Seleção IF O comando IF do pseudocódigo precedente pode ser escrito em C# como: if ( nota >= 60 ) Console.WriteLine( Aprovado! ); Note que o código em C# corresponde de maneira próxima ao pseudocódigo. Esta é uma das propriedades do pseudocódigo que o torna uma ferramenta útil para o desenvolvimento de programas. O pseudocódigo é freqüentemente usado para bolar um programa, durante o processo de projeto do mesmo. Após isso, o programa é convertido de pseudocódigo para C#. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 3
A Estrutura de Seleção IF/ELSE A estrutura de seleção IF executa uma ação indicada só quando a condição é true; caso contrário, a ação é saltada. A estrutura de seleção IF/ELSE permite ao programador especificar que uma ação deve ser executada quando a condição é true e uma ação diferente quando a condição é false. O comando em pseudocódigo: Se a nota do estudante é maior que ou igual a 60 Imprima Aprovado Senão Imprima Reprovado 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 4
A Estrutura de Seleção IF/ELSE A estrutura se/senão precedente. em pseudocódigo, pode ser escrita em C# como: if ( nota >= 60) Console.WriteLine( Aprovado! ); else Console.WriteLine( Reprovado! ); 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 5
A Estrutura de Seleção IF/ELSE 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 6
A Estrutura de Seleção IF/ELSE 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 7
1 - Escreva um programa em C# para ler o número de lados de um polígono regular, e a medida do lado. Calcular e imprimir o seguinte: Se o número de lados for igual a 3 escrever TRIÂNGULO e o valor do seu perímetro. Se o número de lados for igual a 4 escrever QUADRADO e o valor da sua área. Se o número de lados for igual a 5 escrever PENTÁGONO. Em qualquer outra situação escrever Polígono não identificado. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 8
2 - Escreva um programa em C# que leia o valor de 3 ângulos de um triângulo e escreva se o triângulo é ACUTÂNGULO, RETÂNGULO ou OBTUSÂNGULO. Observação: Triângulo retângulo: possui um ângulo reto (90 graus). Triângulo obtusângulo: possui um ângulo obtuso (ângulo maior que 90 graus). Triângulo acutângulo: possui 3 ângulos agudos (ângulo menor que 90 graus). 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 9
3 - Escreva um programa em C# que leia as medidas dos lados de um triângulo e escreva se ele é EQUILÁTERO, ISÓSCELES ou ESCALENO. Observação: Triângulo equilátero: Possui os 3 lados iguais. Triângulo isósceles: Possui 2 lados iguais. Triângulo escaleno: Possui 3 lados diferentes. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 10
4. Faça um programa que solicite a idade de um expectador de uma sala de cinema. Em seguida, analisando a idade do expectador, exiba sugestões de filmes em cartaz que ele pode assistir, de acordo com a sua faixa etária. Um exemplo pode ser visto no quadro a seguir: Idade Menor que 12 (livre) Maior igual a 12 e menor de 14 Maior igual a 14 e menos de 16 Maior igual a 16 e menor de 18 Maior de 18 Filmes Era do gelo 3, Força G, Kung Fu Panda... Tempos de Paz, Marido por acaso... Se beber não case, G.I. Joe A origem de cobra, A proposta... Verônica decide morrer, Arraste-me pro Inferno... Bruno, A teta assustada 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 11
5 - Um ciclones tropical consiste em uma tempestade muito violenta que, sob determinadas condições, adquire um movimento de rotação em torno de uma região de baixa pressão atmosférica. Um ciclone pode atingir um diâmetro de até 500 km. Furacões são os mais violentos desses ciclones e chegam a produzir ventos de até 320 km/h. Na tabela abaixo, são apresentados alguns dados relativos à classificação dos furacões segundo a escala Saffir- Simpson: classificação velocidade dos ventos (km/h) tempestade tropical 62 a 118 furacão de categoria 1 119 a 153 furacão de categoria 2 154 a 177 furacão de categoria 3 178 a 209 furacão de categoria 4 210 a 249 furacão de categoria 5 maior que 249 Escreva um programa que leia a velocidade do vento aferida durante uma tempestade e apresente ao usuário a classificação do furacão caso a tempestade possa ser classificada como tal. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 12
6. Escrever um algoritmo que lê o número de um vendedor de uma empresa, seu salário fixo e o total das vendas por ele efetuadas. Sabe-se que cada vendedor recebe um salário fixo, mais uma comissão proporcional às vendas por ele efetuadas. A comissão é de 3% sobre o total das vendas até R$ 10.000,00 e 5% sobre o que ultrapassa esse valor. Escrever o número do vendedor, o total de suas vendas, seu salário fixo e seu salário total. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 13
7. Escrever um algoritmo que lê o número de identificação de um aluno e as 3 notas obtidas por este aluno nas 3 verificações ao longo do semestre, bem como, a média dos exercícios que fazem parte da avaliação. Para cada aluno, calcular a média de aproveitamento, usando a fórmula: Continua... 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 14
A atribuição de conceitos obedece a tabela ao lado: Média de Aproveitamento Conceito >= 9.0 A >= 7.5 e < 9.0 B >= 6.0 e < 7.5 C >= 4.0 e < 6.0 D < 4.0 E O algoritmo deve escrever o número do aluno, suas notas, a média dos exercícios, a média de aproveitamento, o conceito correspondente e a mensagem APROVADO se o conceito for A, B ou C e REPROVADO se o conceito for D ou E. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 15
8. A empresa XYZ decidiu conceder um aumento de salários a seus funcionários de acordo com a tabela ao lado: SALÁRIO ATUAL ÍNDICE DE AUMENTO 0-400 15% 401-700 12% 701-1000 10% 1001-1800 7% 1801-2500 4% Acima de 2500 Sem aumento Escrever um algoritmo que lê, o número do funcionário, seu salário atual. O programa deve escrever ao final, o numero do funcionário, seu salário atual, o percentual de seu aumento e o valor do salário corrigido. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 16
9. Escrever um algoritmo que lê um valor m. Se m não é inteiro, escrever uma mensagem O valor de m não é inteiro!. Se m é inteiro e negativo, escrever o valor de m e a mensagem m é negativo! Caso contrário, verificar se m é par ou ímpar e escrevê-lo com a mensagem correspondente. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 17
10. Escrever um algoritmo que lê uma data, subdividida em três valores (dia, mês, ano) e escreva a data com a mensagem VÁLIDA ou INVÁLIDA. Em caso da data ser inválida, mostre qual parte da data (dia, mês, ano) está fora dos parâmetros aceitáveis. O formato de exibição da data deve ser: Dia / Mês / Ano 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 18
11. Escrever um algoritmo que lê os nomes de 3 produtos, o preço unitário de cada um e a quantidade de cada produto que foi solicitada. O algoritmo deve escrever: O nome dos produtos cujo preço é superior a R$ 50,00. O nome e o preço dos produtos que custam menos que R$ 30,00. O preço médio dos 3 produtos. O nome e o preço dos produtos cujo valor é superior ao preço médio. O valor total a ser pago pelo pedido. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 19
12. Escrever um algoritmo que lê o nome de uma pessoa, a sua data de nascimento e a data atual e verifica se a pessoa está apta a tirar a Carteira de Habilitação de condutor de veículo. Se estiver apta, escrever o nome da pessoa com a mensagem APTA PARA TIRAR CARTEIRA DE MOTORISTA!. Caso contrário, escrever apenas a mensagem: FALTAM xx ANOS PARA PODER TIRAR A CARTEIRA DE MOTORISTA!. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 20
13. Dados uma sequencia com 5 números inteiros, determinar a soma dos inteiros positivos e a soma dos inteiros negativos da sequencia. Por exemplo, para a sequencia -2 7 0-5 8 4 o seu programa deve escrever os números Positivos: 19 e Negativos: -7. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 21
14. Dados uma seqüência com 3 números inteiros, o programa deve ordená-los e imprimi-los em ordem crescente e, logo após, em ordem decrescente. Exemplo: Entrada: -3 10-1 Saída: Ordem Crescente: -3-1 10 Saída: Ordem Decrescente: 10-1 -3 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 22
30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 23
16. Faça um programa que receba 4 valores e retorne o maior e o menor entre eles. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 24
17. Utilize a estrutura if para fazer um programa que retorne o nome de um produto a partir do código do mesmo. Considere os seguintes códigos: 1 - Parafuso; 2 - Porca; 3 - Prego; Para qualquer outro código, mostrar Produto não encontrado!. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 25
18. Escreva um algoritmo que solicita ao usuário para digitar um número inteiro positivo, e mostre-o por extenso. Este número deverá variar entre 1 e 10. Se o usuário introduzir um número que não pertença a este intervalo, mostre a frase Número Inválido. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 26
19. Calcular a quantidade dinheiro gasta por um fumante. Dados: o número de anos que ele fuma, o nº de cigarros fumados por dia e o preço de uma carteira. 20. Leia 3 números reais do teclado e verifique se o primeiro é maior que a soma dos outros dois. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 27
21. Leia a velocidade máxima permitida em uma avenida e a velocidade com que o motorista estava dirigindo nela e calcule a multa que uma pessoa vai receber, sabendo que são pagos: a) 50 reais se o motorista estiver ultrapassar em até 10km/h a velocidade permitida (ex.: velocidade máxima: 50km/h; motorista a 60km/h ou a 56km/h); b) 100 reais, se o motorista ultrapassar de 11 a 30 km/h a velocidade permitida. c) 200 reais, se estiver acima de 31km/h da velocidade permitida. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 28
22. Ler 4 números inteiros e calcular a soma dos que forem par. 23. Fazer um algoritmo que informe se um dado ano é ou não bissexto. Obs: um ano é bissexto se ele for divisível por 400 ou se ele for divisível por 4 e não por 100. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 29
24. Escreva um algoritmo que leia dois números que deverão ser colocados, respectivamente, nas variáveis VA e VB. O algoritmo deve, então, trocar os valores de VA por VB e vice-versa e mostrar o conteúdo destas variáveis. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 30
25. Maria quer saber quantos litros de gasolina precisa colocar em seu carro e quanto vai gastar para fazer uma viagem até a casa de sua irmã. Dados extras: - Distância da casa de Maria até sua irmã : 520 km - Seu carro consome 12 litros de gasolina por Km/rodado. - Ela abastece sempre no mesmo posto, onde o preço da gasolina é R$ 2,75 o litro. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 31
26. Fazer um algoritmo para ajudar a bilheteria do metrô. O operador deve informar o tipo do bilhete (unitário, duplo ou 10 viagens) e o valor pago pelo passageiro. O sistema deve mostrar, então, a quantidade de bilhetes possíveis e o troco que o passageiro deve receber. Considere a seguinte tabela de preço: Bilhete unitário... 1,30 Bilhete duplo... 2,60 Bilhete de 10 viagens... 12,00 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 32
27. Escreva um algoritmo para ler o nome e a idade de uma pessoa, e exibir quantos dias de vida aproximados ela possui. Considere sempre anos completos, e que um ano possui 365 dias. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 33
28. Faça um programa que receba o peso de uma pessoa, calcule e mostre: a) o novo peso se a pessoa engordar 15% sobre o peso digitado; b) o novo peso se a pessoa emagrecer 20% sobre o peso digitado. 29. Faça um programa que receba o peso de uma pessoa em quilos, calcule e mostre esse peso em gramas. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 34
30. Faça um programa que solicite ao usuário se ele deseja realizar a conversão de Dólar para Reais ou vice-versa. Em seguida, informe o valor a ser convertido, faça a conversão e exiba o resultado apropriado. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 35
A Estrutura de Multi-Seleção SWITCH A estrutura de seleção IF de seleção única e a estrutura IF/ELSE de seleção dupla. Ocasionalmente, um algoritmo conterá uma série de decisões em que uma variável ou expressão será separadamente testada para cada um dos valores integrais constantes que ela pode assumir e ações diferentes serão executadas. C# oferece a estrutura de seleção múltipla SWITCH para tratar tais tomadas de decisões. A estrutura SWITCH consiste em uma série de rótulos CASE e um caso DEFAULT opcional. A estrutura de seleção SWITCH executa uma de muitas ações diferentes, dependendo do valor de uma expressão inteira. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 36
30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 37
30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 38
A Estrutura de Multi-Seleção SWITCH Erro comum de programação: Esquecer um comando break, quando é necessário um, em uma estrutura switch, é um erro de lógica. Omitir o espaço entre a palavra case e o valor inteiro que está sendo testado, em uma estrutura switch, pode causar um erro de lógica. Boa prática de programação: Forneça um caso default em comandos switch. Os casos não-testados explicitamente em um comando switch sem um caso default são ignorados. É considerada uma boa prática de programação colocar a cláusula default por último. Em uma estrutura switch, quando a cláusula default é listada por último, o comando break não é necessário. Alguns programadores incluem este break por clareza e simetria com outros casos. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 39
Utilizando Switch e a Biblioteca Matemática (Math) 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 40
30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 41
30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 42
Funções comumente usadas da biblioteca matemática (MATH) MÉTODO DESCRIÇÃO EXEMPLO ceil( x ) Arredonda x para o menor inteiro não menor que x ceil( 9.2 ) é 10.0 ceil( -9.8 ) é -9.0 cos( x ) Co-seno trigonométrico de x (x em radianos) cos( 0.0 ) é 1.0 exp( x ) Função exponencial e exp( 1.0 ) é 2.71828 exp( 2.0 ) é 7.38906 fabs( x ) Valor absoluto de x fabs( 5. 1 ) é 5.1 fabs( 0.0 ) é 0.0 fabs( -8.76 ) é 8.76 floor( x ) Arredonda x para o maior inteiro não maior que x floor( 9.2 ) é 9.0 floor( -9.8 ) é -10.0 fmod( x, y ) Resto de x/y como número de ponto flutuante fmod( 13.657, 2.333 ) é 1.992 log( x ) Logaritmo natural de x (base e) log( 2. 718282 ) é 1.0 log( 7.389056 ) é 2.0 log10( x ) Logaritmo de x (base 10) log10 ( 10.0 ) é 1.0 log10( 100.0 ) é 2.0 pow( x, y ) x elevado à potência de y (x y ) pow( 2, 7 ) é 128 pow( 9,.5 ) é 3 sin( x ) Seno trigonométrico de x (x em radianos) sin ( 0.0 ) é 0 sqrt( x ) Raiz Quadrada de x sqrt( 900.0 ) é 30.0 sqrt( 9.0 ) é 3.0 tan( x ) Tangente trigonométrica de x (x em radianos) tan ( 0.0 ) é 0 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 43
31. Melhore o programa anterior para que ele possa também realizar as operações de: Arredondamento; Logaritmo natural e na base 10; Seno trigonométrico; OBS: Não tente reinventar a roda!!! Utilize funções prontas da biblioteca matemática do C#. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 44
32. Escrever um algoritmo que lê como dados de entrada o preço de um produto e seu código de origem e escreva o preço do produto e sua procedência. As procedências são dadas pela tabela abaixo. Caso o código não seja de nenhuma das procedências da tabela, deve ser considerado como produto importado. CÓDIGO 1 Região Sul 2 Região Norte PROCEDÊNCIA 3 Região Sudeste 4 Região Centro-Oeste 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 45
33. Escrever um algoritmo que solicite ao usuário a inserção de 2 números reais. Em seguida, o programa deve mostrar um menu de opções com as quatro operações aritméticas básicas. Dependendo da opção escolhida pelo usuário, o programa deve fazer o cálculo e mostrar o resultado na tela. OPÇÃO 1 Soma 2 Subtração OPERAÇÃO ARITMETICA 3 Multiplicação 4 Divisão 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 46
Exercício Utilizando as outras funções da biblioteca matemática, termine o programa anterior, adicionando as outras duas opções que não foram implementadas: Cosseno Trigonométrico; Tangente Trigonométrica. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 47
A Estrutura de Repetição WHILE Uma estrutura de repetição (também chamada estrutura de looping ou laço de repetição), permite ao programador especificar que uma ação deve ser repetida enquanto alguma condição for verdadeira. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 48
A Estrutura de Repetição WHILE Erros comuns de programação: Não fornecer no corpo de uma estrutura while, uma ação que faça com que a condição na estrutura while se torne false em algum momento normalmente resulta em um erro chamado laço infinito ou loop infinito, no qual a estrutura de repetição nunca termina de ser executada. Escrever a palavra-chave while com um W maiúsculo, como em While, é um erro de sintaxe (lembre-se de que C# é uma linguagem sensível a maiúsculas e minúsculas). Todas as palavras-chave reservadas de C#, tais como while, if e else, contêm somente letras minúsculas. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 49
30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 50
Operadores de Atribuição C# oferece vários operadores de atribuição para abreviar as expressões de atribuição. Por exemplo, o comando: c = c + 3; pode ser abreviado com o operador atribuição com adição += como: c += 3; 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 51
Operadores de Atribuição O operador + soma o valor da expressão à direita do operador ao valor da variável à esquerda do operador e armazena o resultado na variável à esquerda do operador. Qualquer comando da forma: variável = variável expressão operador; onde operador é um dos operadores binários +, -, *, /, ou %, pode ser escrito na forma: variável operador = expressão; 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 52
Operadores de Atribuição Assumindo que: int c = 3, d = 5, e = 4, f = 6, g = 12; Operador de Atribuição A expressão: Equivale a: Valor Final += c += 7 c = c + 7 c = 10 -= d -= 4 d = d - 4 d = 1 *= e *= 5 e = e * 5 e = 20 /= f /= 3 f = f / 3 f = 2 %= g %= 9 g = g % 9 g = 3 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 53
Operadores de Atribuição 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 54
Operadores de Incremento/Decremento C# também fornece o operador unário de incremento ++ e o operador unário de decremento -- Se uma variável c é incrementada por 1, o operador de incremento (++) pode ser usado em vez das expressões c = c+1 ou c += 1 Se um operador de incremento ou decremento é colocado antes de uma variável, é chamado de operador de pré-incremento ou pré-decremento, respectivamente. Se um operador de incremento ou decremento é colocado depois de uma variável, é chamado de operador de pós-incremento ou pós-decremento, respectivamente. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 55
Operadores de Incremento/Decremento Pré-incrementar (ou pré-decrementar) uma variável faz com que a variável seja incrementada (ou decrementada) por 1, sendo o novo valor da variável usado na expressão em que ela aparece. Pós-incrementar (ou pós-decrementar) uma variável faz com que o valor atual da variável seja primeiro usado na expressão em que ela aparece, sendo então, após, o valor da variável incrementado (ou decrementado) por 1. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 56
Operadores de Incremento/Decremento Operador Chamado Exemplo de expressão Explicação ++ pré-incremento ++a ++ pós-incremento a++ -- pré-decremento --b -- pós-decremento b-- Incrementa a por 1 e então usa o novo valor de a na expressão em que a está. Usa o valor corrente de a na expressão em que a está e então incrementa a por 1. Decrementa b por 1 e então usa o novo valor de b na expressão em que b está. Usa o valor corrente de b na expressão em que b está e então decrementa b por 1. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 57
Operadores de Incremento/Decremento 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 58
Operadores de Incremento/Decremento 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 59
A Estrutura de Repetição FOR A estrutura de repetição FOR é controlada através de contadores, e de operadores de incremento e decremento. Assim, o trecho de código dentro da estrutura é executado até que o limite determinado para o contador da estrutura seja alcançado. A inicializaçào, condição de repetição e incremento estão todas incluidas no cabeçalho da estrutura FOR. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 60
A Estrutura de Repetição FOR 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 61
A Estrutura de Repetição FOR 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 62
A Estrutura de Repetição FOR O programa anterior opera como segue: 1. Quando a estrutura FOR começa a ser executada, a variável de controle i é declarada e inicializada com 0 (zero). 2. Então, é verificada a condição de continuação do laço, i <= 10. Como o valor inicial de i é 0, a condição é satisfeita; assim, o comando do corpo imprime o valor de i, ou seja, 0. 3. A variável de controle i é então incrementada na expressão i++ e o laço começa novamente com o teste de continuação do laço. Como a variável de controle agora é igual a 1, o valor final não é excedido e assim o programa executa novamente o comando do corpo. 4. Este processo continua até que a variável de controle i seja incrementada para 11. Isto faz com que o teste de continuação do laço não seja satisfeito e a repetição termine. 5. O programa continua, executando o primeiro comando depois da estrutura FOR (neste caso, imprime uma linha em branco e encerra a execução do programa). 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 63
A Estrutura de Repetição FOR 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 64
34. Utilizando a estrutura WHILE, faça um programa que calcule e imprima os números pares entre 0 e 1000; 35. Utilizando a estrutura WHILE, faça um programa que calcule e imprima os números ímpares entre 0 e 1001; 36. Escreva um programa que acha o menor e o maior número primo entre 0 e 100. 37. Escreva um programa que faça a média de todos os números primos entre 0 e 100. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 65
38. Escreva um programa que calcule e mostre o produto dos inteiros ímpares de 1 a 15. 39. Escreva um programa que localiza o menor de vários números inteiros. Assuma que o primeiro valor lido especifica o número de valores a serem inseridos pelo usuário. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 66
40. Desenvolva um programa em C# que calcule o salário bruto dos empregados de uma empresa. A empresa paga hora normal pelas primeiras 40 horas trabalhadas por cada funcionário e 50% a mais para todas as horas trabalhadas além de 40 horas. Você recebe uma lista dos empregados da empresa, o número de horas trabalhadas por empregado na última semana e o salário-hora de cada empregado. O programa deve aceitar a entrada dessas informações e então determinar e exibir o salário bruto de cada funcionário. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 67
41. Produza duas versões de um programa que escreva n>=0 asteriscos em uma linha sendo o valor n fornecido pelo usuário. A primeira versão deve utilizar o comando for. A segunda versão deve utilizar o comando while. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 68
42 - Escreva um programa em C# para ler o número de lados de um polígono regular, e a medida do lado. Calcular e imprimir o seguinte: Se o número de lados for igual a 3 escrever TRIÂNGULO e o valor do seu perímetro. Se o número de lados for igual a 4 escrever QUADRADO e o valor da sua área. Se o número de lados for igual a 5 escrever PENTÁGONO. Em qualquer outra situação escrever Polígono não identificado. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 69
43 - Fazer um programa em C# para ler vários números inteiros e positivos e calcular e imprimir a média dos números digitados. O programa inicia solicitando ao usuário a quantidade de valores que ele irá digitar posteriormente. Imprimir também o maior valor digitado. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 70
44 - Durante uma corrida de automóveis com N voltas de duração foram anotados para um piloto, na ordem, os tempos registrados em cada volta. Fazer um programa em C# para ler os tempos das N voltas, calcular e imprimir: melhor tempo; a volta em que o melhor tempo ocorreu; tempo médio das N voltas; 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 71
45 - Fazer um programa em C# para ler uma quantidade N de alunos. Ler a nota de cada um dos N alunos e calcular a média aritmética das notas. Contar quantos alunos estão com a nota acima de 5.0. Obs.: Se nenhum aluno tirou nota acima de 5.0, imprimir mensagem: Não há nenhum aluno com nota acima de 5. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 72
46 - Ler 2 valores inteiros, calcular e escrever a soma dos inteiros existentes entre os 2 valores lidos (incluindo os valores lidos na soma). Considere que o primeiro pode ser menor que o segundo e vice-versa. 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 73
47 - Escreva um programa em C# para validar um lote de cheques. O programa deverá inicialmente solicitar a soma do lote e o número de cheques. A seguir deverá ler o valor de cada cheque calculando a soma total. Após a digitação de todos os cheques o programa deverá imprimir as seguintes mensagens: LOTE Ok se a soma informada for igual a soma calculada. Diferença negativa se a soma calculada for menor que a informada. Diferença positiva se a soma calculada for maior que a informada. Observação: O valor da diferença deve ser impresso (caso exista). 30/04/2013 Programação C# ASP.NET - Prof. MSc. Daniel Menin Tortelli 74