PROGRAMAÇÃO ESTRUTURADA. CC 2º Período

Documentos relacionados
Aula 06 - Funções. O que é uma Função - Comando return - Protótipos de Funções - Tipos de Funções - Escopo de Variáveis - Passagem de parâmetros

PROGRAMAÇÃO ESTRUTURADA. CC 2º Período

Programa ConsoleRPN. PUC-Rio CIV Sistemas Gráficos para Engenharia Luiz Fernando Martha & André Maués Brabo Pereira

17 - Funções e Procedimentos em C Programação Modular

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br

Curso de Linguagem C

5 - Vetores e Matrizes Linguagem C CAPÍTULO 5 VETORES E MATRIZES

Na disciplina de Cálculo Numérico, vamos trabalhar com a linguagem C++ e o compilador que vamos usar é o Dev C++.

Conceitos básicos da linguagem C

Linguagem e Técnicas de Programação I Programação estruturada e fundamentos da linguagem C

Estruturas de Repetição

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

5 Apresentando a linguagem C

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA

ALGORITMOS PARTE 01. Fabricio de Sousa Pinto

Orientação a Objetos

ARRAYS. Um array é um OBJETO que referencia (aponta) mais de um objeto ou armazena mais de um dado primitivo.

Estruturas (Registros)

Polimorfismo. Prof. Leonardo Barreto Campos 1

Vetores. Vetores. Figura 1 Exemplo de vetor com 10 elementos

Unidade 7: Panes no Excel

Programação 1. Rafael Vargas Mesquita. ftp://ftp.ci.ifes.edu.br/informatica/rafael/

Componentes da linguagem C++

2. OPERADORES ALGORITMOS, FLUXOGRAMAS E PROGRAMAS FUNÇÕES... 10

Resumo da Matéria de Linguagem de Programação. Linguagem C

Algoritmos e Programação Estruturada

20 Caracteres - Tipo char

#include <stdio.h> void Swap (int *a,int *b) { int temp; temp=*a; *a=*b; *b=temp; } main () {

Edwar Saliba Júnior. Dicas, Comandos e Exemplos Comparativos entre Linguagem Algorítmica e Linguagem C / C++

EXEMPLO DE COMO FAZER UMA MALA DIRETA

TUTORIAL DO ACCESS PASSO A PASSO. I. Criar um Novo Banco de Dados. Passos: 1. Abrir o Access 2. Clicar em Criar um novo arquivo

Prof. Esp. Adriano Carvalho

Introdução à Programação

EXERCÍCIOS SOBRE ORIENTAÇÃO A OBJETOS

Algoritmos e Estrutura de Dados. Introdução a Linguagem Python (Parte I) Prof. Tiago A. E. Ferreira

Persistência de Dados

Parte I. Demoiselle Mail

PIP/CA - Programa Interdisciplinar de Pós-Graduação em Computação Aplicada da UNISINOS ALGORITMOS & ESTRUTURAS DE DADOS

Linguagem e Técnicas de Programação I Operadores, expressões e funções. Prof. MSc. Hugo Souza Material desenvolvido por: Profa.

Computação II Orientação a Objetos

Conceitos de Sistemas Operacionais: Chamadas de Sistema. Prof Rafael J. Sandim

15 a Aula Subprogramação /Subalgoritmos Função e Procedimento

Introdução a Programação. Ponteiros e Strings, Alocação Dinâmica

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza

Dadas a base e a altura de um triangulo, determinar sua área.

Manipulação de Arquivos

Disciplina: Unidade III: Prof.: Período:

TÉCNICAS DE PROGRAMAÇÃO

Capítulo 2: Introdução à Linguagem C

Introdução a Java. Hélder Nunes

Tipos de Dados, Tipos Abstratos de Dados Estruturas de Dados

Lista de Exercícios da 3ª Unidade. ( Ponteiros, Alocação dinâmica, Arquivos, Estruturas de Dados)

Criando um script simples

O Excel é um programa de computador desenvolvido para gerenciar dados na forma de planilhas.

Introdução a POO. Introdução a Linguagem C++ e POO

Desenvolvimento OO com Java Orientação a objetos básica

Exercício 1. Tabela 1: Cadastro de usuários, senhas e privilégios (exemplo). Login Senha Privilégio Armamento

Curso de C para Engenharias

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

Unidade Acadêmica: Faculdade de Computação FACOM Disciplina: Programação Orientada a Objetos I Professor: Fabiano Azevedo Dorça Prática 01

PROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

Como consolidar dados nas planilhas utilizando o comando CONSOLIDAR do Excel

Curso de Programação Computadores

Estrutura de Dados Básica

Algoritmos x Programação. Primeiros Passos na Linguagem C/C++ Como traduzir um algoritmo? Algoritmo original. Prof. Marcelo Cohen flash@inf

Daniel Filype Silva Barreto Márcio Sérgio Soares Austregésilo

MC-102 Aula 17 Strings e Matrizes

1 Resumo: Strings e vetores de caracteres. Departamento de Ciência da Computação IME/USP

Questão Essência do Excel

1 Funções básicas de implementação de arquivos

INF 1005 Programação I

NOVIDADES DO JAVA PARA PROGRAMADORES C

02 - Usando o SiteMaster - Informações importantes

Sistemas Operacionais e Introdução à Programação. Programação com linguagem C

Memória Flash. PdP. Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos

Programação de Computadores - I. Profª Beatriz Profº Israel

Tutorial de Matlab Francesco Franco

INTRODUÇÃO AO JAVA PARA PROGRAMADORES C

2. Representação Numérica

PHP Material de aula prof. Toninho (8º Ano)

9 Comandos condicionais

Manual do Sistema "Vida Controle de Contatos" Editorial Brazil Informatica

INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO

3 Classes e instanciação de objectos (em Java)

Armazenamento de Dados. Prof. Antonio Almeida de Barros Junior

Algoritmos I Aula 13 Java: Tipos básicos, variáveis, atribuições e expressões

MANUAL DO USUÁRIO SORE Sistema Online de Reservas de Equipamento. Toledo PR. Versão Atualização 26/01/2009 Depto de TI - FASUL Página 1

Lição 1 - Criação de campos calculados em consultas

Computação L2. Arquivos. Observação: Material da Disciplina Computação Eletrônica CIN/UFPE.

AULA 4 VISÃO BÁSICA DE CLASSES EM PHP

GUIA MUDANÇA E FORMATAÇÃO DE SERVIDOR - SLIM

Unidade IV: Ponteiros, Referências e Arrays

MANUAL DE UTILIZAÇÃO SISTEMA DE CADASTRO INTRANET

Aula 1 Tipo Abstrato de Dados

DEFINIÇÃO DE MÉTODOS

Para criar uma animação precisamos de uma imagem e que ela contenha alguns frames. O número de frames é uma escolha sua.

Permissões de compartilhamento e NTFS - Parte 1

Transcrição:

PROGRAMAÇÃO ESTRUTURADA CC 2º Período

PROGRAMAÇÃO ESTRUTURADA Aula 07: Funções O comando return Protótipo de funções O tipo void Arquivos-cabeçalho Escopo de variáveis Passagem de parâmetros por valor e por referência Vetores como argumentos de funções Os argumento argc e argv Recursividade

FUNÇÕES

FUNÇÕES Funções são as estruturas que permitem ao usuário separar seus programas em blocos. Se não as tivéssemos, os programas teriam que ser curtos e de pequena complexidade. Para fazermos programas grandes e complexos temos que construí-los bloco a bloco.

FUNÇÕES Uma função na linguagem C tem a seguinte forma geral: tipo_de_retorno nome_da_função(declaração_de_parâmetros){ corpo_da_função }

FUNÇÕES tipo_de_retorno nome_da_função(declaração_de_parâmetros){ corpo_da_função } O tipo de retorno é o tipo de variável que a função vai retornar. O default é o tipo int, ou seja, uma função para o qual não declaramos o tipo de retorno é considerada como retornando um inteiro.

FUNÇÕES tipo_de_retorno nome_da_função(declaração_de_parâmetros){ corpo_da_função } A declaração de parâmetros não é obrigatória. Ou seja, uma função não precisa ter parâmetros.

FUNÇÕES tipo_de_retorno nome_da_função(declaração_de_parâmetros){ corpo_da_função } Mas caso precise ser declarada a forma geral é: tipo nome1, tipo nome2, etc

FUNÇÕES tipo_de_retorno nome_da_função(declaração_de_parâmetros){ corpo_da_função } Repare que o tipo deve ser especificado para cada uma das N variáveis de entrada. É na declaração de parâmetros que informamos ao compilador quais serão as entradas da função.

FUNÇÕES tipo_de_retorno nome_da_função(declaração_de_parâmetros){ corpo_da_função } O corpo da função é a sua alma. É nele que as entradas são processadas, saídas são geradas ou outras coisas são feitas.

FUNÇÕES

FUNÇÕES

O COMANDO RETURN

O COMANDO RETURN O comando return tem a seguinte forma geral: return valor_de_retorno; ou return;

O COMANDO RETURN Digamos que uma função está sendo executada. Quando se chega a uma declaração return a função é encerrada imediatamente e, se o valor de retorno é informado, a função retorna este valor. É importante lembrar que o valor de retorno fornecido tem que ser compatível com o tipo de retorno declarado para a função.

O COMANDO RETURN Uma função pode ter mais de uma declaração return.

O COMANDO RETURN Vamos criar o programa50.c

O COMANDO RETURN Vamos criar o programa50.c

O COMANDO RETURN Vamos criar o programa50.c

O COMANDO RETURN Vamos criar o programa51.c

O COMANDO RETURN

O COMANDO RETURN É importante notar que, como as funções retornam valores, podemos aproveitá-los para fazer atribuições, ou mesmo para que estes valores participem de expressões.

O COMANDO RETURN Vale lembrar que mesmo que uma função retorne um valor não precisamos aproveitar este valor par nada. Se não fizermos nada com o valor de retorno de uma função o mesmo será descartado. Por exemplo, a função printf() retorna um inteiro que nós nunca usamos para nada. Ele é descartado.

O COMANDO RETURN Crie o programa52.c

O COMANDO RETURN

O COMANDO RETURN

PROTÓTIPO DE FUNÇÕES

PROTÓTIPO DE FUNÇÕES Até agora, nos programas que criamos, escrevemos funções antes de escrevermos a função main(). Isto foi feito por uma razão. Imagine-se na pela do compilador. Se você fosse compilar a função main(), onde são chamadas as funções, você teria que saber com antecedência quais são os tipos de retorno e quais são os parâmetros das funções para que você pudesse gerar o código corretamente.

PROTÓTIPO DE FUNÇÕES Foi por isso que as funções foram colocadas antes da função main(): quando o compilador chegasse à função main() ele já teria compilado as funções anteriores e já saberia seus formatos.

PROTÓTIPO DE FUNÇÕES Mas, muitas vezes, não podemos nos dar ao luxo de escrever nesta ordem. Muitas vezes teremos o nosso programa espalhado por vários arquivos. Ou seja, estaremos chamando funções em um arquivo que serão compiladas em outro arquivo. Como manter a coerência?

PROTÓTIPO DE FUNÇÕES A solução são os protótipos de funções. Protótipos são nada mais, nada menos, que declarações de funções. Isto é, você declara uma função que irá usar. O compilador toma então conhecimento do formato daquela função antes de compilá-la. O código correto será então gerado.

PROTÓTIPO DE FUNÇÕES Um protótipo tem o seguinte formado: tipo_de_retorno nome_da_funcao(declaracao_de_parametros);

PROTÓTIPO DE FUNÇÕES Um protótipo tem o seguinte formado: tipo_de_retorno nome_da_funcao(declaracao_de_parametros); Onde o tipo de retorno, o nome da função e a declaração de parâmetros são os mesmos que você pretende usar quando realmente escrever a função.

PROTÓTIPO DE FUNÇÕES Um protótipo tem o seguinte formado: tipo_de_retorno nome_da_funcao(declaracao_de_parametros); Onde o tipo de retorno, o nome da função e a declaração de parâmetros são os mesmos que você pretende usar quando realmente escrever a função. OBS: método abstrato.

PROTÓTIPO DE FUNÇÕES Escreva o programa53.c

PROTÓTIPO DE FUNÇÕES

PROTÓTIPO DE FUNÇÕES Escreva o programa53.c

PROTÓTIPO DE FUNÇÕES Usando protótipos você pode construir funções que retornam quaisquer tipos de variáveis. É bom ressaltar que funções pode também retornar ponteiros sem qualquer problema. Os protótipos não só ajudam o compilador, mas também ajudam os programadores a evitar erros de compilação, não deixando que o programador use funções com os parâmetros errados e com o tipo de retorno errado.

O TIPO VOID

O TIPO VOID Em inglês, void quer dizer vazio e é isto mesmo que o void é. Ele nos permite fazer funções que não retornam nada e funções que não tem parâmetros.

O TIPO VOID Vamos criar o programa54.c

O TIPO VOID Vamos criar o programa54.c

O TIPO VOID Vamos criar o programa54.c

O TIPO VOID Se quisermos que a função retorne algo, devemos colocar o tipo de retorno da declaração e utilizar o return no final. Se não quisermos retornar nada, basta declarar a função como tendo tipo de retorno void.

O TIPO VOID Devemos lembrar que a função main() é uma função e como tal devemos tratá-la. O compilador acha que a função main() deve retornar um inteiro. Isso pode ser interessante se quisermos que o sistema operacional receba um valor de retorno da função main().

O TIPO VOID Se assim quisermos, devemos nos lembrar da seguinte convenção: se o programa retornar zero, significa que ele terminou normalmente, e, se o programa retornar um valor diferente de zero, significa que o programa teve um término anormal. Se não precisarmos de nada disso, podemos declarar a função main() como retornando void. OBS: É recomendado manter o padrão.

ARQUIVOS-CABEÇALHO

ARQUIVOS-CABEÇALHO Arquivos-cabeçalho são aqueles que temos mandado o compilador incluir no início de nossos programas e que sempre terminam em.h. A extensão.h vem de header (cabeçalho em inglês)

ARQUIVOS-CABEÇALHO Estes arquivos, na verdade, não possuem os códigos completos das funções. Eles contêm somente protótipos de funções. É o que basta. O compilador lê estes protótipos e, baseado nas informações lá contidas, gera o código correto.

ARQUIVOS-CABEÇALHO O corpo das funções cujos protótipos estão no arquivo-cabeçalho são incluídas no programa no instante da linkagem. Este é o instante em que todas as referências a funções cujos códigos estão nos nossos arquivos fontes são resolvidas, buscando este código nos arquivos de bibliotecas.

ARQUIVOS-CABEÇALHO O corpo das funções cujos protótipos estão no arquivo-cabeçalho são incluídas no programa no instante da linkagem. Este é o instante em que todas as referências a funções cujos códigos estão nos nossos arquivos fontes são resolvidas, buscando este código nos arquivos de bibliotecas.

ARQUIVOS-CABEÇALHO Se você criar algumas funções que queira aproveitar em vários programas futuros, ou módulos de programas, você pode escrever arquivos-cabeçalho e incluí-los também.

ARQUIVOS-CABEÇALHO Crie o arquivo de cabeçalho funcao.h

ARQUIVOS-CABEÇALHO Crie o arquivo de cabeçalho funcao.h

ARQUIVOS-CABEÇALHO Crie o arquivo de cabeçalho funcao.h Repare que temos apenas a declaração da nossa função.

ARQUIVOS-CABEÇALHO Crie o arquivo que será o corpo do nosso cabeçalho chamado funcao.c

ARQUIVOS-CABEÇALHO Crie o arquivo que será o corpo do nosso cabeçalho chamado funcao.c

ARQUIVOS-CABEÇALHO Crie o programa55.c

ARQUIVOS-CABEÇALHO Crie o programa55.c

ARQUIVOS-CABEÇALHO Crie o programa55.c

ESCOPO DE VARIÁVEIS

ESCOPO DE VARIÁVEIS Escopo é o conjunto de regras que determinam o uso e a validade de variáveis nas diversas partes do programa.

ESCOPO DE VARIÁVEIS - Variáveis locais

ESCOPO DE VARIÁVEIS - Variáveis locais O tipo mais comum são as variáveis locais. Elas tem validade somente dentro do bloco no qual são declaradas. Podemos declarar variáveis dentro de qualquer bloco. E um bloco começa com o abre chaves e termina com o fecha chaves.

ESCOPO DE VARIÁVEIS - Variáveis locais A característica que torna as variáveis locais tão importantes é justamente a de serem exclusivas do bloco. Podermos ter quantos blocos quisermos com uma variável local chamada xuxa, por exemplo, e elas não apresentarão conflito entre elas.

ESCOPO DE VARIÁVEIS - Variáveis locais

ESCOPO DE VARIÁVEIS - Variáveis locais

ESCOPO DE VARIÁVEIS - Variáveis globais

ESCOPO DE VARIÁVEIS - Variáveis globais Variáveis globais são declaradas, como já sabemos, fora de todas as funções do programa. Elas são conhecidas e podem ser alteradas por todas as funções do programa.

ESCOPO DE VARIÁVEIS - Variáveis globais Quando uma função tem uma variável local com o mesmo nome de uma variável global a função dará preferencia à variável local.

ESCOPO DE VARIÁVEIS Crie o programa56.c

ESCOPO DE VARIÁVEIS Crie o programa56.c

ESCOPO DE VARIÁVEIS Crie o programa56.c

PASSAGEM DE PARÂMETROS POR VALOR E POR REFERÊNCIA

PASSAGEM DE PARÂMETROS POR VALOR E POR REFERÊNCIA Já vimos que, na linguagem C, quando chamamos uma função, os parâmetros formais da função copiam os valores dos parâmetros que são passados para a função. Isso quer dizer que não são alterados os valores que os parâmetros têm fora da função. Este tipo de chamada de função é denominado chamada por valor. Isso ocorre porque são passados para a função apenas os valores dos parâmetros e não os próprios parâmetros.

PASSAGEM DE PARÂMETROS POR VALOR E POR REFERÊNCIA Crie o programa57.c

PASSAGEM DE PARÂMETROS POR VALOR E POR REFERÊNCIA

PASSAGEM DE PARÂMETROS POR VALOR E POR REFERÊNCIA Crie o programa57.c

PASSAGEM DE PARÂMETROS POR VALOR E POR REFERÊNCIA Crie o programa57.c No programa criado, o parâmetro formal numero da função sqr() sofre alterações dentro da função, mas a variável numero da função main() permanece inalterada. Isto é uma chamada por valor.

PASSAGEM DE PARÂMETROS POR VALOR E POR REFERÊNCIA Outro tipo de passagem de parâmetros para uma função ocorre quando alterações nos parâmetros formais, dentro da função, alteram os valores dos parâmetros que foram passados para a função.

PASSAGEM DE PARÂMETROS POR VALOR E POR REFERÊNCIA Este tipo de chamada de função tem o nome de chamada por referecia. Este nome vem do fato de que, neste tipo de chamada, não se passa para a função os valores das variáveis, mas sim suas referências. A função usa as referencias para alterar os valores das variáveis fora da função.

PASSAGEM DE PARÂMETROS POR VALOR E POR REFERÊNCIA Quando queremos alterar as variáveis que são passadas para uma função, nós podemos declarar seus parâmetros formais como sendo ponteiros. Os ponteiros são a referência" que precisamos para poder alterar a variável fora da função.

PASSAGEM DE PARÂMETROS POR VALOR E POR REFERÊNCIA O único inconveniente é que, quando usarmos a função, teremos de lembrar de colocar um & na frente das variáveis que estivermos passando para a função.

PASSAGEM DE PARÂMETROS POR VALOR E POR REFERÊNCIA Crie o programa58.c

PASSAGEM DE PARÂMETROS POR VALOR E POR REFERÊNCIA

PASSAGEM DE PARÂMETROS POR VALOR E POR REFERÊNCIA Crie o programa58.c

PASSAGEM DE PARÂMETROS POR VALOR E POR REFERÊNCIA Crie o programa58.c O que aconteceu neste programa é que passamos para a função troca o endereço das variáveis numero1 e numero2. Estes endereços são copiados nos ponteiros a e b.

PASSAGEM DE PARÂMETROS POR VALOR E POR REFERÊNCIA Crie o programa58.c Através do operador * estamos acessando o c o n t e ú d o a p o n t a d o p e l o s p o n t e i r o s e modificando-os. Estes conteúdos são os valores armazenados em numero1 e numero2.

PASSAGEM DE PARÂMETROS POR VALOR E POR REFERÊNCIA Crie o programa58.c Já usamos função passando variáveis com &.

PASSAGEM DE PARÂMETROS POR VALOR E POR REFERÊNCIA Crie o programa58.c Já usamos função passando variáveis com &.

VETORES COMO ARGUMENTOS DE FUNÇÕES

VETORES COMO ARGUMENTOS DE FUNÇÕES Quando vamos passar um vetor como argumento de uma função, podemos declarar a função de três maneiras equivalentes. Seja o vetor: int matriz[50];

VETORES COMO ARGUMENTOS DE FUNÇÕES Seja o vetor: int matriz[50]; E queiramos passá-la como argumento de uma função funcao(). Podemos declarar funcao() das três maneiras seguintes: void funcao(int matriz[50]); void funcao(int matrix[]); void funcao(int *matriz);

VETORES COMO ARGUMENTOS DE FUNÇÕES Crie o programa59.c

VETORES COMO ARGUMENTOS DE FUNÇÕES Crie o programa59.c

VETORES COMO ARGUMENTOS DE FUNÇÕES Crie o programa59.c

OS ARGUMENTOS ARGC E ARGV

OS ARGUMENTOS ARGC E ARGV A função main() pode ter parâmetros formais. Mas o programador não pode escolher quais serão eles. A declaração mais completa que se pode ter para a função main() é: int main(int argc, char *argv[]){ }

OS ARGUMENTOS ARGC E ARGV Os parâmetros argc e argv dão ao programador acesso à linha de comando com a qual o programa foi chamado.

OS ARGUMENTOS ARGC E ARGV O argc (argument count) é um inteiro e possui o número de argumentos com os quais a função main() foi chamada na linha de comando. Ele é, no mínimo 1, pois o nome do programa é contado como sendo o primeiro argumento.

OS ARGUMENTOS ARGC E ARGV O argv (argument values) é um ponteiro para uma matriz de strings. Cada string desta matriz é um dos parâmetros da linha de comando. O argv[0] sempre aponta para o nome do programa, que, como já foi dito, é considerado o primeiro argumento. É para saber quantos elementos temos em agrv que temos argc.

OS ARGUMENTOS ARGC E ARGV Crie o programa60.c

OS ARGUMENTOS ARGC E ARGV Crie o programa60.c

OS ARGUMENTOS ARGC E ARGV Crie o programa60.c

OS ARGUMENTOS ARGC E ARGV

OS ARGUMENTOS ARGC E ARGV Crie o programa60.c

RECURSIVIDADE

RECURSIVIDADE Na linguagem C, assim como em muitas outras linguagens de programação, uma função pode chamar a si própria. Uma função assim é chamada função recursiva.

RECURSIVIDADE Todo cuidado é pouco ao se fazer funções recursivas. A primeira coisa a se providenciar é um critério de parada. Este vai determinar quando a função deverá parar de chamar a si mesma. Isso impede que a função se chame infinitas vezes.

RECURSIVIDADE Faça o programa61.c

RECURSIVIDADE Faça o programa61.c

RECURSIVIDADE Faça o programa61.c

RECURSIVIDADE Faça o programa61.c No programa acima, enquanto numero não for igual a 0, a função fatorial chama a si mesma, cada vez com um valor menor. numero = 0 é o critério de parada para esta função.

RECURSIVIDADE Faça o programa61.c No programa acima, enquanto numero não for igual a 0, a função fatorial chama a si mesma, cada vez com um valor menor. numero = 0 é o critério de parada para esta função.

PROGRAMAÇÃO ESTRUTURADA Dúvidas? Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br www.diemesleno.com.br

RECURSIVIDADE Exercício: A) Faça um cabeçalho de programa em C com a declaração de funções para: 1 - receber um numero e elevar ao quadrado; 2 - receber um numero e verificar se é par ou ímpar; 3 - receber um número e gerar o fatorial; 4 - receber um numero e gerar o fibonacci de 0 até o numero informado; B) Faça um corpo para o cabeçalho criado; C) Crie um programa e teste a biblioteca criada.