Conceito de procedimentos e funções

Documentos relacionados
Strings. Introdução. Definição de strings. Criação/Declaração de strings. Inicialização de strings. Manipulação de strings. Exemplos.

Linguagem C. André Tavares da Silva.

Funções de Entrada e Saída

Conhecendo a Linguagem de Programação C

Introdução à Programação em C Input / Output

#include <stdio.h> main() { int i; // Cabeçalho for (i = 1; i <=20; i++) putchar( * ); putchar( \n ); puts( Numeros entre 1 e 5 );

11 - Estrutura de um programa em C

ALGORITMOS E ESRUTRA DE DADOS I. Ponteiros Passagem por Valor e Referência Alocação de Memória

Variáveis, Tipos de Dados e Operadores

INF 1620 P1-11/04/08 Questão 1 Nome:

Faculdade de Computação

Sintaxe. Observações: #include <stdio.h> #include <conio.h> void main ( ) { int num, dobro; clrscr ( ); printf ( Digite i um número: );

Linguagem C Controle do Fluxo de Execução. Lógica de Programação

Estrutura de um programa em linguagem C

Linguagem de Programação C

ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO

Funções getchar() e putchar()

PROGRAMAÇÃO INSTRUÇÕES DA LINGUAGEM C

3.1 - Funções para manipular dados de entrada e saída padrão

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO

INF 1620 P1-17/09/05 Questão 1 Nome:

INF 1620 P1-18/09/04 Questão 1 Nome:

Algoritmos e Programação

(SCC-0120) Linguagem C

Escreva a função e_caracter que verifica se um determinado caracter é um numero ou não. Escreva um Programa de teste da função.

Declarações. C diferencia letras maiúsculas de minúsculas! int n, N; n é diferente de N!

Aula 3 Constantes e funções de E/S

Linguagem C (estruturas condicionais)

Linguagem C: Introdução

Linguagens de Programação I

UNIVERSIDADE DO VALE DO RIO DOS SINOS - UNISINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS - CENTRO 06. Funções, variáveis, parâmetros formais

Programação em C. Variáveis e Expressões. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação

Computação Informática

Programação. MEAer e LEE. Manipulação de ficheiros de texto. Bertinho Andrade da Costa. Instituto Superior Técnico. 2010/2011 1º Semestre

Sumário. Ficheiros. Ficheiros

Programação 1. Atribuição, operadores aritméticos, entrada de dados. Técnico em Eletrônica Semestre 5 02

scanf () Funções de Entrada e Saída Formatada leitura de dados; formato geral: scanf (string_de_controle,lista_de_argumentos);

Introdução à Programação

Introdução à Computação

Introdução a Programação de Jogos

ponteiros INF Programação I Prof. Roberto Azevedo

Algoritmos RESUMO - LINGUAGEM C

Introdução a Computação

INF 1620 P2-14/10/05 Questão 1 Nome:

Introdução a Programação. Tipos Estruturados de Dados

SIMULADO PROVA. Questões Nota Revisão 1 (2.0) 2 (1.0) 3 (2.0) 4 (2.0) 5 (2.0) P1 (9,0)

INF 1620 P3-29/06/04 Questão 1 Nome:

Introdução a Linguagem C. Prof. Me. Hélio Esperidião

Métodos Computacionais. Operadores, Expressões Aritméticas e Entrada/Saída de Dados

Computação 2. Aula 2. Profª. Fabiany Vetores e Matrizes

Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Segunda Aula Prática - 3 de setembro de 2010

INF1007: Programação 2. 0 Revisão. 06/08/2015 (c) Dept. de Informática - PUC-Rio 1

Introdução à Programação. Operadores, Expressões Aritméticas e Entrada/Saída de Dados

INF 1620 P3-27/11/04 Questão 1 Nome:

INF 1620 P1-04/10/03 Questão 1 Nome:

Introdução à Programação em C

Introdução a Linguagem C

Introdução à Linguagem C

Comandos de entrada. e saída. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada.

Métodos Computacionais. Tipos Estruturados

Programação de Computadores I Funções de Repetição da Linguagem C PROFESSORA CINTIA CAETANO

INF 1620 P4 30/06/07 Questão 1 Nome:

Linguagem C. Prof.ª Márcia Jani Cícero

Programação: Vetores

Transcrição:

Tópicos Introdução Como funcionam as funções Declaração de funções Exemplo de funções 1

Introdução As funções, são unidades de código desenhadas para cumprir uma determinada tarefa. Até agora, já utilizamos algumas funções printf(); - Permite escrever um inteiro, um real, um carácter ou uma cadeia de caracteres no ecrã. putchar(); - Permite imprimir um carácter no ecrã. puts(); - Permite escrever uma cadeia de caracteres no ecrã. scanf(); - Permite ler do teclado um inteiro, um real, um carácter ou uma cadeia de caracteres. getchar(); - Permite ler um carácter do teclado gets(); - Permite ler uma cadeia de caracteres do teclado exit(); - Permite terminar a execução de um programa log(); - Calcula o logaritmo decimal de um número sin(); - Calcula o seno de um número qualquer etc 2

Como funciona uma função O código da função só é executado quando a função é invocada algures no programa que está ligado a função. Sempre que a função é invocada, o programa que a invocou fica suspenso temporariamente, em seguida são executadas todas as instruções presentes no corpo da função. Uma vez terminada a função, o controlo de execução do programa volta no ponto em que essa função foi invocada O programa que invoca uma função pode enviar dados para função. Esses dados são recebidos pela função e armazenados em variáveis locais, essas variáveis locais chamam-se parâmetros das funções. Depois da função terminar o seu funcionamento, a função pode devolver um valor para o programa que a invocou. 3

Declaração de funções Estrutura de um programa em C (lembram-se?) Directivas de Pré-Processamento Declarações Globais int main(void) Declarações das funções Definições Locais Instruções Exemplo de um programa com uma função para o calculo da área de um circulo #include <stdio.h> #include <stdlib.h> #include <math.h> #define PI 3.14159 int main() float Area; int Raio; printf( insira o raio: ); scanf( %d,&raio); Area = calcula_area_circulo(raio); printf( %.3f,Area); exit(0); 4

#include <stdio.h> #include <stdlib.h> #include <math.h> #define PI 3.14159 Declaração de funções Declaração de funções As variáveis Raio e raio são completamente Independentes e até podem ter o mesmo nome int main() float Area; int Raio; printf( insira o raio: ); scanf( %d,&raio); Area = calcula_area_circulo(raio); printf( %.3f,Area); exit(0); Operação de atribuição de valores entre variáveis Raio raio Operação de atribuição de valores entre variáveis Area area 5

#include <stdio.h> #include <stdlib.h> #include <math.h> #define PI 3.14159 int main() Declaração de funções A variável area apenas é visível dentro da função calcula_area_circulo A instrução return permite terminar a execução da função e voltar ao programa que a invocou float Area; int Raio; printf( insira o raio: ); scanf( %d,&raio); Area = calcula_area_circulo(raio); printf( %.3f,Area); exit(0); Operação de atribuição de valores entre variáveis Area area 6

Declaração de funções tipo nome_da_função(declaração dos parâmetros de entrada) declaração das variáveis locais; intruções; return (valor); Parâmetros de entrada da função Volta para o programa que chamou essa função Variáveis que só são visíveis pela função Obedece a regra semelhante a regra de atribuição de nomes às variáveis O tipo de retorno pode ser int, float, double, char ou void 7

Quais a razões que nos levam a utilizar ou escrever as funções? Reduzir a complexidade de um programa Evitar a repetição de código dentro de um programa As funções normalmente devolvem um valor através da instrução return. A instrução return não é obrigatória nas funções As funções que não devolvem qualquer valor são chamas procedimentos ou procedures.(estas funções são do tipo void) 8

Exemplo de funções standard da linguagem C Essas são funções predefinidas em linguagem C pow() putchar() exit() printf() scanf() sin() float pow(float x, float y) int putchar(int ch) void exit(int code) int printf(char *f,... ) int scanf(char *f,...) double sin(double x) 9

Conceito de procedimentos e funções Exemplo de funções Essas são funções são criadas pelo programador Objectivo: calcular a área do circulo Parâmetros de entrada: valor do raio A função devolve o valor da área do circulo float calcula_area_triangulo(float base, float altura) return base*altura/2; Objectivo: calcular a área do triangulo Parâmetros de entrada: valor da base e o valor da altura. A função devolve o valor da área do triangulo void factorial(int x) int i,x,n=1; for( i = 1 ; i <= x ; i++ ) n = n*i; printf("%d",n); return; Objectivo: calcular o factorial de um número inteiro positivo. Parâmetros de entrada: um valor inteiro. A função não devolve nada (void) Então é um procedimento 10

#include <stdio.h> #include <stdlib.h> ; void factorial(int x); Onde escrever as funções? As funções podem ser colocadas em qualquer local de um ficheiro desde que se colocam os protótipos no inicio do ficheiro int main() int raio = 1; int n = 3; printf( A. Circulo: %.3f\n, calcula_area_circulo(raio)); factorial(n); exit(0); void factorial(int x) int i,x,n=1; for( i = 1 ; i <= x ; i++ ) n = n*i; printf( factorial de %d é : %d\n",x,n); return; 11