Baixe o app para aproveitar ainda mais
Prévia do material em texto
Introdução à Programação / Programação e Algoritmia Linguagem C Léxico main include printf scanf int signed unsigned short long double sizeof char getchar Operadores = + - * / % Funções math.h Sin Cos Tan Asin Exp Sqrt Log Log10 pow Sintaxe da Linguagem C Declaração de variáveis tipo nome [= valor]; int idade ; Declaração de constantes const tipo nome = valor; const double PI = 3.14; Processamento Expressões computacionais variáveis , constantes , operadores, funções, parêntesis X = ( -b + sqrt( b*b – 4 * a * c ) ) / ( 2 * a ); Leitura de dados scanf(“formato”,&variável); Escrita de informação printf(“formato”, variáveis,expressões); Representação de Algoritmos Exercício Construa um programa que calcule a área de uma figura, identificada com a cor verde na figura. A figura é constituída por um rectângulo que contém a maior elipse possível. que por sua vez contém o maior triângulo possível e o maior círculo inscrito no espaço deixado pelo triângulo na elipse. Identificar o input Identificar o output Construir o algoritmo Fluxogramas Inicio / fim do algoritmo Todos os fluxogramas têm um inicio e um fim Leitura de variáveis Introdução de dados Calculo de expressões Atribuição de valores a variáveis Escrita de informação Apresentação de informações ao utilizador Linhas de fluxo Definem a ordem de execução dos símbolos Calculo da área do rectângulo Introdução de dados Processamento dos dados Escrita de informação Fluxograma Introdução de dados Processamento Impressão de resultados Fluxograma -> C Teste do programa Qual a área desta figura 4 2 Teste do programa Qual a área desta figura 2 4 ERRO Algoritmo Errado !!!! Controlo de execução Estruturas de decisão Valores lógicos Valores Verdadeiro Falso Em C não existe nenhum tipo especifico de dados para armazenar os valores lógicos Em C Falso Representado pelo valor zero (0) Exemplo : 0 Verdadeiro Tudo aquilo que seja diferente de zero Exemplo : 2 , -3 , ‘a’ , 0.001 Expressões lógicas Expressões cujo resultado seja verdadeiro ou falso A terra é quadrada O gelo apresenta-se no estado sólido O valor 20 é menor que o valor 14 O valor de PI é superior a 3 e inferior a 4 Um aluno passa á disciplina se a nota da pauta for superior a 9 ou tiver equivalência. Expressões lógicas Literais (verdadeiro ou falso) Operadores relacionais Operadores lógicos Operadores relacionais Uma expressão que contenha um operador relacional devolve sempre como resultado 1 se o resultado for VERDADEIRO e 0 se o resultado for FALSO ERRO FREQUENTE: o operador de comparação é == e o operador de atribuição é = Decisão condicional As instruções de um programa são executadas conforme o resultado de uma expressão condicional Decisão condicional Conector de fluxo Linguagem C if-else Sintaxe if( condição) { Instruções se a condição for verdadeira } else { Instruções se a condição for falsa } Blocos de instruções Conjunto de instruções que são executadas de forma sequencial. Os blocos são indentados O que é isso Pretende representar de forma visualmente simples um bloco de instruções que são executadas de forma sequencial. Para quê Facilitar a leitura de um programa Porquê Ajuda a corrigir erros de sintaxe e de lógica Blocos com apenas uma instrução podem omitir as chavetas As chavetas definem um bloco de instruções { instrução instrução } Calculo da Área Operador ? : Sintaxe Condição ? Valor se verdade : valor se falso ; if / else A componente else pode ser facultativa if( condição) { Intruções se a condição for verdadeira } Condição Instruções Fluxograma VF A instrução exit(0) termina o programa Exercício Construa uma aplicação que solicite ao utilizador dois números e imprima-os na consola por ordem crescente Identifique as entradas e as saídas Encontre um algoritmo Desenhe o fluxograma Construa o programa Teste o programa Introduza dois números: X1 = 20 X2 = 14 Números ordenados: 14 20 Introduza dois números: X1 = 2 X2 = 17 Números ordenados: 2 17 Exercício Algoritmo para a troca do valor entre duas variáveis If/else encadeados Condição Instruções V Instruções F CondiçãoCondição InstruçõesInstruções V InstruçõesInstruções F CondiçãoCondição InstruçõesInstruções V InstruçõesInstruções F Exercício Construir um programa que solicite o estado civil de uma pessoa (s, c, d, v) e o imprima por extenso (solteiro , casado, divorciado, viuvo) Input Output Algoritmo Programa Teste Operadores lógicos Multiplicação Lógica Soma Lógica Negação Lógica Expressões lógicas 2 < 3 && 3 < 5 2 < 3 && 4 < 2 2 < 3 || 3 < 4 && 4 >5 !( 2 != 3) && !( 4 >3) Prioridade dos operadores lógicos Escolha múltipla (switch) switch( variavel ) { case v1 : Intruções 1; . . . default: Instruções d; } variavel Intruções 1 Intruções 2 Intruções d v1 v2 Intruções v defeito Estado civil Escolha múltipla (switch) variavel Intruções 1 Intruções 2 Intruções d v1 v2 Intruções v defeito Instrução break A instrução break permite terminar a execução de um caso dentro de um switch. Escolha múltipla (switch) variavel Intruções 1 Intruções 2 Intruções d v1 v2 Intruções v defeito break break break Resumo No C não existem constantes simbólicas para representar valores lógicos O conteúdo de uma variável ou expressão pode ser utilizado como valor lógico As expressões lógicas são compostas por operadores relacionais e/ou lógicos > < >= <= == != && || ! A instrução if/else permite alterar o fluxo de execução de um programa de acordo com o valor de uma expressão condicional O else de uma instrução if/else é opcional Os blocos de instruções são apresentados dentro de chavetas e devem ser escritos de forma identada A instrução switch permite fazer a escolha entre valores de uma variável de uma forma compata A instrução break termina a instrução switch. Exercícios Exercícios Construa uma aplicação que solicite ao utilizador três números e imprima-os na consola por ordem crescente Identifique as entradas e as saídas Encontre um algoritmo Desenhe o fluxograma Construa o programa Teste o programa Introduza dois números: X1 = 20 X2 = 14 X3 = 10 Números ordenados: 10 14 20 Introduza dois números: X1 = 2 X2 = 17 X3 = 10 Números ordenados: 2 10 17 Exercícios Pretende-se um programa que leia dois números e uma operação ( + , - , * ou /) e imprima o resultado da operação sobre os números. Calculadora : n1 operador n2 = resultado n1 = 10 n2 = 20 Operador: / Resultado: 0.5 Exercício Pretende-se um programa que dado o número de anos de uma pessoa escreve a sua faixa etária. Criança - [0 12] Adolescente [13 17] Adulto - [18 64] idoso - [65 . . .[ Faixa etária de pessoas Idade : -4 Erro na introdução da idade Faixa etária de pessoas Idade : 10 Criança Faixa etária de pessoas Idade : 50 Adulto Faixa etária depessoas Idade : 120 Idoso Exercícios Pretende-se calcular as raízes de um polinómio com grau inferior a 3 Desenhe o fluxograma Construa o programa a acbb x 2 42 cbxax 2 Exercício Construa um programa que solicite ao utilizar uma quantia em dinheiro e de seguida imprima o mínimo de moedas que são necessárias para fazer essa quantia.
Compartilhar