Programação modular. Função
|
|
- Iasmin Quintão Ávila
- 7 Há anos
- Visualizações:
Transcrição
1 X 214 Função Definição matemá>ca Uma relação entre elementos de um conjunto (entrada) e elementos de outro conjunto (saída), com a propriedade que cada elemento da entrada relaciona-se com exatamente um elemento da saída. Definição computacional Uma unidade autônoma de código definida para executar um processamento específico. Outra definição Um conjunto de instruções agrupados em um bloco que recebe um nome e, através deste, pode ser executado. 215
2 Vantagens do uso de funções Dividir um único programa em unidades menores, mais fáceis de codificar e corrigir. cada um no seu quadrado Facilitar a compreensão e depuração do programa-fonte. Evitar a repe>ção de trechos de código. Permi>r a reu>lização de código já construído (por você ou por outros programadores.) Desenvolver a construção de programas complexos a par>r de módulos mais simples (o todo é a soma das partes). 216 Paradigma de programação modular em C programa... função 1 função 2 função n função 3 função 4 217
3 Execução de funções Quando uma função é chamada, o fluxo do programa é interrompido e desviado para a execução do bloco de instruções da função. Quando a execução a>nge o final do bloco da função, o fluxo do programa retorna ao ponto do programa onde a função foi chamada. Função Programa... Programa 218 E você nem desconfiava... Todo programa em C é formado por um conjunto de funções: printf(), scanf(), if(), while(), gets(), puts(), eita(),... A também é uma função!!! A execução de todo programa em C inicia pela função. Como todas as outras en>dades de um programa em C toda função deve ser declarada antes de ser usada. 219
4 A biblioteca math.h Contém a definição de diversas funções matemá>cas. função sin(x) cos(x) tan(x) fabs(x) sqrt(x) log(x) log10(x) exp(x) pow(x,y) retorna seno de x cosseno de x tangente de x x x ln x log 10 x e x x y Funções da biblioteca math.h Geralmente usam argumentos do >po double e retornam valores do >po double. 220 Forma geral de funções em C definidas pelo usuário O >po de valor produzido pela função (primi>vo ou definido pelo usuário) A lista de variáveis (>po e iden>ficador) u>lizadas pela função, separadas por vírgulas O nome da função O bloco da função tipo identificador(tipo arg1,..., tipo argn) declaração de variáveis; As variáveis internas da função corpo da função; Os comandos da função 221
5 Passagem de argumentos A declaração de uma função estabelece a lista >pada de argumentos necessários para seu processamento. As variáveis que compõem a lista de argumentos de uma função são conhecidas como parâmetros formais da função. Na chamada à função, apenas os valores (variáveis ou constantes) necessários para o processamento da função devem ser informados entre parênteses, na mesma ordem em que foram declarados na definição da função. Se uma função não precisar de argumentos para realizar o processamento, a lista de parâmetros será vazia. 222 O comando return() Após o processamento, uma função poderá produzir algum valor que poderá será u>lizado pelo programa. O comando return() é u>lizado para retornar para o programa um único valor resultante do processamento de uma função. O valor retornado pela função será uma variável de um dos seguintes >pos: primi>vos: char, int, float ou double (ou ponteiros desses >pos); definidos pelo usuário (ou ponteiros desses >pos). Atenção! Se uma função deve retornar múl>plos valores, então ela deverá ser redefinida em múl>plas funções, cada uma retornando apenas um valor. 223
6 Função definida pelo usuário Exemplo: Exibir os valores da função f(x) = 3x 3 5x 2 x + 5, num intervalo [a, b] informado pelo usuário. double F(double X) return(3*x*x*x 5*X*X X + 5); double a, b, x, y; printf("informe os extremos do intervalo: "); scanf("%f %f", &a, &b); for (x = a; x <= b; x = x + 0.1) y = F(x); printf("f(%f) = %f\n", x, y); primeiro calcula a expressão e depois retorna o resultado COMECE AQUI! chamada à função F(): x será copiado em X 224 Função definida pelo usuário Exemplo: Calcular y = x 2 : double Sqr(double x) double y; y é variável interna da função y = x*x; return(y); depois do processamento da função, y será copiado em resultado double valor, resultado; COMECE AQUI! printf("informe um numero: "); scanf("%lf", &valor); resultado = Sqr(valor); printf("%f^2 = %f\n", valor, resultado); chamada à função sqr(): valor será copiado em x 225
7 Função definida pelo usuário Exemplo: Calcular o fatorial de um número inteiro posi>vo. double Fatorial(int n) int i; double fat = 1; for (i = 1; i <= n; i++) fat = fat * i; return(fat); int n; printf("informe um número inteiro positivo: "); scanf("%d", &n); printf("%d! = %.0f\n", n, Fatorial(n)); COMECE AQUI! o resultado retornado pela função será exibido aqui. 226 Função definida pelo usuário Exemplo: Apresentar um menu e ler a opção do usuário. char Menu() char opc; UIA!? Uma função sem parâmetros! printf("escolha a operacao a ser realizada\n"); printf("[+] Adicao\n[-] Subtracao\n[*] Multiplicacao\n[/] Divisao\n"); printf("opcao: "); scanf("%c", &opc); return(opc); O valor lido dentro desta função será retornado para a função main() float a, b; char op; printf("informe os operandos: "); scanf("%f %f", &a, &b); op = Menu();... COMECE AQUI! O valor retornado pela função será atribuído à uma variável. 227
8 Função definida pelo usuário Exemplo: Calcular a soma de 2 números complexos. typedef struct double Re; double Im; complexo; complexo CpxSoma(complexo z1, complexo z2) complexo z; z.re = z1.re + z2.re; z.im = z1.im + z2.im; return(z); complexo x, y, w; printf("primeiro numero complexo: "); scanf("%lf %lf", &x.re, &x.im); printf("segundo numero complexo: "); scanf("%lf %lf", &y.re, &y.im); w = CpxSoma(x, y); printf("resultado: %f + %fi\n", w.re, w.im); 228 Retornando valores A definição de funções que retornam vetores de algum >po primi>vo (char, int, float ou double) ou definido pelo usuário é feita usandose ponteiros. Retornando uma string: char *NomeFuncao(...) Retornando um vetor de inteiros: int *NomeFuncao(...) Retornando uma matriz de valores reais de dupla precisão: double **NomeFuncao(...) 229
9 Retornando uma string Exemplo: Gerar uma senha usando n caracteres aleatórios da tabela ASCII. char *GeraString(int n) int i; char *s; ATENÇÃO: n deverá ser informado antes da chamada à função // alocar memoria para a string s = (char *) calloc(n + 1, sizeof(char)); // gerar a string elemento a elemento for (i = 0; i < n; i++) s[i] = 33 + rand()%( ); // usar os caracteres do intervalo [33, 126] s[n] = '\0'; return(s); Atenção! Em programas que u>lizam números aleatórios, a inicialização do gerador da semente através do comando srand(time(0)); deverá ser feita na função. 230 Retornando um vetor Exemplo: Gerar apostas na Mega-Sena com n dezenas (n informado pelo usuário.) int *Aposta(int n) int *v; // vetor de apostas int i, pos; // alocar memoria para o vetor de apostas v = (int *) calloc(60, sizeof(int)); // sortear as dezenas for (i = 0; i < n; i++) pos = rand()%60; // posição sorteada if (v[pos] == 1) // se a posição já havia sido sorteada, escolha outra i--; else v[pos] = 1; return(v); 231
10 Retornando uma matriz Exemplo: Criar uma matriz de Hilbert de ordem n. double **Hilbert(int n) double **a; int i, j; // alocar memória para os elementos da matriz a = (double **) calloc(n, sizeof(double *)); for (i = 0; i < n; i++) a[i] = (double *) calloc(n, sizeof(double)); // elementos da matriz de Hilbert for (i = 0; i < n; i++) for (j = 0; j < n; j++) a[i][j] = 1.0/(i + j + 1); return(a); 232 O >po primi>vo void O >po void é u>lizado apenas para definir funções que não retornam nenhum valor para a função que a chamou. void Menu() printf("escolha a operacao a ser realizada\n"); printf("[+] Adicao\n[-] Subtracao\n[*] Multiplicacao\n[/] Divisao\n"); printf("opcao: "); float a, b; char op; printf("informe os operandos: "); scanf("%f %f", &a, &b); Menu(); scanf( %c, &op);... Atenção! Funções do >po void não usam o comando return(). 233
11 O >po primi>vo void Calcular e exibir a tabuada do 7. int i, j; for (j = 0; j < 16; j++) printf("-"); printf("\n"); printf(" Tabuada do 7 \n"); for (j = 0; j < 16; j++) printf("-"); printf("\n"); for (i = 1; i <= 10; i++) printf( %2d X 7 = %2d\n, i, 7*i); for (j = 0; j < 16; j++) printf("-"); printf("\n"); void Linha(int n, char ch) int j; for (j = 0; j < n; j++) printf("%c", ch); printf("\n"); int i; Linha(16, '-'); printf(" Tabuada do 7 "); Linha(16, '-'); for (i = 1; i <= 10; i++) printf( %2d X 7 = %2d\n", i, 7*i); Linha(16, '-'); 234 Escopo de variáveis Existem dois >pos de variáveis em um programa em C: Variáveis locais São aquelas definidas dentro do bloco de alguma função. São visíveis apenas pela função onde foram declaradas e não podem ser usadas ou modificadas por outras funções do programa (nem pela função main()). Os parâmetros formais também são variáveis locais da função. Existem apenas enquanto a função es>ver sendo executada. Variáveis globais São aquelas definidas fora do bloco de alguma função. São visíveis por qualquer função e podem ser usadas ou modificadas por qualquer função do programa. Existem durante todo o tempo de execução do programa. Importante! Se houverem variáveis locais e globais com o mesmo nome, a função irá u>lizar apenas a variável local. 235
12 Escopo de variáveis int i; int F1(int n) j = n;... float F2(int i) int j; i = 2*i j = F1(i);... float j; // i é variável global // F1() tem uma variável local chamada n // erro: j não foi declarada como variável global ou local de f1() // F2() tem uma variável local chamada i // F2() tem uma variável local chamada j // alterando a variável local i // alterando a variável local j // COMECE AQUI! // j é variável local de main() i = 1; j = F2(i);... // alterando a variável global i // j recebe o resultado retornado pela função F2() 236 Escopo de variáveis O uso de variáveis globais permite trabalhar com funções sem argumentos. #include <stdio.h> #include <stdlib.h> float nota1, nota2, nota3, media; void LeNotas() printf("informe as notas das 3 provas: "); printf("1a prova = "); scanf("%f", ¬a1); printf("2a prova = "); scanf("%f", ¬a2); printf("3a prova = "); scanf("%f", ¬a3); LeNotas(); media = (nota1 + nota2 + nota3)/3; printf("media aritmetica = %f\n", media); 237
13 Passagem de parâmetros A chamada à uma função pode conter uma lista de variáveis que serão u>lizadas no processamento da função. Cada variável da lista pode ser passada de duas formas: Passagem por valor O valor da variável é copiado para o respec>vo parâmetro formal da função. As alterações realizadas dentro da função não modificam o valor original da variável. Passagem por referência O endereço da variável é passado para o respec>vo parâmetro formal da função. As alterações realizadas dentro da função modificam o valor original da variável. 238 Exemplo: Passagem por valor void Troca(int a, int b) int aux; aux = a; a = b; b = aux; printf("funcao: %d %d\n", a, b); int i = 2, j = 5; Execução: Main: 2 5 Funcao: 5 2 Main: 2 5 Pressione... printf("main: %d %d\n", i, j); Troca(i,j); printf("main: %d %d\n", i, j); OOOPS! A troca não modificou os valores originais. 239
14 Exemplo: Passagem por referência void Troca(int *a, int *b) int aux; aux = *a; *a = *b; *b = aux; printf("funcao: %d %d\n", *a, *b); int i = 2, j = 5; Execução: Main: 2 5 Funcao: 5 2 Main: 5 2 Pressione... printf("main: %d %d\n", i, j); Troca(&i,&j); printf("main: %d %d\n", i, j); TCHÃÃÃ! A troca modificou os valores originais. 240 Passagem de parâmetros Atenção! Na declaração de funções que u>lizam strings, vetores e matrizes como parâmetros devem ser u>lizados ponteiros. Logo, essas variáveis são sempre passadas por referência, ou seja, as modificações realizadas dentro da função alteram o valor original. Exemplo: Inverter uma string. void Inverte(char *str) int i, n; char tmp; n = strlen(str); // determina o tamanho da string for (i = 0; i < n/2; i++) tmp = str[i]; str[i] = str[n i]; str[n i] = tmp; 241
15 Passagem de parâmetros Exemplo: Cruzar 2 vetores binários com n elementos, usando os p primeiros elementos do 1º vetor e os n-p seguintes do 2º vetor. int *Cruzamento(int *v1, int *v2, int n, int p) int i; int *v; v = (int *) calloc(n, sizeof(int)); for (i = 0; i < n; i++) if (i < p) v[i] = v1[i]; else v[i] = v2[i]; return(v); 242 Estratégias de programação Exemplo: Calcular a soma dos n primeiros números naturais. Função fechada Estabelece uma seqüência de comandos onde o problema original não aparece. S(n) = n * ( (n + 1) / 2 ) Função recursiva Depende do valor da própria função, calculada para um caso reduzido. S(n) = n + S(n 1) 243
16 Funções recursivas São funções que fazem chamadas a si mesmas. A cada chamada, cria-se na memória uma nova ocorrência da função, com comandos e variáveis próprios, isolados das chamadas anteriores. A função será executada até que todas as ocorrências sejam resolvidas. Exemplo: n! = n * (n 1)! = n * (n 1) * (n 2)! =... double Fatorial(int n) double valor; if ( n <= 1 ) return (1); else valor = n * Fatorial(n - 1); return (valor); 244 Funções recursivas Exemplo: Cálculo de 3!. main: fat = Fatorial(3); retorna 6 Fatorial(3): valor = 3 * Fatorial(2); return (valor); retorna 2 Fatorial(2): valor = 2 * Fatorial(1); return (valor); Fatorial(1): return (1); retorna 1 245
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 maisSuponha 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 maisAlgoritmos RESUMO - LINGUAGEM C
Algoritmos RESUMO - LINGUAGEM C 1 Sintaxe da linguagem C Componentes reconhecidos pela linguagem C (sintaxe da linguagem): tipos propriedades dos dados; declarações partes do programa, podendo dar significado
Leia maisEstruturas de repetição
Título em português: FEITIÇO DO TEMPO (1993) Sinopse: Um repórter de televisão que faz previsões de meteorologia vai à uma pequena cidade para fazer uma matéria especial sobre o inverno. Querendo ir embora
Leia maisPROGRAMAÇÃ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 maisLINGUAGEM E TÉCNICAS DE PROGRAMAÇÃO
VARIÁVEL LINGUAGEM C Aula 3 TECNOLOGIA EM JOGOS DIGITAIS LINGUAGEM E TÉCNICAS DE PROGRAMAÇÃO Marcelo Henrique dos Santos Marcelo Henrique dos Santos Mestrado em Educação (em andamento) MBA em Negócios
Leia maisDeclarações. C diferencia letras maiúsculas de minúsculas! int n, N; n é diferente de N!
Declarações Os nomes das variáveis devem conter apenas letras, dígitos e o símbolo _ Os principais tipos são: int, float, double e char Exemplos: int n; int quantidade_valores; float x, y, somavalores;
Leia maisIntrodução à Linguagem C. Adaptado de Deise Saccol
Introdução à Linguagem C Adaptado de Deise Saccol 1 Tradução CÓDIGO FONTE... LET SOMA = VAR1 + TOTAL... TRADUTOR CÓDIGO OBJETO... 00010110111001011001011010... MONTADOR (assembler) Tradutor para linguagens
Leia maisAula 12- Variáveis e valores reais
Aula 12- Variáveis e valores reais Até agora todos os nossos problemas continham apenas valores inteiros e portanto variáveis do tipo int. Para resolver problemas que usam valores com parte fracionária,
Leia maisFUNÇÕES EM C Material adaptado da profa Silvana Maria Affonso de Lara
Universidade do Estado de Minas Gerais - UEMG Curso de Engenharia da Computação FUNÇÕES EM C 1 Material adaptado da profa Silvana Maria Affonso de Lara ROTEIRO DA AULA Definição de Função Argumentos, retornos
Leia maisEscopo das Variáveis. Funções. Funções. Funções. Funções. Algoritmos e Lógica de Programação. Programação Estruturada Funções Recursividade
Algoritmos e Lógica de Programação Escopo das Variáveis Linguagem C Escopo de Programa Escopo de Arquivo Escopo de Função Programação Estruturada id d Escopo de Bloco static global Reinaldo Gomes reinaldo@cefet-al.br
Leia maisModularidade - 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 maisAdriano Cruz 21 de julho de Instituto de Matemática Departamento de Ciência da Computação UFRJ
C Funções Adriano Cruz adriano@nce.ufrj.br 21 de julho de 2017 Instituto de Matemática Departamento de Ciência da Computação UFRJ 1 Resumo Seção Introdução Forma Geral Protótipos de Funções Escopo de Variáveis
Leia maisLÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO
LÓGICA DE PROGRAMAÇÃO PROFª. M.Sc. JULIANA H Q BENACCHIO Primeiro programa em C #include int main() { int num1, num2, result; scanf("%d",&num1); scanf("%d",&num2); result = num1 + num2; printf("%d",
Leia maisMó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 maisLinguagem C: Subprogramação
Prof. Paulo R. S. L. Coelho paulo@facom.ufu.br Faculdade de Computação Universidade Federal de Uberlândia GEQ007 Subprogramação Organização 1 Subprogramação 2 3 Passagem por Valor Passagem por Referência
Leia maisAula 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 maisFunçã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 maisInstituto 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 maisComputação 2. Aula 7. Profª. Fabiany Ponteiros
Computação 2 Aula 7 Ponteiros Profª. Fabiany fabianyl@utfpr.edu.br O que são Ponteiros? Um ponteiro é uma variável que contém um endereço de memória. Este endereço é normalmente a posição de uma outra
Leia maisED1 - Aula 01 Introducao e revisão
ED1 - Aula 01 Introducao e revisão Profa. Nádia Félix Hebert Coelho Instituto de Informática Universidade Federal de Goiás Roteiro Detalhes do curso Plano de Ensino sharif Revisão Tipos Construídos Alocação
Leia maisSubprogramas. (ou Sub-rotinas) em C: Procedimentos e Funções. 2015/1 Programação Básica de Computadores (INF 09325)
Subprogramas (ou Sub-rotinas) em C: Procedimentos e Funções 2015/1 Programação Básica de Computadores (INF 09325) Archimedes Detoni www.inf.ufes.br/~archimedesdetoni archimedesdetoni@inf.ufes.br Programa
Leia maisCap. 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 maisIntrodução à Ciência da Computação I. Alocação Dinâmica. Prof. Claudio Fabiano Motta Toledo
Introdução à Ciência da Computação I Alocação Dinâmica Prof. Claudio Fabiano Motta Toledo Sumário Funções para alocação de memória Ponteiros para ponteiros 8/12/16 2 Funções para alocação de memória malloc(),
Leia maisponteiros 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 maisPonteiros - Parte I. Ponteiros, Ponteiros e Vetores, Algoritmo Bubble Sort, Alocação Dinâmica de Memória
Ponteiros - Parte I Ponteiros, Ponteiros e Vetores, Algoritmo Bubble Sort, Alocação Dinâmica de Memória Ponteiros Um ponteiro é uma variável que contém um endereço de memória. Esse endereço é normalmente
Leia maisIntrodução à Linguagem C. Adaptado de slides das Profas. Patrícia Jaques, Mônica Py, Deise Saccol e Vania Bogorny
Introdução à Linguagem C Adaptado de slides das Profas. Patrícia Jaques, Mônica Py, Deise Saccol e Vania Bogorny 1 Histórico da Linguagem C Criada por Denis Ritchie, na década de 1970, para uso em um computador
Leia maisIntrodução à Linguagem C
Introdução à Linguagem C 1 Histórico da Linguagem C Criada por Denis Ritchie, na década de 1970, para uso em um computador DEC PDP-11 em Unix C++ é uma extensão da linguagem C O sistema Unix é escrito
Leia maisSub-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 maisEstruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões.
1 Estruturas da linguagem C 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões. Identificadores Os identificadores seguem a duas regras: 1. Devem ser começados por letras
Leia maisAula 07: Introdução a Funções
Aula 07: Introdução a Funções Introdução a Programação Túlio Toffolo & Puca Huachi http://www.toffolo.com.br BCC201 2019/1 Departamento de Computação UFOP Aula Anterior Comandos condicionais Exemplos diversos
Leia maisSumá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 maisComputaçã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 maisSubprogramas. 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 maisIntroduçã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 maisProgramaçã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 maisIntrodução a Linguagem C
Introdução a Linguagem C Professor: Juliano Lucas Gonçalves juliano.goncalves@ifsc.edu.br Agenda Histórico Estrutura básica de um programa em C Diretivas para o processador Bibliotecas Ambiente de desenvolvimento
Leia maisUNIVERSIDADE LUSÓFONA DE HUMANIDADES E TECNOLOGIAS 2º Semestre 2013/2014
UNIVERSIDADE LUSÓFONA DE HUMANIDADES E TECNOLOGIAS 2º Semestre 2013/2014 Programação em C 18/06/2014 Leia com atenção as perguntas e justifique cuidadosamente todas as respostas 1. Qual o objetivo de uma
Leia maisLINGUAGEM 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.
LINGUAGEM C: FUNÇÕES Prof. André Backes FUNÇÃO Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa. printf(): função que escreve na tela scanf(): função que lê o teclado
Leia maisIntroduçã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 maisIntrodução à Programação
Programação de Computadores Introdução à Programação Prof. Helton Fábio de Matos hfmatos@dcc.ufmg.br Agenda Algoritmo & Programa Variáveis Declaração de tipos Comando de entrada ou de leitura Comando de
Leia maisIntrodução a Programação de Jogos
Introdução a Programação de Jogos Aula 06 Estruturas Condicionais Edirlei Soares de Lima Tomada de Decisão Até o momento, todas as instruções dos nossos programas eram executadas
Leia maisAula 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 maisINF 1007 Programação II
INF 1007 Programação II Aula 04 Alocação Dinâmica Edirlei Soares de Lima Vetores - Declaração e Inicialização Declaração de um vetor: int meu_vetor[10]; Reserva um espaço de memória
Leia maisAula 25: Alocação Dinâmica
Aula 25: Alocação Dinâmica Introdução a Programação Túlio Toffolo & Puca Huachi http://www.toffolo.com.br BCC201 2019/1 Departamento de Computação UFOP Aulas anteriores Estruturas de memórias heterogêneas
Leia maisAula 13 Oficina de Programação Modularização. Profa. Elaine Faria UFU
Aula 13 Oficina de Programação Modularização Profa. Elaine Faria UFU - 2017 O que é modularização? No século XIX, Henry Ford, para baratear e massificar a montagem de carros, criou uma base modular. Esta
Leia maisPermite modularidade (dividir programa em partes): Facilita a depuração (debug) e portabilidade.
222222222222222222222222222 8 - FUNÇÕES 81 - Características básicas É um trecho independente de código, com objetivos bem definidos Programas em C, geralmente consistem em várias pequenas funções, ao
Leia maisDAS5102 Fundamentos da Estrutura da Informação
Ponteiros e Funções Funções ou sub-rotinas são parcelas de código que podem ser invocadas a partir do programa principal ou até mesmo por outras sub-rotinas. Elas têm como objetivo a execução de uma tarefa
Leia maisPCI- 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 maisUniversidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação. Material preparado pela profa Silvana Maria Affonso de Lara
Universidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação FUNÇÕES EM C 1 Material preparado pela profa Silvana Maria Affonso de Lara 2º semestre de 2010 ROTEIRO DA AULA Definição
Leia maisAula 14: Estruturas de Seleção e Controle em C
Aula 14: Estruturas de Seleção e Controle em C Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Estruturas de Seleção e Controle Programação de Computadores
Leia maisDividir 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 maisUniversidade 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 maisAtividade de laboratório listas encadeadas simples
Atividade de laboratório listas encadeadas simples 1. Estrutura básica Uma lista encadeada simples é uma estrutura de dados composta de uma seqüência de estruturas elementares chamadas nós. Cada nó contém
Leia maisIntroduçã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 maisProgramação de Computadores I Funções na Linguagem C PROFESSORA CINTIA CAETANO
Programação de Computadores I Funções na Linguagem C PROFESSORA CINTIA CAETANO Introdução Funções são as estruturas que permitem ao usuário separar seus programas em blocos de construção. A principal característica
Leia maisAula 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 maisIntrodução à Linguagem C
Introdução à Linguagem C Simone Ceolin UNIFRA Adaptado de slides das Profas. Patrícia Jaques, Mônica Py e Deise Saccol 1 Histórico da Linguagem C Criada por Denis Ritchie, na década de 1970, para uso em
Leia maisimprimir seus quadrados.
1) Dada uma seqüência de números inteiros não-nulos, seguida por 0, imprimir seus quadrados. int numero, /* usada para leitura da sequencia */ quadrado; /* guarda o quadrado do numero lido */ printf("\n\tcalculo
Leia maisSub 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 maisAlgoritmos 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 maisIntrodução à Linguagem C
Engenharia de CONTROLE e AUTOMAÇÃO Introdução à Linguagem C Aula 02 DPEE 1038 Estrutura de Dados para Automação Curso de Engenharia de Controle e Automação Universidade Federal de Santa Maria beltrame@mail.ufsm.br
Leia maisCCO 016 / COM 110 Fundamentos de Programação
CCO 016 / COM 110 Fundamentos de Programação Prof. Roberto Affonso da Costa Junior Universidade Federal de Itajubá AULA 06 Operações matemáticas Comandos Sequenciais Comandos Sequenciais na Linguagem de
Leia maisMESMO 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 maisPonteiros em C. Adriano Joaquim de Oliveira Cruz 21 de julho de Instituto de Matemática Departamento de Ciência da Computação UFRJ
Ponteiros em C Adriano Joaquim de Oliveira Cruz 21 de julho de 2017 Instituto de Matemática Departamento de Ciência da Computação UFRJ 1 Resumo da Seção Introdução Declaração Incrementando e Decrementando
Leia maisALGORITMOS 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 maisLinguagem C. Ponteiros. Alex Vidigal Bastos.
Linguagem C Ponteiros Alex Vidigal Bastos alexvbh@gmail.com Ponteiros Ponteiros são variáveis que contém endereços. Estas variáveis apontam para algum determinado endereço da memória. Em geral, o ponteiro
Leia maisProgramação I Funções. Prof. Carlos Alberto
Programação I Funções Prof. Carlos Alberto carlos.batista@facape.br carlos36_batista@yahoo.com.br Funções Funções são blocos de códigos que podem ser nomeados e chamados de dentro de um programa; Funções
Leia maisLINGUAGEM 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.
LINGUAGEM C: FUNÇÕES Prof. André Backes FUNÇÃO Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa. printf(): função que escreve na tela scanf(): função que lê o teclado
Leia maisIntrodução a Programação. Ponteiros e Strings, Alocação Dinâmica
Introdução a Programação Ponteiros e Strings, Alocação Dinâmica Tópicos da Aula Hoje aprenderemos a relação entre ponteiros e strings Ponteiros para strings X Vetores de Caracteres Vetores de ponteiros
Leia maisLinguagem 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 maisMC-102 Aula 13. Instituto de Computação Unicamp. 29 de Setembro de 2016
MC-102 Aula 13 Funções I Instituto de Computação Unicamp 29 de Setembro de 2016 Roteiro 1 Funções Definindo uma função Invocando uma função 2 O tipo void 3 A função main 4 Protótipo de funções 5 Funções
Leia maisESTRUTURAS DE CONTROLE
ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO EM LINGUAGEM C 03/12/16 Repetição Contada Fluxograma Linguagem C I = C até F sim Comando não For (i=c; i
Leia maisIntrodução a Programação. Tipos Estruturados de Dados
Introdução a Programação Tipos Estruturados de Dados Tópicos da Aula Hoje aprenderemos a trabalhar com tipos de dados mais complexos Tipos Primitivos x Tipos Estruturados Conceito de Tipos Estruturados
Leia maisCCO 016 / COM 110 Fundamentos de Programação
CCO 016 / COM 110 Fundamentos de Programação Prof. Roberto Affonso da Costa Junior Universidade Federal de Itajubá AULA 06 Operações matemáticas Comandos Sequenciais Comandos Sequenciais na Linguagem de
Leia maisINF1007: 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 maisEstruturas de Controle
Estruturas de Controle ESTRUTURA SEQUENCIAL ESTRUTURAS CONDICIONAIS Estrutura Condicional Simples Estrutura Condicional Composta Seleção entre duas ou mais Seqüências de Comandos ESTRUTURA DE REPETIÇÃO
Leia maisProgramação imperativa. 3. Mais funções
Programação imperativa 3. Mais funções 3. Mais funções Funções. Escolha binária. Números inteiros. 2 3. Mais funções Funções. Escolha binária. Números inteiros. 3 As funções de cálculo As funções de cálculo
Leia maisINF 1007 Programação II
INF 1007 Programação II Aula 03 - Ponteiros Edirlei Soares de Lima Endereço de uma Variável Toda variável definida em um programa ocupa uma área de memória; A cada área de memória
Leia maisLinguagem C Funções. André Tavares da Silva.
Linguagem C Funções André Tavares da Silva andre.silva@udesc.br Funções É uma coleção de comandos identificados por um nome (identificador); As funções executam ações e podem retornar valores; main, printf
Leia maisProgramaçã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 maisModularidade - 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 maisIntrodução à Computação - Linguagem C: aulas 03, 04 e 05. Mauro Cesar Bernardes 03/Junho/2014
Introdução à Computação - Linguagem C: aulas 03, 04 e 05 Mauro Cesar Bernardes 03/Junho/014 Agenda Revisão de Comandos Básicos: printf scanf while for if... Else Funções Vetores e Matrizes Passagem de
Leia maisAula 03: Introdução a C
Aula 03: Introdução a C Introdução a Programação Túlio Toffolo & Puca Huachi http://www.toffolo.com.br BCC201 2019/1 Departamento de Computação UFOP Aula Anterior O que é um computador Organização de um
Leia maisCURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA : INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO ASSUNTO: C
CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA : INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO ASSUNTO: C PROFESSOR : Romilson Lopes Sampaio C Linguagem inventada e implementada
Leia maisINF1005: Programação 1. Condicionais. 08/03/10 (c) Rogério Rodrigues 1
INF1005: Programação 1 Condicionais 08/03/10 (c) Rogério Rodrigues 1 Tópicos Principais Tomada de Decisão Expressões Booleanas Blocos de Comandos Exemplos 08/03/10 (c) Paula Rodrigues 2 Tomada de decisão
Leia maisIntrodução à Programação
Introdução à Programação Aula 08 Ponteiros Edirlei Soares de Lima Endereço de uma Variável Toda variável definida em um programa ocupa uma área de memória; A cada área de memória
Leia maisLinguagem C (repetição)
Linguagem C (repetição) André Tavares da Silva andre.silva@udesc.br Exercício Escrever um programa que conte (mostre na tela) os números de 1 a 100. Comandos aprendidos até o momento: printf, scanf, getchar,
Leia maisAula 4 ESTRUTURAS DE REPETIÇÃO (FOR)
Aula 4 ESTRUTURAS DE REPETIÇÃO (FOR) Profa. Dra. Elisa Yumi Nakagawa 1o semestre/2017 Estruturas de Controle l ESTRUTURA SEQUENCIAL l ESTRUTURAS CONDICIONAIS l l l Estrutura Condicional Simples Estrutura
Leia maisPonteiros e Tabelas. K&R: Capítulo 5
Ponteiros e Tabelas K&R: Capítulo 5 Ponteiros e Tabelas Ponteiros e endereços Ponteiros e argumentos de funções Ponteiros e tabelas Alocação dinâmica de memória Aritmética de ponteiros Tabelas de ponteiros
Leia maisIntrodução à Programação
Introdução à Programação Aula 05 Estruturas Condicionais Edirlei Soares de Lima Tomada de Decisão Até o momento, todas as instruções dos nossos programas eram executadas sequencialmente.
Leia maisMódulo 5 Vetores e Alocação Dinâmica
Estruturas de Dados Módulo 5 Vetores e Alocação Dinâmica 1/9/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora
Leia maisMétodos Computacionais. Operadores, Expressões Aritméticas e Entrada/Saída de Dados
Métodos Computacionais Operadores, Expressões Aritméticas e Entrada/Saída de Dados Tópicos da Aula Hoje aprenderemos a escrever um programa em C que pode realizar cálculos Conceito de expressão Tipos de
Leia maisLinguagem C. Prof.ª Márcia Jani Cícero
Linguagem C Prof.ª Márcia Jani Cícero A estrutura Básica de um Programa em C Consiste em uma ou várias funções ou programas. main( ) // primeira função a ser executada // inicia a função // termina a função
Leia mais3. 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.7. Funções 3.7.1. Introdução 3.7.2. Uso de
Leia maisSegundo programa: media.c
Segundo programa: media.c Vamos analisar um programa que calcula a média ponderada entre dois números: media.c Linhas de comentário: Num arquivo com o código de um programa C (código fonte), um comentário
Leia maisIntrodução a Programação. Ponteiros e Vetores, Alocação Dinâmica
Introdução a Programação Ponteiros e Vetores, Alocação Dinâmica Tópicos da Aula Hoje aprenderemos que existe uma forte relação entre ponteiros e vetores Associação entre ponteiros e vetores Ponteiros constantes
Leia maisAula 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 maisComputadores Digitais 2. Prof. Rodrigo de Souza Couto
Computadores Digitais 2 Linguagens de Programação DEL-Poli/UFRJ Prof. Miguel Campista Aula de Hoje Funções padrão do C Definição de funções Pilha de execução Ponteiros de variáveis Variáveis globais Variáveis
Leia mais