Subprogramas. (ou Sub-rotinas) em C: Procedimentos e Funções. 2015/1 Programação Básica de Computadores (INF 09325)

Tamanho: px
Começar a partir da página:

Download "Subprogramas. (ou Sub-rotinas) em C: Procedimentos e Funções. 2015/1 Programação Básica de Computadores (INF 09325)"

Transcrição

1 Subprogramas (ou Sub-rotinas) em C: Procedimentos e Funções 2015/1 Programação Básica de Computadores (INF 09325) Archimedes Detoni archimedesdetoni@inf.ufes.br

2 Programa / Bibliografia Subprogramas (ou Sub-rotinas) Funções e procedimentos: declaração e uso Passagem de parâmetros e retorno de funções Argumentos de linha de comando: a função main() Funções recursivas W. L. C. Saliba. Técnicas de Programação: Uma Abordagem Estruturada. Pearson / Makron Books, 1993;.Capítulo 9 Subalgoritmos H. Schildt. C Completo e Total, 3ª edição. Pearson / Makron Books, 1997;.Capítulo 6 - Funções 2

3 Motivação Dividir para conquistar César (Roma) Projetar um prédio Produzir um automóvel Problema Subproblema 1 Subproblema 2... Subproblema n Solução 3

4 Motivação Subdivisão de algoritmos complexos - MODULARIZAÇÃO Estruturação de algoritmos Facilidade de documentação e de detecção de erros Modularização de Sistemas Facilidade de entendimento Facilidade de manutenção e reutilização Exemplos Bibliotecas: fatorial, seno, cosseno, etc Parte do programa que é repetida várias vezes Calcular IMC Calcular média Calcular MDC Abrir, fechar ou imprimir dados em um arquivo Fatorial 4

5 Partes de um Subprograma Cabeçalho Tipo de retorno, Nome do subprograma e Lista de parâmetros (e seus tipos) Corpo Instruções do subprograma 5

6 Sintaxe de Subprogramas tiporet funcao(tipoparam param1,...){... return...; Tipo do retorno Nome da função Define o tipo a ser retornado após o processamento Pode ser void (sem retorno) ou outro tipo qualquer (obrigatório o uso da instrução de retorno - palavrachave return) Semelhante ao nome do programa Tipos e nomes dos parâmetros 6

7 Tipos de Subprogramas Procedimentos Não retornam um valor Indicação do tipo void Funções Retornam um valor como resultado do processamento int, float, char,... 7

8 Exemplo 1.1 float calcularimc(float altura, float peso) { return peso / (altura * altura); void imprimirimc(float imc) { printf("o seu IMC eh: %.1f\n", imc); if(imc < 17){ printf( Muito abaixo do seu peso ideal!"); else if(imc < 18.5){ printf("voce esta abaixo do seu peso ideal!"); else if(imc < 25){ printf("parabens, você esta em seu peso ideal!"); else if(imc < 30){ printf("sobrepeso - Acima do seu peso ideal."); else if(imc < 35){ printf("obesidade - grau I."); else if(imc < 40){ printf("obesidade - grau II (severa)."); else{ printf("obesidade - grau III (mórbida)."); printf("\n"); 8

9 Exemplo 1.2 main() { float altura, peso, imc; printf( Informe sua altura: "); scanf("%f", &altura); printf( Informe seu peso: "); scanf("%f", &peso); imc = calcularimc(altura, peso); imprimirimc(imc); 9

10 Subprogramas void ou outro tipo (int, float, char,...) Chamada de outros subprogramas Retorno Um subprograma pode chamar outros subprogramas return Retorna valor e interrompe o subprograma Deve obedecer tipo de retorno da função Chamada imprimirimc(imc); fatorial = calcularfatorial(n); 10

11 Escopo de Variáveis Define a visibilidade e acessibilidade das variáveis em diferentes partes do programa Escopo Global ampliado a todos os subprogramas implementados no arquivo Escopo Local restrito ao bloco onde foi declarada 11

12 Variáveis Locais e Globais Declaração de variáveis locais - dentro do subprograma void função(int n){ char varlocal; Acesso a variáveis locais Variável definida em um subprograma não é acessível por outros Declaração e acesso a variáveis globais Precisa ser declarada antes dos subprogramas, inclusive do main. 12

13 Passagem de Parâmetros Permite que utilizemos valores de variáveis locais de um subprograma suba, para efetuar operações em um outro subprograma subb. p. ex., o valor da variável local imc em main é utilizado no subprograma imprimirimc(imc) Passagem de parâmetro por cópia Alteração do parâmetro não interfere no valor original Ex.: variáveis altura, peso e imc do Exemplo 1 Veremos uma outra forma de passagem de parâmetros (por referência) futuramente. 13

14 Exercício 1. Faça uma programa para calcular o Número de Euler Qual(is) o(s) sub-problema(s) envolvido(s)? tipo funcao(tipo param1,...){... return...; 14

15 Exercício 1 Resolução (parte I) int calcularfatorial(int n) { int fat = 1; while (n >= 1) { fat = fat * n; n--; return fat; 15

16 Exercício 1 Resolução (parte II) float calculareuler(int n){ float euler = 1.0; int i; int fat; n--; for (i = 1; i <= n; i++){ fat = calcularfatorial(i); euler += 1.0 / fat; return euler; 16

17 Exercício 1 Resolução (parte III) main() { float euler; int n; printf("quantos termos?\n"); scanf("%d", &n); euler = calculareuler(n); printf("e = %f\n", euler); 17

18 A função main() É uma função especial: Chamada pelo sistema operacional (SO) quando executamos nosso programa Forma mais simples: main( ){ Forma completa: int main(int argc, char *argv[ ] ){ Retorno indica sucesso ou falha para o SO Sucesso == 0 Erro > 0 Parâmetros argc - valor inteiro que indica a quantidade de argumentos que foram passados ao chamar o programa argv - vetor de char que contém os argumentos, um para cada string passada na linha de comando 18

19 Exemplo de uso argc e argv Programa que, ao executar, lê um conjunto de parâmetros e os mostra, seguindo o modelo da figura abaixo: 19

20 Resolução do Exemplo de uso argc e argv #include <stdio.h> int main(int argc, char *argv[ ]){ int cont; for(cont=0; cont < argc; cont++) printf("parametro [%d]: %s\n", cont, argv[cont]); return 0; 20

21 Exercício de uso argc e argv Faça um programa que, ao executar, leia dois valores inteiros na linha de comando e mostre o resultado da multiplicação deles. OBS: a função atoi converte uma string para um inteiro Ex: variavint = atoi( 1234 ); 21

22 Resolução do Exercício de uso argc e argv #include <stdio.h> int main(int argc, char *argv[ ]) { int arg1 = 0, arg2 = 0; printf("\nmultiplicando valores passados na linha de comando\n"); //atoi converte a string para inteiro arg1 = atoi(argv[1]); arg2 = atoi(argv[2]); printf("\n%d X %d = %d\n", arg1, arg2, (arg1 * arg2) ); return 0; 22

23 Exercícios Faça um programa para ler a altura e a largura de um retângulo e calcular o seu perímetro e sua área. Escreva uma função para calcular o perímetro e outra para a área, passando os como parâmetros as medidas dos lados. 3. Considere π = Construa um programa para calcular as áreas de n círculos tendo como dado de entrada o valor de cada raio. Escreva uma função para calcular a área de um círculo, dado o seu raio. 4. Escreva um programa para imprimir os números primos compreendidos em um intervalo [A.. B], com A < B, que são fornecidos pelo teclado. Escreva uma função para determinar se um número é primo

24 Exercício 2 Resolução #include <stdio.h> float perimetroretangulo(float altura, float largura){ float perimetro; perimetro = 2 * altura + 2 * largura; return perimetro; float arearetangulo(float altura, float largura){ float area; area = altura * largura; return area; main() { float altura, largura; printf("informe a altura do retangulo: "); scanf("%f", &altura); printf("informe a largura do retangulo: "); scanf("%f", &largura); printf("o perimetro eh: %f\na area eh: %f\n", perimetroretangulo(altura,largura), arearetangulo(altura, largura) ); 24

25 Exercício 3 Resolução #include <stdio.h> #include <math.h> #define pi 3.14 float areacirculo(float raio){ float area; area = 2 * pi + pow(raio,2); return area; main() { float raio; printf("informe o raio: "); scanf("%f", &raio); printf("a area eh: %f\n", areacirculo(raio) ); 25

26 Exercício 4 Resolução int numehprimo(int n){ //função retorna 1 se o número eh primo, ou 0 caso contrário int cont; for(cont = 2; cont < n; cont++){ if(n % cont == 0){ return 0; return 1; main() { int cont, liminf, limsup; printf("informe o limite inferior: "); scanf("%d", &liminf); printf("informe o limite superior: "); scanf("%d", &limsup); for(cont = liminf; cont <= limsup; cont++){ if( numehprimo(cont) == 1 ){ printf("%d\n", cont); 26

Sub-rotinas. 2014/2 Programação Básica de Computadores (INF 09325) Freddy Brasileiro

Sub-rotinas. 2014/2 Programação Básica de Computadores (INF 09325) Freddy Brasileiro Sub-rotinas 2014/2 Programação Básica de Computadores (INF 09325) Freddy Brasileiro www.inf.ufes.br/~fbrasileiro fbrasileiro@inf.ufes.br Programa / Bibliografia 4. Sub-programas e funções 1. Funções e

Leia mais

SSC300- Linguagens de Programação e Aplicações Profa Vânia de Oliveira Neves. ICMC/USP São Carlos

SSC300- Linguagens de Programação e Aplicações Profa Vânia de Oliveira Neves. ICMC/USP São Carlos Funções SSC300- Linguagens de Programação e Aplicações Profa Vânia de Oliveira Neves ICMC/USP São Carlos Slides baseados no material gentilmente cedido pela Profa Simone Senger Souza 2 MODULARIZAÇÃO Um

Leia mais

Suponha um conjunto habitacional, com várias famílias... imagina se todas elas morassem em uma única casa?

Suponha um conjunto habitacional, com várias famílias... imagina se todas elas morassem em uma única casa? Funções Suponha um conjunto habitacional, com várias famílias...... imagina se todas elas morassem em uma única casa? Funções Introdução à Computação 1 de 28 Funções Na Programação, funções são conjuntos

Leia mais

Suponha um conjunto habitacional, com várias famílias... imagina se todas elas morassem em uma única casa?

Suponha um conjunto habitacional, com várias famílias... imagina se todas elas morassem em uma única casa? Funções Suponha um conjunto habitacional, com várias famílias...... imagina se todas elas morassem em uma única casa? Funções Programação de Computadores 1 de 28 Funções Na Programação, funções são conjuntos

Leia mais

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação Prof. Alceu Britto Slides cedidos pelo Prof. Dr. Edson J. R. Justino Aula 15 até 18 UEPG Rotinas rotinas, também chamadas de subprogramas, são blocos de instruções que realizam

Leia mais

Programação Estruturada

Programação Estruturada Programação Estruturada Ponteiros Parte 1 Professores Emílio Francesquini e Carla Negri Lintzmayer 2018.Q3 Centro de Matemática, Computação e Cognição Universidade Federal do ABC Ponteiros Ponteiro Ponteiros

Leia mais

Aula 18: Funções em C

Aula 18: Funções em C Aula 18: Funções em C Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Funções em C Programação de Computadores IV 1 / 38 Agenda 1 Revisão e Contexto

Leia mais

Faculdade de Computação

Faculdade de Computação Faculdade de Computação Programação Procedimental 1 o Laboratório de Programação C Prof. Cláudio C. Rodrigues 1. Introdução O objetivo desta aula prática é exercitar o uso de variáveis de vários tipos

Leia mais

Modularidade - Funções e Procedimentos

Modularidade - Funções e Procedimentos Modularidade - Funções e Procedimentos José Gustavo de Souza Paiva Problema Em diversas situações, é preciso executar uma tarefa específica diversas vezes em um programa, variando apenas os dados de entrada

Leia mais

Subprogramas. Prof. Carlos Lopes

Subprogramas. Prof. Carlos Lopes Subprogramas Prof. Carlos Lopes Motivação Escreva um programa C capaz de calcular a combinação de n valores tomados p a p. Para realizar este cálculo, você deverá utilizar a seguinte fórmula: C n n! p

Leia mais

ponteiros INF Programação I Prof. Roberto Azevedo

ponteiros INF Programação I Prof. Roberto Azevedo ponteiros INF1005 -- Programação I -- 2016.1 Prof. Roberto Azevedo razevedo@inf.puc-rio.br ponteiros tópicos o que são ponteiros operadores usados com ponteiros passagem de ponteiros para funções referência

Leia mais

Aula 03 -Introdução àlinguagc Programação: Estrutura-Repetição. OPL e IC1 Prof: Anilton Joaquim da Silva

Aula 03 -Introdução àlinguagc Programação: Estrutura-Repetição. OPL e IC1 Prof: Anilton Joaquim da Silva Aula 03 -Introdução àlinguagc Programação: Estrutura-Repetição OPL e IC1 Prof: Anilton Joaquim da Silva Anilton.ufu@outlook.com 1 Estrutura de Repetição Em certas situações é necessária a repetição de

Leia mais

O que é a modularização

O que é a modularização capa O que é a modularização Código Modularizado Código Não Modularizado Modularização Porque modularizar um código? -Decompor uma tarefa complexa em tarefas menores e de fácil solução. -Fazer uso da técnica

Leia mais

Terminal. Entrada de dados via teclado. Processamento de dados (cálculos) Tomada de decisão (condição) Saída de dados (via vídeo) Ponto de conexão

Terminal. Entrada de dados via teclado. Processamento de dados (cálculos) Tomada de decisão (condição) Saída de dados (via vídeo) Ponto de conexão Simbologia Terminal Entrada de dados via teclado Processamento de dados (cálculos) Tomada de decisão (condição) Saída de dados (via vídeo) Ponto de conexão 3 - Estrutura de Seleção Múltipla switch (expressão)

Leia mais

Linguagem C. Funções. Prof. Maurício Dias

Linguagem C. Funções. Prof. Maurício Dias Linguagem C Funções Prof. Maurício Dias 1 O que são Funções? (ou subprogramas ou subrotinas) São trechos de código fonte agrupados sob um nome, que podem ser chamados sempre que for necessário executar

Leia mais

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação Aula 9 Subalgoritmos, funções e passagem de parâmetros Profa. Marina Gomes marinagomes@unipampa.edu.br 22/06/2017 Engenharia de Computação - Unipampa 1 Modularização Facilita a

Leia mais

Aula 15 - Aula sobre Funções e Procedimentos

Aula 15 - Aula sobre Funções e Procedimentos MC-102 Algoritmos e Programação de Computadores IC-UNICAMP Aula 15 - Aula sobre Funções e Procedimentos 1 Objetivos Apresentar os conceitos de procedimentos e funções, suas vantagens e sua notação em C.

Leia mais

ALGORITMOS AULA 01. Baseado nas aulas do Prof. Jorgiano Vidal

ALGORITMOS AULA 01. Baseado nas aulas do Prof. Jorgiano Vidal ALGORITMOS AULA 01 Baseado nas aulas do Prof. Jorgiano Vidal LINGUAGEM C Uma das grandes vantagens do C é que ele possui tanto caracterìsticas de "alto nìvel" quanto de "baixo nìvel". Linguagem de propósito

Leia mais

Sub-rotinas David Déharbe

Sub-rotinas David Déharbe Sub-rotinas David Déharbe 1 1 Objetivos da aula Os conceitos de sub-rotina, funções e procedimentos; Como usar sub-rotinas em C: parâmetros de sub-rotinas: parâmetros formais e parâmetros efetivos. passagem

Leia mais

ALGORITMOS I. Procedimentos e Funções

ALGORITMOS I. Procedimentos e Funções Procedimentos e Funções Jaime Evaristo (http://professor.ic.ufal.br/jaime/) Slide 1 MÓDULOS São blocos de instruções que realizam tarefas específicas. Carregado uma vez e pode ser executado quantas vezes

Leia mais

Computação 2. Diego Addan Aula 3. Funções

Computação 2. Diego Addan Aula 3. Funções Computação 2 Aula 3 Funções Diego Addan diegoaddan@gmail.com Funções Função é um subprograma que auxilia o programa principal através da realização de uma determinada subtarefa. As funções são chamados

Leia mais

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

Aula 07 Introdução à Programação Subprogramas Aula 07 Introdução à Programação Subprogramas Prof. Gustavo Callou gustavo.callou@ufrpe.br gcallou@gmail.com Roteiro SubProgramas Procedimentos Funções Exercícios Gustavo Callou DEINFO/UFRPE 2 Sistema

Leia mais

Aula 05. Modularização Função Subrotina Recursividade

Aula 05. Modularização Função Subrotina Recursividade Logo Aula 05 Modularização Função Subrotina Recursividade 2 Modularização A modularização é um processo que aborda os aspectos da decomposição de algoritmos em módulos. Módulo é um grupo de comandos, constituindo

Leia mais

Estruturas de Dados. Revisão de Funções e Recursão. Agradecimentos

Estruturas de Dados. Revisão de Funções e Recursão. Agradecimentos Estruturas de Dados Revisão de Funções e Recursão Prof. Ricardo J. G. B. Campello Agradecimentos Parte dos slides a seguir são adaptações dos originais em Pascal gentilmente cedidos pelo Prof. Rudinei

Leia mais

PROGRAMAÇÃO DE COMPUTADORES V - TCC Modulo 6 : Funções Escopo de Variáveis: Globais x Locais Aura - Erick

PROGRAMAÇÃO DE COMPUTADORES V - TCC Modulo 6 : Funções Escopo de Variáveis: Globais x Locais Aura - Erick PROGRAMAÇÃO DE COMPUTADORES V - TCC- 00.323 Modulo 6 : Funções Escopo de Variáveis: Globais x Locais Aura - Erick aconci@ic.uff.br, erickr@id.uff.br Roteiro Funções Escopo de Variáveis Variáveis Globais

Leia mais

Introdução à Computação

Introdução à Computação Introdução à Computação Tipos de Dados, Expressões, Operadores e Comandos Básicos Prof.: Julliano Rosa Nascimento julliano.rn@gmail.com Roteiro Tipos de Dados: Revisão Expressões Operadores Comandos Básicos

Leia mais

Prof. A. G. Silva. 04 de abril de Prof. A. G. Silva INE5231 Computação Científica I 04 de abril de / 90

Prof. A. G. Silva. 04 de abril de Prof. A. G. Silva INE5231 Computação Científica I 04 de abril de / 90 INE5231 Computação Científica I Prof. A. G. Silva 04 de abril de 2017 Prof. A. G. Silva INE5231 Computação Científica I 04 de abril de 2017 1 / 90 Conteúdo programático O computador - [3 horas-aula] Representação

Leia mais

Capacitação em Linguagem C Parte 1

Capacitação em Linguagem C Parte 1 Capacitação em Linguagem C Parte 1 Andrey Souto Maior Giuseppe Portolese Universidade Estadual de Maringá - Centro de Tecnologia Departamento de Informática 21 de outubro de 2015 Sumário I Definição e

Leia mais

Curso de C. Estruturas Condicionais

Curso de C. Estruturas Condicionais Curso de C Estruturas Condicionais Curso C - IC/UNICAMP Estruturas Condicionais Objetivos: Aprender: Como vincular a execução de blocos de sentenças à condições Quando utilizar cada uma das estruturas

Leia mais

Fundamentos de Programação1

Fundamentos de Programação1 Fundamentos de Programação1 Linguagem C Introdução e elementos principais Aula N. 01 Prof. SIMÃO Jean Marcelo SIMÃO 1 Exemplo 2 % código em Octave/Matlab clc; A = 5; A = 4 ; if ( A > B ) printf ( A é maior

Leia mais

Controle de Fluxo Utilizando C

Controle de Fluxo Utilizando C Instituto Federal de Santa Catarina Câmpus Chapecó Ensino Médio Integrado em Informática Módulo III Unidade Curricular: Programação Estruturada Professora: Lara Popov Zambiasi Bazzi Oberderfer Controle

Leia mais

prim = A ; prim = &A[0];

prim = A ; prim = &A[0]; 57 12 - MAIS SOBRE APONTADOR 12.1 - Ponteiros e arrays Em C, ponteiros e matrizes são tratados de maneira semelhante. 12.1.1 - Nome O nome é um ponteiro, ou seja, aponta (contém o endereço) para o primeiro

Leia mais

Introdução à Ciência da Computação. Sumário. Modularização de Algoritmos. Agradecimentos. Modularização de Algoritmos e Funções em C

Introdução à Ciência da Computação. Sumário. Modularização de Algoritmos. Agradecimentos. Modularização de Algoritmos e Funções em C Agradecimentos Introdução à Ciência da Computação e Funções em C Parte dos slides a seguir são adaptações dos originais: de A. L. V. Forbellone e H. F. Eberspächer do Prof. Rudinei Goularte Prof. Ricardo

Leia mais

Modularidade - Fun ções e Procedimentos

Modularidade - Fun ções e Procedimentos Modularidade - Fun ções e Procedimentos José Gustavo de Souza Paiva Problema Em diversas situa ções, é preciso executar uma tarefa específica diversas vezes em um programa, variando apenas os dados de

Leia mais

Programação de Computadores II

Programação de Computadores II Programação de Computadores II 2017.2 Relembrando... Linguagem C Relembrando... Linguagem C Declaração básica de um programa Relembrando... Linguagem C Declaração básica de um programa include Relembrando...

Leia mais

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

Sistemas Operacionais e Introdução à Programação. Programação com linguagem C Sistemas Operacionais e Introdução à Programação Programação com linguagem C 1 Entrada e saída: escrevendo na tela Veja uma comparação entre um programa Portugol e seu equivalente em C: Inicio Inteiro

Leia mais

Programação de Computadores II. Cap. 4 Funções

Programação de Computadores II. Cap. 4 Funções Programação de Computadores II Cap. 4 Funções Livro: Waldemar Celes, Renato Cerqueira, José Lucas Rangel. Introdução a Estruturas de Dados, Editora Campus (2004) Slides adaptados dos originais dos profs.:

Leia mais

Subalgoritmos - motivação

Subalgoritmos - motivação Algoritmos e Técnicas - Subalgoritmos - Subalgoritmos - motivação Sempre é possível dividir problemas grandes e complicados em problemas menores e de solução mais simples. A decomposição de um problema

Leia mais

Instituto Federal da Bahia Análise e Desenvolvimento de Sistemas INF029 Laboratório de Programação Aula 02: Modularização

Instituto Federal da Bahia Análise e Desenvolvimento de Sistemas INF029 Laboratório de Programação Aula 02: Modularização Instituto Federal da Bahia Análise e Desenvolvimento de Sistemas INF029 Laboratório de Programação Aula 02: Modularização Prof. Dr. Renato L. Novais renato@ifba.edu.br Agenda Modularização Funções em C

Leia mais

SSC INTRODUÇÃO À COMPUTAÇÃO PARA ENGENHARIA AMBIENTAL MODULARIZAÇÃO. Profa. Dra. Milena Guessi Margarido

SSC INTRODUÇÃO À COMPUTAÇÃO PARA ENGENHARIA AMBIENTAL MODULARIZAÇÃO. Profa. Dra. Milena Guessi Margarido SSC 301 - INTRODUÇÃO À COMPUTAÇÃO PARA ENGENHARIA AMBIENTAL MODULARIZAÇÃO Profa. Dra. Milena Guessi Margarido (milena@icmc.usp.br) MODULARIZAÇÃO Um problema complexo é melhor abordado se for dividido primeiramente

Leia mais

ESTRUTURAS COMPOSTAS. Variáveis Compostas Unidimensionais VETOR. Baseado nos slides de Rosely Sanches e Simone Senger de Souza

ESTRUTURAS COMPOSTAS. Variáveis Compostas Unidimensionais VETOR. Baseado nos slides de Rosely Sanches e Simone Senger de Souza ESTRUTURAS COMPOSTAS Variáveis Compostas Unidimensionais VETOR Baseado nos slides de Rosely Sanches e Simone Senger de Souza 2 ESTRUTURAS COMPOSTAS Pode-se organizar os dados dos tipos simples em tipos

Leia mais

INF1005: Programação 1. Repetições. 08/03/10 (c) Paula Rodrigues 1

INF1005: Programação 1. Repetições. 08/03/10 (c) Paula Rodrigues 1 INF1005: Programação 1 Repetições 08/03/10 (c) Paula Rodrigues 1 Tópicos Principais Construção de Laços com while Algoritmos com Repetição Construção de Laços com for Repetição com Teste no Final 08/03/10

Leia mais

3. Linguagem de Programação C

3. Linguagem de Programação C Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3.2. Estrutura de Programas e Representação

Leia mais

MC102 Algoritmos e Programação de Computadores

MC102 Algoritmos e Programação de Computadores MC102 Algoritmos e Programação de Computadores Instituto de Computação UNICAMP Primeiro Semestre de 2014 Roteiro 1 Maior número 2 Soma de n números 3 Fatorial 4 Máximo Divisor Comum (MDC) 5 Números primos

Leia mais

Sub Rotinas. Estrutura de Dados. Prof. Kleber Rezende

Sub Rotinas. Estrutura de Dados. Prof. Kleber Rezende Sub Rotinas Estrutura de Dados Prof. Kleber Rezende Considerações Iniciais Uma dos métodos mais comuns e amplamente utilizados em programação de computadores é o Top-Down. Nesta abordagem um problema é

Leia mais

Programação em Linguagem C

Programação em Linguagem C Programação em Linguagem C Aula #111 EBS 111 ICC Prof Luiz Fernando S Coletta luizfsc@tupaunespbr Campus de Tupã Modularização do código 2 Modularização do código Organização, legibilidade e manutenibilidade

Leia mais

Variáveis, Tipos de Dados e Operadores

Variáveis, Tipos de Dados e Operadores ! Variáveis, Tipos de Dados e Operadores Engenharias Informática Aplicada 2.o sem/2013 Profa Suely (e-mail: smaoki@yahoo.com) VARIÁVEL VARIÁVEL É um local lógico, ligado a um endereço físico da memória

Leia mais

Algoritmos e Estruturas de Dados I IEC012. Procedimentos e Funções. Prof. César Melo Todos os créditos para o professor Leandro Galvão

Algoritmos e Estruturas de Dados I IEC012. Procedimentos e Funções. Prof. César Melo Todos os créditos para o professor Leandro Galvão Algoritmos e Estruturas de Dados I IEC012 Procedimentos e Funções Prof. César Melo Todos os créditos para o professor Leandro Galvão Procedimentos e Funções Procedimentos são s estruturas que agrupam um

Leia mais

ESTRUTURAS COMPOSTAS VETOR

ESTRUTURAS COMPOSTAS VETOR ESTRUTURAS COMPOSTAS Variáveis Compostas Unidimensionais VETOR slides desenvolvidos pela Profa. Rosely Sanches 2 ESTRUTURAS COMPOSTAS Pode-se organizar tipos simples em tipos mais complexos formando as

Leia mais

Linguagem e Técnicas de Programação

Linguagem e Técnicas de Programação Linguagem C Função Prof. Edwar Saliba Júnior Fevereiro de 2011 Unidade 07 Função 1 Conceitos As técnicas de programação dizem que, sempre que possível, evite códigos extensos, separando o mesmo em funções,

Leia mais

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

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: funções Universidade Federal de Uberlândia Faculdade de Computação Linguagem C: funções Prof. Renato Pimentel 1 Subprogramas Subprograma: programa que auxilia o programa principal na realização de uma determinada

Leia mais

INTRODUÇÃO À LINGUAGEM C. Prof. Msc. Luis Filipe Alves Pereira 2015

INTRODUÇÃO À LINGUAGEM C. Prof. Msc. Luis Filipe Alves Pereira 2015 INTRODUÇÃO À LINGUAGEM C Prof. Msc. Luis Filipe Alves Pereira 2015 INTRODUÇÃO À LINGUAGEM C 02/23 INTRODUÇÃO Criada em 1972 na AT&T Bell Labs É uma das linguagens mais populares. Existem poucas arquiteturas

Leia mais

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

Aula 12: Funções. CI208 - Programação de Computadores. Prof. MSc. Diego Roberto Antunes CI208 - Programação de Computadores Aula 12: Funções Prof. MSc. Diego Roberto Antunes diegor@inf.ufpr.br www.inf.ufpr.br/diegor Universidade Federal do Paraná Setor de Ciências Exatas Departamento de Informática

Leia mais

Dividir para Conquistar. Material da Prof. Ana Eliza

Dividir para Conquistar. Material da Prof. Ana Eliza Dividir para Conquistar Material da Prof. Ana Eliza Modularização Situação: Necessidade de resolução de problemas cada vez maiores e/ou mais complexos. Solução: Dividir o problema grande e/ou complexo

Leia mais

ESTRUTURAS CONDICIONAIS. Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza

ESTRUTURAS CONDICIONAIS. Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza ESTRUTURAS CONDICIONAIS Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza Estruturas de Controle ESTRUTURA SEQUENCIAL ESTRUTURA CONDICIONAL ESTRUTURA DE REPETIÇÃO 2 Estruturas Condicionais

Leia mais

Fundamentos de Programação 1

Fundamentos de Programação 1 Fundamentos de Programação 1 Linguagem C Funções Slides 7 Prof. SIMÃO Jean Marcelo SIMÃO 1 #include void calc_area_quadrado(); void calc_area_triang_ret(); Funções e variáveis globais void calc_area_quadrado

Leia mais

Algoritmos e Programação. Linguagem C Procedimentos e. Eliane Pozzebon

Algoritmos e Programação. Linguagem C Procedimentos e. Eliane Pozzebon Algoritmos e Programação Linguagem C Procedimentos e Funções Eliane Pozzebon Procedimentos e Funções Procedimentos são estruturas que agrupam um conjunto de comandos, que são executados quando o procedimento

Leia mais

ESTRUTURAS CONDICIONAIS. Introdução à Ciência da ComputaçãoI Simone Senger de Souza

ESTRUTURAS CONDICIONAIS. Introdução à Ciência da ComputaçãoI Simone Senger de Souza ESTRUTURAS CONDICIONAIS Introdução à Ciência da ComputaçãoI Simone Senger de Souza Estruturas de Controle ESTRUTURA SEQUENCIAL ESTRUTURA CONDICIONAL ESTRUTURA DE REPETIÇÃO 2 Estruturas Condicionais Estrutura

Leia mais

PCI- Operadores, Expressões e Funções. Profa. Mercedes Gonzales Márquez

PCI- Operadores, Expressões e Funções. Profa. Mercedes Gonzales Márquez PCI- Operadores, Expressões e Funções. Profa. Mercedes Gonzales Márquez Constantes São valores previamente determinados e que não se alteram ao longo do programa. Assim como as variáveis, as constantes

Leia mais

Exercícios Repetição

Exercícios Repetição Curso de Engenharia de Controle e Automação Disciplina: Informática para a Automação Professor: Marcelo Cendron Exercícios Repetição 1.1 8.3 Exercícios 1. Faça um programa utilizando o comando while, que

Leia mais

MESMO QUE ESTAS VARIÁVEIS TENHAM NOME IDÊNTICOS

MESMO QUE ESTAS VARIÁVEIS TENHAM NOME IDÊNTICOS Funções As funções são blocos de instruções que facilitam o entendimento do código. Porque usar funções? Para permitir o reaproveitamento de código já construído (por você ou por outros programadores);

Leia mais

Laboratório de Introdução à Ciência da Computação I Aula de Vetores e Matrizes

Laboratório de Introdução à Ciência da Computação I Aula de Vetores e Matrizes Laboratório de Introdução à Ciência da Computação I Aula de Vetores e Matrizes Professor: Jó Ueyama Estagiária PAE: Aurea Soriano 1 Vetores em C Variável para armazenar valores homogêneos e é unidimensional

Leia mais

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

#include <stdio.h> void Swap (int *a,int *b) { int temp; temp=*a; *a=*b; *b=temp; } main () { 422 #include void Swap (int *a,int *b) int temp; temp=*a; *a=*b; *b=temp; main () int num1,num2; printf("\nentre com o primeiro valor: "); scanf ("%d",&num1); printf("\nentre com o segundo valor:

Leia mais

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

Função. Unidade autônoma do programa desenvolvida para executar alguma atividade. A estrutura de uma função C é semelhante à da função main( ) Função Unidade autônoma do programa desenvolvida para executar alguma atividade Evita que se escreva o mesmo código inúmeras vezes em um mesmo programa A estrutura de uma função C é semelhante à da função

Leia mais

Cap. 3 Entrada e Saída e Controle de Fluxo

Cap. 3 Entrada e Saída e Controle de Fluxo Programação de Computadores II Cap. 3 Entrada e Saída e Controle de Fluxo Livro: Waldemar Celes, Renato Cerqueira, José Lucas Rangel. Introdução a Estruturas de Dados, Editora Campus (2004) Slides adaptados

Leia mais

Introdução a Computação

Introdução a Computação Introdução a Computação Aula 03 Introdução a Linguagem C Edirlei Soares de Lima Programação Programa é um algoritmo escrito em uma linguagem de programação. Existem diversas linguagens

Leia mais

Estruturas de Repetição

Estruturas de Repetição Prof.: Edwar Saliba Júnior Fevereiro 2012 1 Nomenclaturas: Loopings, Laços ou Malhas de Repetição; Possibilidades de Parada: Quantidade de repetições previamente definida (melhoria na legibilidade e qualidade

Leia mais

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

INF1007: Programação 2. 0 Revisão. 06/08/2015 (c) Dept. de Informática - PUC-Rio 1 INF1007: Programação 2 0 Revisão 06/08/2015 (c) Dept. de Informática - PUC-Rio 1 Tópicos Principais Variáveis e Constantes Operadores e Expressões Entrada e Saída Tomada de Decisão Construção com laços

Leia mais

Sub-rotinas em C. Disciplina de Programação de Computadores I Universidade Federal de Ouro Preto

Sub-rotinas em C. Disciplina de Programação de Computadores I Universidade Federal de Ouro Preto Sub-rotinas em C Disciplina de Programação de Computadores I Universidade Federal de Ouro Preto Agenda Sub-rotinas: Função e Procedimentos A função main Variáveis globais e locais Escopo de variáveis Passagem

Leia mais

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

Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO Introdução Criada em 1972, por Dennis Ritchie; Centro de Pesquisas da Bell Laboratories; Para utilização no S.O. UNIX; C é uma linguagem

Leia mais

Funções em C. Lucas Ferrari de Oliveira Professor Adjunto. Linguagem de Programação Estruturada I. Universidade Federal do Paraná

Funções em C. Lucas Ferrari de Oliveira Professor Adjunto. Linguagem de Programação Estruturada I. Universidade Federal do Paraná em C Linguagem de Programação Estruturada I Lucas Ferrari de Oliveira Professor Adjunto Universidade Federal do Paraná Sumário Funções: Conceitos; Forma Geral das funções; Regras de Escopo; Argumentos

Leia mais

Programação estruturada

Programação estruturada Programação estruturada IPC2 1999/2000 F. Nunes Ferreira Acetatos baseados no livro C: How to Program (second edition) H. M. Deitel P. J. Deitel Prentice Hall, 1994 2 Exercício Desenvolvimento de um programa

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Programação Aula 04 Funções Edirlei Soares de Lima Organização de Código Um programa representa a implementação de uma solução de um determinado problema. É fundamental

Leia mais

Funções. Prof. Fabrício Olivetti de França

Funções. Prof. Fabrício Olivetti de França Funções Prof. Fabrício Olivetti de França Resposta do Exercício 4 while ( trocou ) { trocou = 0; for ( i=0; i

Leia mais

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

Capítulo 4: Programando com Funções. Pontifícia Universidade Católica Departamento de Informática Capítulo 4: Programando com Funções Pontifícia Universidade Católica Departamento de Informática Organização de Código Um programa de computador representa a implementação de uma solução de um determinado

Leia mais

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

Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Terceira Aula Prática - 10 de setembro de 2010 Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Terceira Aula Prática - 10 de setembro de 2010 1 O comando while Para fazer os exercícios desta aula prática você irá precisar de um

Leia mais

1ª Lista de Exercícios

1ª Lista de Exercícios Universidade Federal do Rio de Janeiro Data: 26/04/05 Disciplina: Computação I 1ª Lista de Exercícios 1) Faça um programa, em pseudo-código, que peça ao usuário que informe n números reais e então calcule

Leia mais

Capítulo 1: Introdução à Linguagem C. Pontifícia Universidade Católica Departamento de Informática

Capítulo 1: Introdução à Linguagem C. Pontifícia Universidade Católica Departamento de Informática Capítulo 1: Introdução à Linguagem C Pontifícia Universidade Católica Departamento de Informática Programa Programa é um algoritmo escrito em uma linguagem de programação. No nosso caso, a linguagem C.

Leia mais

Aula 11: Modularização

Aula 11: Modularização Aula 11: Modularização Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Modularização Programação de Computadores IV 1 / 37 Agenda 1 Revisão e Contexto

Leia mais

Apontadores/ponteiros

Apontadores/ponteiros Apontadores/ponteiros 1 Apontadores/ponteiros 1. Um ponteiro pode ser manipulado como sendo um vetor. #include int v[5] = { 10, 20, 30, 40, 50 ; int p, i; p = v; for (i = 1; i < 5; i++) printf

Leia mais

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

Linguagem de Programação I. Aula 10 Funções Linguagem de Programação I Aula 10 Funções Da Aula Anterior Tipos de dados básicos e operadores em C Declaração de variáveis e modificadores de tipo Estruturas de Controle Arrays unidimensionais Geração

Leia mais

Módulo 3 Controle de Fluxo

Módulo 3 Controle de Fluxo Estruturas de Dados Módulo 3 Controle de Fluxo 16/8/2005 (c) Marco A. Casanova - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus

Leia mais

Simulado da Prova Parcial 2 (01/08/2013)

Simulado da Prova Parcial 2 (01/08/2013) Simulado da Prova Parcial 2 (01/08/2013) A prova consiste na elaboração de algoritmos para resolução dos problemas descritos a seguir. Você deve usar a linguagem C para escrever os algoritmos. Seus algoritmos

Leia mais

Linguagem C. André Tavares da Silva.

Linguagem C. André Tavares da Silva. Linguagem C André Tavares da Silva dcc2ats@joinville.udesc.br Variáveis Posição nomeada de memória que é usada para guardar um valor que pode ser modificado pelo programa. Todas as variáveis devem ser

Leia mais

Sumário. Introdução à Ciência da Computação. Ponteiros em C. Introdução. Definição. Por quê ponteiros são importantes?

Sumário. Introdução à Ciência da Computação. Ponteiros em C. Introdução. Definição. Por quê ponteiros são importantes? Introdução à Ciência da Computação Ponteiros em C Prof. Ricardo J. G. B. Campello Sumário Introdução Definição de Ponteiros Declaração de Ponteiros em C Manipulação de Ponteiros em C Operações Ponteiros

Leia mais

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

Programação de Computadores I Funções de Repetição da Linguagem C PROFESSORA CINTIA CAETANO Programação de Computadores I Funções de Repetição da Linguagem C PROFESSORA CINTIA CAETANO Comando WHILE O comando while executa um bloco de comandos enquanto a condição testada for verdadeira (diferente

Leia mais

2º Roteiro de Laboratório Estruturas condicionais

2º Roteiro de Laboratório Estruturas condicionais 2º Roteiro de Laboratório Estruturas condicionais Tópicos abordados 1. Estruturas if e if/ 1.1. Sintaxe 1.2. Exemplo: par_impar.c 2. Aplicação 2.1. Problema resolvido: [PR 1] 2.2. Problemas propostos:

Leia mais

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

Estruturas de Dados. Módulo 4 Funções. 9/8/2005 (c) Dept. Informática - PUC-Rio 1 Estruturas de Dados Módulo 4 Funções 9/8/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004)

Leia mais

ESTRUTURAS COMPOSTAS

ESTRUTURAS COMPOSTAS ESTRUTURAS COMPOSTAS Variáveis Compostas Unidimensionais VETOR Clique para adicionar texto Profa. Dra. Elisa Yumi Nakagawa 1. Semestre de 2017 Slides inicialmente preparados pela Profa. Rosely Sanches

Leia mais

INF 1620 P1-13/09/02 Questão 1 Nome:

INF 1620 P1-13/09/02 Questão 1 Nome: INF 1620 P1-13/09/02 Questão 1 Considere que o cálculo da multa para o pagamento de um determinado imposto varia de acordo com a tabela a seguir: Valor do Imposto Original Multa por mês de atraso até R$

Leia mais

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

3.1 - Funções para manipular dados de entrada e saída padrão 1616161616161616161616161616161616161616161616161616 3- ENTRADA E SAÍDA EM C Os principais meios para executar operações de entrada e saída (E/S) são: Entrada e saída pelo console (ou padrão): teclado

Leia mais

Introdução a Programação de Jogos

Introdução a Programação de Jogos Introdução a Programação de Jogos Aula 03 Funções Prof. Augusto Baffa < abaffa@inf.puc-rio.br> Organização de Código Um programa representa a implementação de uma solução de um determinado problema. É

Leia mais

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

Algoritmos e Estruturas de Dados I. Universidade Federal de São João del-rei Pedro Mitsuo Shiroma Sala 119 Bloco 3 Algoritmos e Estruturas de Dados I Universidade Federal de São João del-rei Pedro Mitsuo Shiroma Sala 119 Bloco 3 Sub-rotina Sub-rotina (CAPÍTULO 8): Funções e procedimentos Blocos de instruções que realizam

Leia mais

Programação de Computadores II. Cap. 5 Vetores

Programação de Computadores II. Cap. 5 Vetores Programação de Computadores II Cap. 5 Vetores Livro: Waldemar Celes, Renato Cerqueira, José Lucas Rangel. Introdução a Estruturas de Dados, Editora Campus (2004) Slides adaptados dos originais dos profs.:

Leia mais

Classificação das linguagens de programação

Classificação das linguagens de programação Introdução Linguagem É um meio de comunicação entre pessoas. Faculdade de expressão audível e articulada do homem. Conjunto de sinais falados, escritos ou gesticulados de que se serve o homem para demonstrar

Leia mais

Linguagens de programação. Introdução ao C (continuação)

Linguagens de programação. Introdução ao C (continuação) Linguagens de programação Introdução ao C (continuação) M@nso 2003 Sumário Introdução à programação Linguagem C Repetição de instruções Ciclos com controlo inicial ciclo While ciclo For Ciclos com controlo

Leia mais

Estruturas condicionais

Estruturas condicionais Estruturas condicionais David Déharbe 1 1 Objetivos da aula Revisar os primeiros elementos de linguagem C já vistos. Condicionais simples Condicionais compostas Operadores lógicos 2 2 Objetivos da aula

Leia mais

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

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO LÓGICA DE PROGRAMAÇÃO PROFª. M.Sc. JULIANA H Q BENACCHIO Laços while aninhados Por exemplo, para criar uma estrutura de tópico 1. Capitulo 1.1 Secao 1.1.1 Subsecao 1.1.2 Subsecao 1.1.3 Subsecao 1.1.4 Subsecao

Leia mais