C++ - Funções. Forma geral das funções C++

Documentos relacionados
Linguagem C. Funções

Módulo 7. Funções. Algoritmos e Estruturas de Dados I C++ (Rone Ilídio)

Estrutura de dados 1. Ponteiros

Introdução à Programação Aula 09. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

Permite modularidade (dividir programa em partes): Facilita a depuração (debug) e portabilidade.

ESTRUTURA DE DADOS (TCC )

Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO

Métodos Computacionais. Comandos Condicionais e de Repetição em C

Módulo 5. Instruções if e switch. Algoritmos e Estruturas de Dados I C++ (Rone Ilídio)

C++ - Matrizes. Observ.: C++ não avisa quando o limite de uma matriz foi excedido. Providenciar a verificação é responsabilidade do programador.

Linguagem C Funções. André Tavares da Silva.

DEM-Sec.Sistemas Tipos Abstractos de Informação 2006 / Programação

Algoritmos e Estruturas de Dados I. Universidade Federal de São João del-rei Pedro Mitsuo Shiroma Sala 119 Bloco 3

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: funções

ECT1203 Linguagem de Programação

Computação eletrônica: Funções

Puca Huachi Vaz Penna / José Américo T. Messias

Métodos Computacionais. Funções, Escopo de Variáveis e Ponteiros

Anhanguera Educacional S.A. Centro Universitário Ibero-Americano

Ponteiros de Variáveis

Linguagem de Programação III

Tipos de Dados, Variáveis e Entrada e Saída em C. DCC 120 Laboratório de Programação

Algoritmos e Programação

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

Exercícios... Capítulo 15. if62c. prof. Robinson Vida Noronha. Monday, March 23, 15

Fundamentos de Programação. Linguagem C++ aula II - Variáveis e constantes. Prof.: Bruno Gomes

Aula 12: Funções. CI208 - Programação de Computadores. Prof. MSc. Diego Roberto Antunes

Linguagem de Programação I. Aula 10 Funções

LINGUAGEM C: FUNÇÕES FUNÇÃO 04/07/2017. Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa.

Modularidade - Funções e Procedimentos

Módulo 1. Introdução. AEDS I C++ (Rone Ilídio)

1. Selecione a Estrutura de Dados que melhor representa os diretórios ou pastas de arquivos do computador.

Conceitos básicos de programação

Estruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões.

Introdução à Programação em C (I)

facilita o trabalho em equipe, com diferentes grupos trabalhando em cada módulo independente.

INF1005: PROGRAMAÇÃO I. Capítulo 12. Ivan Mathias Filho Funções Matemáticas

Programação I Funções. Prof. Carlos Alberto

Introdução à Programação. Funções e Escopo de Variáveis

Linguagem de Programação

LINGUAGEM C: FUNÇÕES FUNÇÃO 08/01/2018. Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa.

Utilizando cin: primeiros passos

Capítulo 4: Programando com Funções. Pontifícia Universidade Católica Departamento de Informática

2ª Licenciatura AED1 e PC1 Prof. Eduardo 1 1 MODULARIZAÇÃO

Introdução à Programação em C (I)

Introdução a Programação. Ponteiros e Passagem de Argumentos por Referência

Linguagem C. André Tavares da Silva.

Disciplina de Algoritmos e Programação

Linguagem C Princípios Básicos (parte 1)

Introdução à Programação

3. Linguagem de Programação C

#include <stdio.h> Void main() { printf( Cheguei!\n"); } INTRODUÇÃO A LINGUAGEM C

Função. Unidade autônoma do programa desenvolvida para executar alguma atividade. A estrutura de uma função C é semelhante à da função main( )

Aula 26: Estruturas heterogêneas

Aula 5 Oficina de Programação Introdução ao C. Profa. Elaine Faria UFU

Aula 08: Funções (Parte II)

Introdução à Programação em C

Tipos Básicos. Operadores de Incremento e Decremento. Operador Sizeof. Estruturas de Dados Aula 2: Estruturas Estáticas

Algoritmos e Estruturas de Dados I Prof. Eduardo 1 1 MODULARIZAÇÃO

Computação 2. Aula 7. Profª. Fabiany Ponteiros

Subprogramas. Prof. Carlos Lopes

Estruturas de Dados Aula 2: Estruturas Estáticas. Tipos Básicos. Quantos valores distintos podemos representar com o tipo char?

ponteiros INF Programação I Prof. Roberto Azevedo

Estruturas de Dados Aula 2: Estruturas Estáticas 02/03/2011

Estruturas de Dados. Módulo 4 Funções. 9/8/2005 (c) Dept. Informática - PUC-Rio 1

Aula 15: Introdução a Funções

5 Funções. Site: BAC004 at Source page: 5 Funções at

Programação Orientada a Objetos Aula I Declaração de classes, métodos construtores. Prof.: Bruno E. G. Gomes IFRN

Capítulo 3: Programando com Funções

Revisão da Linguagem C Prof. Evandro L. L. Rodrigues

Aula 07 Introdução à Programação Subprogramas

Linguagem C++ Estruturas de controle Parte II Estruturas de repetição

Linguagem de Programação C

Comandos de controle de fluxo: if / for / while / do while.

Índice. Índice... 0 Passagem de parâmetros... 3 Procedures... 5 Funções... 5

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

Modularidade - Fun ções e Procedimentos

Funções. tipo_devolvido nome_da_função(lista_de_parâmetros) { declarações locais; instruções }

SCC120 - Capítulo 5 Funções em C

Programação : Engenharia Informática 6619 : Tecnologias e Sistemas de Informação. Cap. 6 Subprogramas I Subprogramas I

Introdução à Programação

Introdução à Programação. Introdução a Linguagem C. Prof. José Honorato F. Nunes

Introdução à Linguagem C

Programação Mestrado Integrado em Engenharia Aeronáutica 1º ano, 1º semestre. T. 05 Subprogramas I

Linguagem de Programação C. Funções e Procedimentos

Introdução à Programação. Expressões Booleanas e Comandos Condicionais

Características da Linguagem C

FUNÇÕES EM C Material adaptado da profa Silvana Maria Affonso de Lara

Aula 07: Introdução a Funções

Fábio da Fontoura Beltrão Felipe Augusto Chies Lucas Fialho Zawacki Marcos Vinicius Cavinato Matheus de Carvalho Proença

Introdução à Programação. Estruturas de Repetição

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

Funções. definição, declaração e chamada

Algoritmos e Introdução à Programação. Lógica e Linguagem de Programação

3. Linguagem de Programação C

DAS5102 Fundamentos da Estrutura da Informação

Programação Orientada a Objetos

Programação Orientada a Objetos para Redes de Computadores

Programação Orientada a Objetos para Redes de Computadores. Protótipo de uma Função e Coerção de Argumentos

Transcrição:

C++ - Funções Conjunto de instruções para executar uma tarefa particular, agrupadas numa unidade com um nome para referenciá-las. O código é agregado ao programa uma única vez e pode ser executado muitas vezes. tipo nome ( declaração dos parâmetros ) { instrução_1; instrução_2;... instrução_n; } Ex.: Função simples Forma geral das funções C++ int celsius (int fahr); //Protótipo (declaração) void main( ) { int c, f; cout << \ndigite a temperatura em Fahrenheit : ; cin >> f; c = celsius (f) ; // Chamada à função cout << \ncelsius = << c; } int celsius (int fahr) { int c; c = (farh - 32) * 5/9; return c; } // Definição da função Protótipo de função É a declaração de uma função. Deve preceder sua definição e sua chamada. Pode ser: externo - escrito antes de qualquer função, como no exemplo anterior. É visível para todas as funções que a chamam. local - escrito no corpo de todas as funções que a chamam, antes da chamada. Void main ( ) { int celsius ( int fahr);... omitido - funções definidas antes de serem chamadas não necessitam de protótipo.

Bons programadores escrevem os protótipos de todas as funções, criando para isto, inclusive arquivos de cabeçalho. No protótipo, o nome dos parâmetros é facultativo mas o tipo é obrigatório. Ex.: int celsius (int); Tipos de funções É determinado pelo valor que ela retorna via comando return e não pelo tipo de argumentos que ela recebe. Comando return Termina a execução da função e retorna o controle para a instrução seguinte do código de chamada. Sintaxe : return; return expressão; return (expressão); Ex.: int celsius ( int fahr) { return (fahr - 32) * 5/9; } Observ.: Uma função sem comando return termina quando encontra a chave } que indica fim da função. O comando return pode retornar somente um único valor para a função que chama. Parâmetros da função São as informações transmitidas para uma função. Passagem de parâmetros: por valor por referência Por valor : a função cria uma nova variável para receber o valor passado. Ex.: fahr na função celsius. Por referência : através do operador unário de referência & que cria outro nome para uma variável já criada. Assim a função acessa as variáveis da função que chamou, possibilitando o retorno de mais de um valor. Ex.: Função que reajusta o preço de um produto em 20%, retornando o novo preço e o valor do aumento. void reajusta20 ( float& p, float& r); // Protótipo void main ( ) { float preco, aumento; do { cout << \ninsira preco atual (0 encerra) : ; cin >> preco;

reajusta20 (preco, aumento); // Chamada cout << Preco novo : << preco << \naumento : << aumento; } while (preco!= 0.0); void reajusta20 ( float& p, float& r) { r = p*0.2; p = p*1.2; } Referências constantes Utilizadas quando a função não necessita alterar as variáveis. Ex.: int n = 456; const int& n1=n; Estas declarações fazem de n1 um nome read -only para n. Vantagem : Economia de memória e preservação da variável pois: passagem por valor : cria cópia (gasta mais memória) passagem por referência : torna a variável vulnerável (pode ser modificada) Programa com várias funções Um programa pode conter várias funções e qualquer função pode chamar qualquer outra. Não é permitido definir uma função dentro de outra. São módulos independentes. Ex.: Centraliza um texto com moldura void linha (int n); void espacos (int n); void main ( ) { cout << \n\n ; espacos (30); linha (21); cout << \n ; espacos (30); cout << * Feliz Aniversario * \n ; espacos (30); linha (21); } void linha (int n) { for (int i=0; i<n; i++) cout << * ; } void espacos (int n) { for (int i=0; i<n; i++) cout << ;

} Ex.: Soma dos quadrados de dois números float somasqr (float m, float n); float sqr (float z); float soma (float m, float n); Função como argumento de outra função void main ( ) { float a, b; cout << \ndigite dois numeros ; cin >> a >> b; cout << \na soma quadrados é << somasqr (a, b); } float somasqr (float m, float n) { return soma (sqr (m), sqr (n) ); } float sqr (float z) { return z*z; } float soma (float m, float n) { return m+n; } Valores default para os argumentos de função Colocados no protótipo. Se forem omitidos os argumentos correspondentes na chamada à função, os valores default serão automaticamente usados. Ex.: Execute para ver a saída void linha (int n = 20, char ch = * ); void main( ) { linha( ); cout << \n ; linha (34); cout << \n ; linha 45, = ) cout << \n ; } void linha (int n, char ch) { for (int i=0; i<n; i++) cout << ch; } Observ. : Se um argumento for omitido, todos os subsequentes deverão ser omitidos.

linha (, + ); // ERRO Se um parâmetro for inicializado, todos os seguintes devem ser inicializados. void linha (int n=20, char ch); //ERRO Sobrecarga de funções Família de funções com o mesmo nome mas com lista de parâmetros diferentes (número ou tipo). Ex.: Cálculo do cubo de um número int cubo (int n); float cubo (float n); double cubo (double n); void main( ) { cout << cubo(876) << \n ; cout << cubo(12.34) << \n ; cout << cubo(double(4567.35)) << \n ; } int cubo (int n) { return n*n*n; } float cubo (float n) { return n*n*n; } double cubo (double n) { return n*n*n; } Observ. : O sistema considera somente a lista de parâmetros para escolher a função apropriada a cada chamada, e não o valor de retorno. int minhaf (int); float minhaf (int); // Errado. Parâmetro igual Funções inline A palavra chave inline, quando colocada como primeiro elemento do cabeçalho da definição de uma função, causa a inserção de uma nova cópia da função em todo o lugar onde ela é chamada. Uso : Com funções pequenas. Vantagem : Poupa tempo de execução.

#include <conio.h> inline char minusculo (char ch) { return ((ch >= A && ch <= Z )? (ch- A + a ) : ch); } Observ. : A definição de uma função inline deve preceder a primeira chamada a ela (código escrito antes de main).