A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Prof. Reginaldo Ré reginaldo@utfpr.edu.br http://coinf.cm.utfpr.edu.br Universidade Tecnológica Federal do Paraná – Campus Campo Mourão COINT - Coordenação.

Apresentações semelhantes


Apresentação em tema: "Prof. Reginaldo Ré reginaldo@utfpr.edu.br http://coinf.cm.utfpr.edu.br Universidade Tecnológica Federal do Paraná – Campus Campo Mourão COINT - Coordenação."— Transcrição da apresentação:

1 Prof. Reginaldo Ré reginaldo@utfpr.edu.br http://coinf.cm.utfpr.edu.br
Universidade Tecnológica Federal do Paraná – Campus Campo Mourão COINT - Coordenação do Curso Superior de Tecnologia em Sistemas para Internet Introdução à Programação usando Linguagem C Prof. Reginaldo Ré

2 Aulas adaptadas dos materiais...
Do. Prof. Rogério Aparecido Gonçalves Do Prof. Leandro Galvão De Allan Diego Silva Lima

3 Aula 2 - Sumário Funções Matemáticas Estruturas de Controle
Estruturas condicionais (ou de seleção, ou de decisão) Simples Composta Múltipla escolha Estruturas de repetição Com condição no início Com condição no final Com variável de controle

4 Valor absoluto abs(<número>); abs(-4); abs(4); abs(num);
abs: Valor absoluto de um número inteiro. Definida na biblioteca stdlib.h abs(<número>); abs(-4); abs(4); abs(num); abs(num/2); abs(-num);

5 Valor absoluto fabs(<número real>); fabs(-4.123); fabs(4./9.);
fabs: Valor absoluto de um número real. Definida na biblioteca math.h fabs(<número real>); fabs(-4.123); fabs(4./9.); fabs(num); fabs(num/.2); fabs(-num); 51

6 Potenciação pow: operação de potenciação.
exp: número neperiano elevado ao argumento. Resultado é sempre do tipo float, independente do tipo do argumento. Definidas na biblioteca math.h pow(base, expoente); // base^(expoente) exp(num); // e^(num)

7 Logaritmo Definidas na biblioteca math.h
log: logaritmo natural (base neperiana). log10: logaritmo na base 10. Resultado é sempre do tipo float, independente do tipo do argumento. log(valor); log10(valor); log2_10 = log(10)/log(2);

8 Raiz quadrada sqrt: raiz quadrada (square root).
Resultado é sempre do tipo float, independente do tipo do argumento. Definida na biblioteca math.h sqrt(número); 52

9 Funções Trigonométricas
Definidas na biblioteca math.h sin: seno de um ângulo. cos: cosseno de um ângulo. tan: tangente de um ângulo. sin(angulo); cos(angulo); tan(angulo);

10 Funções Trigonométricas
Definidas na biblioteca math.h asin: arco-seno de um valor. acos: arco-cosseno de um valor. atan: arco-tangente de um valor. asin(valor); acos(valor); atan(valor);

11 Funções Trigonométricas Hiperbólicas
Definidas na biblioteca math.h sinh: seno hiperbólico de um valor. cosh: cosseno hiperbólico de um valor. tanh: tangente hiperbólica de um valor. sinh(valor); cosh(valor); tanh(valor); 53

12 Arredondamento round: arredonda para o inteiro mais próximo.
ceil: arredonda para o menor inteiro maior que o número. floor: arredonda para o maior inteiro menor que o número. Resultado é sempre do tipo float. 54

13 Estrutura Condicional ou de Seleção
Realizam a execução de um conjunto de comandos de acordo com o valor de uma expressão. Servem para alterar o fluxo de execução de um programa baseado no valor, verdadeiro ou falso, de uma expressão lógica.

14 Estrutura Condicional Simples
Na linguagem C, a estrutura condicional simples possui a seguinte sintaxe: Altera o fluxo de controle do programa. Uso: Quando é necessário escolher entre dois caminhos. Se a expressão for verdadeira (qualquer valor diferente de zero), serão executados os comandos if (<expressão>){ <comandos> }

15 Estrutura Condicional Composta
Na linguagem C, a estrutura condicional composta possui a seguinte sintaxe: Altera o fluxo de controle do programa. Uso: Quando é necessário escolher entre dois caminhos. Se a expressão for verdadeira, serão executados os comandos1, caso contrário (condição for falsa), seão executados os comandos2. if (<expressão>){ <comandos1> } else { <comandos2>

16 Estrutura Condicional Composta
Quando temos estruturas condicionais presentes em blocos de comandos de outras estruturas condicionais, chamamos de estruturas aninhadas ou encadeadas: if (<expressão>){ <comandos1> } else{ <comandos2> <comandos3> <comandos4>

17 Estrutura Condicional Composta
Ambigüidade: na falta de chaves, a linguagem C associa o else sempre ao último if. Portanto, para que a construção funcione como desejado, pode-se resolver o problema usando bloco. x = 2; if (x < 2) if (x >= -3) printf("\n x está entre [-3;1]"); else printf("x é maior que 1"); x = 2; if (x < 2){ if (x >= -3) printf("\n x está entre [-3;1]"); } else printf("x é maior que 1");

18 Exemplo

19 Operador Condicional Exp1 ? Exp2 : Exp3;
O operador ternário ? possui a seguinte sintaxe: Exp1 é avaliada: Se for verdadeira, Exp2 se torna o valor da instrução. Se for falsa, Exp3 se torna o valor da instrução. Exp1 ? Exp2 : Exp3;

20 Exercício Considere um par de valores (x, y)
Eles representam as coordenadas de um ponto no plano Determinar: o quadrante ao qual pertence o ponto, ou se está sobre um dos eixos cartesianos

21 Desafio Escrever um programa que dado 3 números inteiros como entrada, mostra como saída: qual é o maior número qual é o número intermediário qual é o menor número. Parece fácil..., mas será que é ? ex01

22 Estrutura Condicional de Múltipla Escolha
Instrução de seleção de múltipla escolha: switch (<expressão_ou_valor>){ case Constante1: <comandos1> break; case Constante2: <comandos2> ... default: <comandosN> }

23 Estrutura Condicional de Múltipla Escolha
Funcionamento do comando switch: Analisa a expressão ou valor. Caso seja igual a Constante1, então executa “comandos1” e vai para o final do switch. Caso seja Constante2, então executa “comandos2” e vai para o final do switch. Assim sucessivamente... Caso não seja nenhuma das alternativas, vai para o default, executa “comandosN” e encerra o switch.

24 Estrutura Condicional de Múltipla Escolha
O parâmetro do switch deve ser int ou char. O valor após o case dever ser uma constante (não pode ser uma variável). Instrução break: Faz com que aconteça a saída imediata daquela estrutura (no caso, o comando switch). A execução do programa continua com a primeira instrução depois da estrutura. Sua ausência faz o controle passar ao próximo case, o que não é desejado.

25 Exercício Os funcionários de uma empresa receberam um aumento de salário: Técnicos: 50% Gerentes: 30% Demais: 20% Escrever um programa que receba como entrada o salário atual e o cargo do funcionário, e apresente o novo salário após o aumento.

26 Exercício A nota final de um estudante é calculada a partir de três notas parciais. Faça um programa que receba e calcule e mostre a média aritmética e o conceito de acordo com a tabela:

27 Repetição por condição no início
Permite que um certo trecho de programa seja executado ENQUANTO uma certa condição for verdadeira. Enquanto condição for verdadeira (qualquer valor diferente de zero), será executado o comandos_a_repetir; caso contrário (condição for falsa), executará o primeiro comando após o while. while (<condição>){ <comandos_a_repetir> } <comandos_após_laço_while>

28 Repetição por condição no início
Funcionamento: Testar a condição. Se a condição for falsa, então sair do laço. Se a condição for verdadeira, então executar cada um dos comandos do interior do laço. Após executar o último comando do laço while, voltar ao passo 1.

29 Repetição por condição no início
O while deve ser usado sempre que: Não soubermos exatamente quantas vezes o laço deve ser repetido O teste deva ser feito antes de iniciar a execução de um bloco de comandos Houver casos em que o laço não deva ser repetido nenhuma vez antes do teste da condição Atenção: As variáveis usadas no teste devem ser inicializadas antes do teste.

30 Repetição por condição no fim
Permite que um certo trecho de programa seja executado ATÉ QUE uma certa condição deixe de ser verdadeira: Executará o comandos_a_repetir enquanto condição for verdadeira (qualquer valor diferente de zero); caso contrário (condição for falsa), executará o primeiro comando após o do...while. do{ <comandos_a_repetir> } while (<condição>); <comandos_após_laço_do-while>

31 Repetição por condição no fim
Funcionamento: Executar os comando dentro do bloco do-while. Testar a condição. Se a condição for falsa, então sair do laço. Se a condição for verdadeira, então retornar para o passo 1.

32 Repetição por condição no fim
O comando do-while deve ser usado sempre que: Não soubermos exatamente quantas vezes o laço deve ser repetido O teste deva ser feito depois da execução de um bloco de comandos O bloco de comandos deve se executado pelo menos uma vez

33 Exercícios Ler um número e verificar se este é ou não um número primo.

34 Repetição por contagem
Permite que um certo trecho de programa seja executado um número determinado de vezes. Executará o comandos_a_repetir enquanto o valor da variável de controle não exceder o valor máximo determinado. for (comandos_inic; condição_teste; incre/decremento) { <comandos_a_repetir> } <comandos_após_laço_for>;

35 Repetição por contagem

36 Repetição por contagem
Funcionamento: Executar os comandos de inicialização. Testar a condição. Se a condição for falsa então sair do laço for. Se a condição for verdadeira então executar os comandos que estão subordinados ao for. Executar os comandos de incremento/decremento. Voltar ao passo 2.

37 Repetição por contagem
Observações: Os comandos de inicialização são executados apenas uma vez. O contador é incrementado/decrementado sempre ao final da execução do bloco. O teste é feito sempre antes do início da execução do bloco de comandos.

38 Repetição por contagem
O comando for deve ser usado sempre que: Soubermos exatamente quantas vezes o laço deve ser repetido. O teste deva ser feito antes da execução de um bloco de comandos. Houver casos em que o laço não deva ser repetido nenhuma vez.

39 Repetição por contagem
Flexibilidade do comando for Se nenhuma inicialização é necessária, pode-se omitir a declaração for ( ; condição_teste; incre/decremento)

40 Repetição por contagem
Flexibilidade do comando for Se condição_teste é omitida, o comando for pode ficar em um laço infinito. for (comandos_inic; ; incre/decremento)

41 Repetição por contagem
Flexibilidade do comando for Se incre/decremento é omitido, deve-se, atualizar a variável de laço em um comando dentro do laço. for (comandos_inic; condição_teste; )

42 Repetição por contagem
Comandos for aninhados Um comando for pode ser utilizado dentro de outro comando for. Cuidados devem ser tomados para não aumentar o tempo de execução do algoritmo.

43 Repetição por contagem
Cálculo de séries Determinar o termo geral. Determinar valor inicial do contador. Determinar valor final do contador.

44 Exercícios Faça um programa para calcular e mostrar o valor de S:

45 Exercícios Faça um programa que receba como entrada um numero N qualquer. O programa deve calcular e mostrar a sequencia de Fibonacci até N. {1,1,2,3,5,8,13,21,34,55,89,144,233,377,...}


Carregar ppt "Prof. Reginaldo Ré reginaldo@utfpr.edu.br http://coinf.cm.utfpr.edu.br Universidade Tecnológica Federal do Paraná – Campus Campo Mourão COINT - Coordenação."

Apresentações semelhantes


Anúncios Google