Unidade 6: Modularização de Código Prof. Daniel Caetano

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

Download "Unidade 6: Modularização de Código Prof. Daniel Caetano"

Transcrição

1 Lógica de Programação para Engenharia 1 Unidade 6: Modularização de Código Prof. Daniel Caetano Objetivo: Modularização de Código com Construção de Funções. Bibliografia: ASCENCIO, 2007; MEDINA, 2006; SILVA, 2010; SILVA, INTRODUÇÃO Nas aulas anteriores aprendemos a fazer algoritmos simples, com um único bloco de texto. Isso é prático para programas mais simples como os que temos feito, mas para programas mais complexos, a situação muda. Imaginemos, por exemplo, que um dia tenhamos que fazer um programa que calcule uma infinidade de operações de derivação (derivadas). Se a cada vez que precisarmos programar uma derivação tivermos que escrever todo o código de derivação (que é enorme e complexo) estaríamos com a nossa vida bem complicada! Vamos exemplificar. Considere o algoritmo do fluxograma abaixo, que resolve a potência x, usando a lógica de que x = x * x * x. A lógica do algoritmo é simples: iniciamos o resultado res = 1 e, para cada, valor da contagem cont, multiplicamos res por x (res = res * x). A tabela a seguir mostra os valores das variáveis em cada passo, supondo que o usuário tenha digitado o valor para x: Passo Bloco x res cont cont < SIM SIM NÃO

2 Lógica de Programação para Engenharia 2 Observe que, ao final, o resultado res = 27, que é exatamente o valor para. Agora, veja só como ficaria um fluxograma completo para o cáculo da expressão x 2 +y +z 4 : Observe que, neste fluxograma, temos uma porção de blocos repetidos, com poucas variações internas. Isso ocorre porque, obviamente, a forma de calcular a potência de um valor por outro ( a b ) é sempre parecido, mudando apenas o valor que é usado na multiplicação ( a ) e o limite do cálculo lógico ( b ). Que tal se pudéssemos dar um nome para esse bloco e, ao invés de repetílo, pudéssemos apenas indicar seu uso? Imagine que possamos definir o bloco chamado potencia(), definido conforme a seguir:

3 Lógica de Programação para Engenharia Esse é um algoritmo que recebe dois números, a e b, e calcula a potência: a b. Vamos reconstruir o programa anterior, que calcula res = x 2 +y +z 4 apenas com o uso da expressão potencia() para que todo o processo apresentado acima seja executado, resultando no valor do cálculo: Bem mais simples de entender, não? Entretanto, esse resultado não é tão bom; o programa original pedia apenas três números; esse pede seis, porque o algoritmo que chamamos de potencia() considera que o usuário deve digitar os dois (o valor da base e o do expoente) para poder ser usado. Podemos indicar, entretanto, para o computador, que os valores recebidos pelo algoritmo potência serão repassados pelo algoritmo principal, usando uma notação do seguinte tipo: potencia(a,b) Isto é: dentro dos parênteses, colocaremos as informações necessárias para o cálculo, já no programa principal, de maneira que o algoritmo não tenha que solicitálas ao usuário. Observe a próxima versão do algoritmo:

4 Lógica de Programação para Engenharia 4 No fundo, o que fizemos foi criar dois algoritmos: um deles, chamado potencia() não é usado diretamente pelo usuário, mas sim pelo nosso algoritmo principal. Aos algoritmos que são usados por outros algoritmos damos o nome de função. 1. USO DE FUNÇÕES Até o presente momento, o conceito de função foi apresentado de maneira lúdica, com o uso de fluxogramas. Agora veremos, na prática, como definimos uma função. Vamos verificar o código que fizemos anteriormente, em C/C++ para executar uma média entre dois números, a seguir. Observe as linhas destacadas em verde e vermelho... o que você percebe? float n1, n2, m; cout << "Calcula a média de dois números" << endl; cout << "Digite o 1o. número: "; cin >> n1; cout << "Digite o 2o. número: "; cin >> n2; m = (n1+n2)/2; cout << "A média é: " << m; Elas são bem parecidas, não? Vamos criar, então, uma função chamada lenumero(), que receberá qual é o número de que deve ser lido (1 para 1o., 2 para 2o., para o... e assim por diante) e nos retornará o valor lido, de maneira que possamos reescrever esse programa da seguinte forma: float n1, n2, m; cout << "Calcula a média de dois números" << endl; n1 = lenumero(1); n2 = lenumero(2) m = (n1+n2)/2; cout << "A média é: " << m;

5 Lógica de Programação para Engenharia 5 Se digitarmos o programa acima, entretanto, teremos um erro... o computador irá reclamar que não sabe o que significa lenumero(), é claro! Temos, então, de explicar para ele o que é esse tal de lenumero(). Podemos fazer isso assim (não se preocupe, por enquanto, com a forma de escrever, isso será explicado mais adiante): float n1, n2, m; cout << "Calcula a média de dois números" << endl; n1 = lenumero(1); n2 = lenumero(2) m = (n1+n2)/2; cout << "A média é: " << m; // Função que lê um número float lenumero(int pos) { // Aqui vai o código da função A linguagem ainda não ficará feliz, porque ainda não escrevemos o código da função. Vamos escrevêlo, então. float n1, n2, m; cout << "Calcula a média de dois números" << endl; n1 = lenumero(1); n2 = lenumero(2) m = (n1+n2)/2; cout << "A média é: " << m; // Função que lê um número float lenumero(int pos) { // Declara variável de entrada double num; // Imprime a mensagem para digitar um número cout << "Digite o " << pos << "o. número: "; // Lê o número cin >> num;

6 Lógica de Programação para Engenharia 6 O C/C++ ainda vai reclamar. Isso ocorre porque, no programa, usamos a função lenumero da seguinte forma: n1 = lenumero(1); Ou seja: eu estou pegando o resultado de lenumero e guardando em uma variável. Ocorre que o computador não tem bola de cristal e ele não sabe qual valor ele deve responder, isto é, qual é o valor que vai ser fornecido por lenumero para que seja armazenado em n1! Para ajudálo, precisamos usar a instrução return. É a instrução return que indica para uma função qual é o valor que deve ser respondido para quem a chamou. Isso é feito da seguinte forma: float n1, n2, m; cout << "Calcula a média de dois números" << endl; n1 = lenumero(1); n2 = lenumero(2) m = (n1+n2)/2; cout << "A média é: " << m; // Função que lê um número float lenumero(int pos) { // Declara variável de entrada double num; // Imprime a mensagem para digitar um número cout << "Digite o " << pos << "o. número: "; // Lê o número cin >> num; // Retorna o valor lido return num; Tudo pronto, você executa e... o C/C++ ainda reclama! Que coisa chata! Na verdade, o C/C++ está reclamando porque o programa é executado do início para o fim, ou seja, de cima para baixo. Por essa razão, quando o programa encontra pela primeira vez a instrução: n1 = lenumero(1); Ele não sabe o que é isso ainda. Como o computador, ao executar um programa em C/C++ é um bichinho ansioso, esse problema pode ser resolvido de duas formas.

7 Lógica de Programação para Engenharia 7 A primeira maneira de resolver isso é a mais simples: simplesmente vamos colocar a função lenumero *antes* do algoritmo principal. Mas atenção: antes do algoritmo principal não é no início do arquivo... é aqui, observe: // Função que lê um número float lenumero(int pos) { // Declara variável de entrada double num; // Imprime a mensagem para digitar um número cout << "Digite o " << pos << "o. número: "; // Lê o número cin >> num; // Retorna o valor lido return num; // Programa Principal float n1, n2, m; cout << "Calcula a média de dois números" << endl; n1 = lenumero(1); n2 = lenumero(2) m = (n1+n2)/2; cout << "A média é: " << m; Alguns programadores não gostam de fazer isso, então eles preferem fazer uma outra coisa: deixar a função nova no final do arquivo, mas explicar com antecedência para o C/C++ que ela vai estar lá, que ele não precisa ficar ansioso: // Declarações de Funções (Protótipos) float lenumero(int pos); // Programa Principal int main(int argc, char *argv[]) { float n1, n2, m; cout << "Calcula a média de dois números" << endl; n1 = lenumero(1); n2 = lenumero(2) m = (n1+n2)/2; cout << "A média é: " << m;

8 Lógica de Programação para Engenharia 8 // Função que lê um número float lenumero(int pos) { // Declara variável de entrada double num; // Imprime a mensagem para digitar um número cout << "Digite o " << pos << "o. número: "; // Lê o número cin >> num; // Retorna o valor lido return num; Com isso, todos ficam satisfeitos: o compilador, que ao encontrar o primeiro uso de lenumero já saberá que, em algum ponto do programa, isso será explicado... e o programador, que pode deixar a rotina principal de seu programa no topo do arquivo. 2. EXPLICANDO FUNÇÕES Bem, já vimos como escrever uma função: basicamente é escrever um outro pequeno programa. Já vimos até como retornar um resultado. Mas como é construída aquela primeira linha "feia" do nome da função? Observe abaixo: // Função que lê um número float lenumero(int pos) { // Código da Função A primeira linha, especificamente, é: float lenumero(int pos). O que isso significa? Essa primeira linha se chama declaração da função ou assinatura da função. Essa linha diz para o computador (e para qualquer programador que vá usála) como ela deve ser usada. Essa declaração é composta por três partes principais: tipo_de_retorno nome_da_função ( parâmetro_da_funcao ) O tipo de retorno indica o tipo de valor que essa função retorna, com o return. Os tipos podem ser quaisquer tipos válidos no C/C++, como por exemplo: int, float, double, long, bool... adicionalmente existe um tipo_de_retorno chamado void que é usado sempre que uma função executar uma tarefa sem retornar nada. O nome da função é o nome que usaremos para executála, isto é, sempre que quisermos executar esse trecho de código, usaremos este nome, como já foi visto no programa. As regras para esse nome são as mesmas usadas para variáveis: só letras simples e underline, sem acentuação, sem espaço. Números são permitidos, desde que o nome não comece com número! E o parâmetro_da_função?

9 Lógica de Programação para Engenharia 9 Bem, o parâmetro_da_função descreve a informação que é necessário fornecer àquela função para que ela possa ser executada. No caso da nossa função lenumero, o parâmetro é usado simplesmente para imprimir a mensagem: "Digite o Xo. número: " Onde X é substituído pelo valor que o programador forneceu ao desenvolver o programa. Assim: Código: Texto impresso: lenumero(654); "Digite o 654o. número: " lenumero(2); "Digite o 2o. número: " lenumero(76); "Digite o 76o. número: " O parâmetro funciona, dentro da função, como se fosse uma variável com um valor prédefinido. Assim, precisamos dar um tipo e um nome para o parâmetro, como para qualquer outra variável. Assim, observe novamente a declaração da função: float lenumero(int pos) Essa declaração significa que: a) Essa função retorna um valor do tipo float (número com vírgula) b) Essa função pode ser acessada pelo nome lenumero. c) Essa função recebe um parâmetro que, dentro da função, será acessado por uma variável chamada pos do tipo int. Uma função pode ter vários parâmetros. Para indicar isso, usamos a vírgula separando cada um deles. Por exemplo: no caso da função potencia() do início da aula, tínhamos dois parâmetros: a e b, para que ela pudesse executar o cálculo a b... ambos tinham que ser inteiro (int) e o resultado também é um inteiro (int). Assim, aquela função poderia ser declarada da seguinte forma: int potencia(int a, int b) Eventualmente podemos criar uma função que não precise de parâmetros. Nesse caso, indicamos isso com a palavra void. Consideremos, por exemplo, uma função chamada imprimeajuda, que não recebe parâmetros e nem retorna nenhum valor. Ela seria declarada desta forma: void imprimeajuda(void) NOTA: Uma função pode ter vários parâmetros, mas apenas UM valor pode ser retornado com o return.

10 Lógica de Programação para Engenharia Corpo da Função Depois da declaração, o código da função deve ser especificado. Observe que, logo após a declaração, é sempre indicado um trecho entre chaves: {.... Observe: // Função que lê um número float lenumero(int pos) { // Código da Função As chaves indicam onde se inicia e onde finaliza o corpo da função. Tudo que estiver entre o {... será executado quando a função for chamada. Se a função for declarada com um tipo de retorno (float, no exemplo), ela DEVE ter um comando return ao seu final, retornando um valor do tipo correto. Caso a função seja declarada do tipo void, o return é opcional ao final, mas pode ser indicado simplesmente como return; (sem nenhum valor entre o return e o ;), se for desejado.. ESCOPO DAS VARIÁVEIS Assim como no programa principal, é possível usar variáveis. Além daquelas recebidas como parâmetros, é possível declarar novas variáveis. A declaração se faz como no programa principal. Por exemplo: // Função que lê um número float lenumero(int pos) { // Declara variável de entrada double num; // Imprime a mensagem para digitar um número cout << "Digite o " << pos << "o. número: "; // Lê o número cin >> num; // Retorna o valor lido return num; Os pontos importantes... IMPORTANTES e que não devem ser esquecidos são: a) A variável declarada em uma função NÃO EXISTE em outra função, isto é, a variável só vale dentro da função em que ela foi declarada. b) Alterar valor das variáveisparâmetro é possível, mas A ALTERAÇÃO SERÁ PERDIDA quando a função terminar sua execução. Observe os exemplos a seguir:

11 Lógica de Programação para Engenharia 11 // Declarações de Funções (Protótipos) void funcao1(void); void funcao2(void); // Programa Principal int a; a = 1; cout << "A na principal: " << a << endl; funcao1(); funcao2(); cout << "B na principal: " << b << endl; // Função 1 void funcao1(void) { int b; b = 1; cout << "B na Funcao1: " << b << endl; cout << "A na Funcao1: " << a << endl; // Função 2 void funcao2(void) { b = b + 1; cout << "B na Funcao2: " << b << endl; cout << "A na Funcao2: " << a << endl; Esse programa irá dar erros em várias das linhas. Na rotina principal (main), ele irá reclamar que não sabe o que é a variável b. E ele reclama com razão, a variável b não foi declarada na rotina principal. Na funcao1 ele irá reclamar que não sabe o que é a, e com razão, porque a não foi declarado nessa função. Finalmente, na funcao2 ele irá reclamar de tudo, porque dentro dessa função não existe nem a nem b. Assim, reforçando a primeira regra: as variáveis só têm validade dentro das funções em que foram declaradas! Observe, agora, o programa a seguir: // Declarações de Funções (Protótipos) void funcao(int a);

12 Lógica de Programação para Engenharia 12 // Programa Principal int a; a = 1; cout << "A na principal: " << a << endl; funcao(a); cout << "A na principal: " << a << endl; // Função 1 void funcao(int a) { cout << "A no início da Funcao: " << a << endl; a = a + 1; cout << "A no fim da Funcao: " << a << endl; Observe que a funcao recebe o valor correto, atualiza este valor, mas ao voltar para a rotina principal, a alteração se perdeu. Para reforçar: é possível modificar variáveisparâmetro, mas a modificação se perde quando a função termina. Para retornar valores é preciso usar a instrução return. 4. FUNÇÃO PARA CÁLCULO DE ARREDONDAMENTO Ainda que não exista uma função pronta no padrão C/C++ para arredondamento de acordo com a regra usual, podemos produzir uma função de arredondamento usando aquelas disponíveis, em especial a função floor. A idéia é conseguir esse tipo de arredondamento: Número Arrendondamento 1,4 1,0 1,5 2,0 Vamos construir a função round( x ), que pode construída e usada da seguinte forma: #include <math> int round(float x) { int res; res = floor(x+0.5); return res;

13 Lógica de Programação para Engenharia 1 Neste momento você pode estar se perguntando: como é que eu posso arredondar com um determinado número de casas decimais? A solução é usar um truque simples, como o indicado abaixo, para arredondar com DUAS casas decimais: #include <math> int round(float x) { int res; res = floor(x+0.5); return res; Observe o truque: o número foi multiplicado por 100, para que as duas casas decimais desejadas venham para a parte inteira do número; após isso, é feito o arredondamento com o round e, finalmente, o número resultante é dividido por 100, para que volte a ter duas casas decimais. Observe a regra:

14 Lógica de Programação para Engenharia 14 Número de Casas Decimais Multiplicar e Dividir por... Ou n Ou seja, para arredondar com n casas decimais, eu tenho que, antes de arredondar, multiplicar por 10 n e, depois de arredondar, dividir por 10 n. Podemos usar a função pow para realizar a potência de 10, e o código anterior, adaptado para qualquer número de casas decimais, fica assim: #include <math> int round(float x) { int res; res = floor(x+0.5); return res; 5. A FUNÇÃO MAIN (ROTINA PRINCIPAL) Na aula passado já descobrimos o que significavam aquelas linhas "include" no início do código: elas significam quais são os tipos de extensões que vamos usar em nosso programa. Lembrase que para usar as funções matemáticas precisávamos de incluir math.h?

15 Lógica de Programação para Engenharia 15 Bem, hoje entenderemos outra parte do programa: a declaração da rotina principal. A rotina principal, chamada sempre de main é uma função como outra qualquer; a única diferença é que esta rotina é a escolhida pelo computador para iniciar a execução do programa. Para tanto, ela tem uma declaração padronizada e fixa: // Programa Principal // Seu código vai aqui Observe que ela retorna um valor inteiro (int) e não recebe nenhum parâmetro, o que é indicado com a palavra void Função Main Completa (OPCIONAL) Vez ou outra você encontrará a função main declarada da seguinte forma: // Programa Principal int main(int argc, char *argv[]) { // Seu código vai aqui Observe que, neste caso, ela ainda retorna um valor inteiro (int)... mas agora recebe dois parâmetros: um inteiro chamado argc e um negócio estranho e complicado chamado argv que, acredite, é a declaração de uma "tabela" de caracteres. O aluno mais curioso certamente vai se perguntar: "mas, professor, se essa é a primeira coisa que o computador executa, quem vai colocar valores nesses parâmetros? Bem, existem diversas maneiras de colocar valores nesses parâmetros; vamos aqui explicar duas, para que possamos entender as funções deles. Atualmente, estamos acostumamos a abrir um documento do Word simplesmente clicando no ícone de um documento. Ao clicar, por exemplo, em arquivo.doc, o Windows automaticamente executa o Word.exe e abre aquele arquivo indicado. Você já parou para pensar como é que isso acontece? Como o Word fica sabendo qual arquivo ele deve abrir? Bem, "por baixo dos panos", o que o Windows faz, quando você clica no arquivo.doc, é executar o seguinte comando: word.exe arquivo.doc

16 Lógica de Programação para Engenharia 16 Em outras palavras, é como se ele abrisse um prompt de comandos do DOS e digitasse essa linha de comando indicada acima. A primeira palavra instrui o computador a carregar o programa word.exe na memória e executar a função main dele. A segunda palavra será passada como parâmetro da função main. Se selecionarmos vários arquivos para que sejam abertos simultaneamente, o Windows executa isso: word.exe arquivo.doc arquivo2.doc arquivo.doc Relembremos, agora, a declaração da função main: // Programa Principal int main(int argc, char *argv[]) { // Seu código vai aqui Como os parâmetros são guardados aí nesse "argc/argv"? Bem, argc indica o número de parâmetros e argv é uma tabela com todos esses parâmetros. Vamos ver como isso funciona? int main(int argc, char *argv[]) { cout << "Número de Parâmetros: " << argc << endl; Observe que, no mínimo, um programa tem sempre um parâmetro (não passamos nenhum e, ainda assim, argc vale 1!). Que parâmetro é esse? Para saber, vamos imprimir o primeiro valor da tabela argv. Lembrando que em programação as contagens começam sempre em 0 (zero), a primeira posição da tabela é a posição 0. A impressão pode ser feita assim: int main(int argc, char *argv[]) { cout << "Número de Parâmetros: " << argc << endl; cout << "Primeiro Parâmetro: " << argv[0] << endl;

17 Lógica de Programação para Engenharia 17 Observe! O primeiro parâmetro é exatamente o nome do programa, com o caminho completo! Modifique o programa como indicado abaixo: int main(int argc, char *argv[]) { cout << "Número de Parâmetros: " << argc << endl; cout << "Primeiro Parâmetro: " << argv[0] << endl; cout << "Segundo Parâmetro: " << argv[1] << endl; Execute o programa. Você verá que ocorre um pequeno problema! Este problema tem origem no fato que estamos tentanto imprimir um parâmetro que não existe: há um parâmetro apenas, e estou tentando imprimir o segundo! Vamos ver como passar dois parâmetros? Abra um prompt e, usando o comando CD, vá até o diretório onde a aplicação foi criada (o diretório do projeto). Observe a orientação do professor. No prompt, digite o nome do programa, seguido de um espaço e, em seguida, uma palavra qualquer. Por exemplo, se o executável do seu programa se chama Project1.exe, executeo assim: Project1.exe professor E veja o que acontece! 6. BIBLIOGRAFIA ASCENCIO, A.F.G; CAMPOS, E.A.V. Fundamentos da Programação de Computadores. 2ed. Rio de Janeiro, MEDINA, M; FERTIG, C. Algoritmos e Programação: Teoria e Prática. 2ed. São Paulo: Ed. Novatec, SILVA, I.C.S; FALKEMBACH, G.M; SILVEIRA, S.R. Algoritmos e Programação em Linguagem C. 1ed. Porto Alegre: Ed. UniRitter, 2010.

Unidade 1: Funções Prof. Daniel Caetano

Unidade 1: Funções Prof. Daniel Caetano Estrutura de Dados 1 Unidade 1: Funções Prof. Daniel Caetano Objetivo: Modularização de Código com Construção de Funções. Bibliografia: ASCENCIO, 2007; MEDINA, 2006; SILVA, 2010; SILVA, 2006. INTRODUÇÃO

Leia mais

Unidade 1: Funções Prof. Daniel Caetano

Unidade 1: Funções Prof. Daniel Caetano Estrutura de Dados 1 Unidade 1: Funções Prof. Daniel Caetano Objetivo: Modularização de Código com Construção de Funções. Bibliografia: ASCENCIO, 2007; MEDINA, 2006; SILVA, 2010; SILVA, 2006. INTRODUÇÃO

Leia mais

Unidade 5: Introdução à Programação com C/C++ Prof. Daniel Caetano

Unidade 5: Introdução à Programação com C/C++ Prof. Daniel Caetano Lógica de Programação para Engenharia 1 Unidade 5: Introdução à Programação com C/C++ Prof. Daniel Caetano Objetivo: Explicitar os elementos básicos envolvidos na programação com a linguagem C/C++. Bibliografia:

Leia mais

Unidade 5: Introdução à Programação com C/C++

Unidade 5: Introdução à Programação com C/C++ Lógica de Programação para Engenharia 1 Unidade 5: Introdução à Programação com C/C++ Prof. Daniel Caetano Objetivo: Explicitar os elementos básicos envolvidos na programação com a linguagem C/C++. Bibliografia:

Leia mais

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA MODULARIZAÇÃO E ORGANIZAÇÃO DE CÓDIGO. Prof. Dr. Daniel Caetano

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA MODULARIZAÇÃO E ORGANIZAÇÃO DE CÓDIGO. Prof. Dr. Daniel Caetano LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA MODULARIZAÇÃO E ORGANIZAÇÃO DE CÓDIGO Prof. Dr. Daniel Caetano 2012-1 Objetivos Entender a utilidade das funções Capacitar o aluno para criar suas próprias funções

Leia mais

Unidade 5: Introdução à Programação com Python Prof. Daniel Caetano

Unidade 5: Introdução à Programação com Python Prof. Daniel Caetano Informática para Engenharia 1 Unidade 5: Introdução à Programação com Python Prof. Daniel Caetano Objetivo: Explicitar os elementos básicos envolvidos na programação com a linguagem Python. Bibliografia:

Leia mais

Unidade 6: Ambiente de Programação Prof. Daniel Caetano

Unidade 6: Ambiente de Programação Prof. Daniel Caetano Lógica de Programação para Engenharia 1 Unidade 6: Ambiente de Programação Prof. Daniel Caetano Objetivo: Apresentar o uso de funções prontas do Portugol e do C/C++ para efeturar cálculos mais complexos.

Leia mais

Unidade 6: Ambiente de Programação

Unidade 6: Ambiente de Programação Lógica de Programação para Engenharia 1 Unidade 6: Ambiente de Programação Prof. Daniel Caetano Objetivo: Apresentar o uso de funções prontas do Portugol e do C/C++ para efeturar cálculos mais complexos.

Leia mais

Unidade 4: Introdução à Lógica de Programação - Parte II Português Estruturado - Versão Estácio Prof. Daniel Caetano

Unidade 4: Introdução à Lógica de Programação - Parte II Português Estruturado - Versão Estácio Prof. Daniel Caetano Lógica de Programação para Engenharia 1 Unidade 4: Introdução à Lógica de Programação - Parte II Português Estruturado - Versão Estácio Prof. Daniel Caetano Objetivo: Explicitar os elementos básicos envolvidos

Leia mais

Unidade 4: Introdução à Lógica de Programação - Parte II

Unidade 4: Introdução à Lógica de Programação - Parte II Lógica de Programação para Engenharia 1 Unidade 4: Introdução à Lógica de Programação - Parte II Português Estruturado Prof. Daniel Caetano Objetivo: Explicitar os elementos básicos envolvidos na programação

Leia mais

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA MODULARIZAÇÃO E ORGANIZAÇÃO DE CÓDIGO. Prof. Dr. Daniel Caetano

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA MODULARIZAÇÃO E ORGANIZAÇÃO DE CÓDIGO. Prof. Dr. Daniel Caetano LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA MODULARIZAÇÃO E ORGANIZAÇÃO DE CÓDIGO Prof. Dr. Daniel Caetano 2011-2 Visão Geral 1 2 3 4 Funções Simples Bibliotecas Funções com Parâmetros A Função Main Material

Leia mais

Unidade 12: Estrutura de Repetição Simples Prof. Daniel Caetano

Unidade 12: Estrutura de Repetição Simples Prof. Daniel Caetano Lógica de Programação 1 Unidade 12: Estrutura de Repetição Simples Prof. Daniel Caetano Objetivo: Realizando decisões de repetição simples no código de programação. Bibliografia: ASCENCIO, 2007; MEDINA,

Leia mais

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM C/C++ Prof. Dr. Daniel Caetano

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM C/C++ Prof. Dr. Daniel Caetano LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM C/C++ Prof. Dr. Daniel Caetano 2013-1 Objetivos Entender o mecanismo de um programa em C/C++ Apresentar e estrutura da Linguagem C/C++

Leia mais

Unidade 10: Estruturas de Decisão Compostas Prof. Daniel Caetano

Unidade 10: Estruturas de Decisão Compostas Prof. Daniel Caetano Lógica de Programação para Engenharia 1 Unidade 10: Estruturas de Decisão Compostas Prof. Daniel Caetano Objetivo: Tomando decisões complexas no código de programação. Bibliografia: ASCENCIO, 2007; MEDINA,

Leia mais

Unidade 9: Introdução às Estruturas de Decisão

Unidade 9: Introdução às Estruturas de Decisão Lógica de Programação 1 Unidade 9: Introdução às Estruturas de Decisão Prof. Daniel Caetano Objetivo: Tomando decisões no código de programação. Bibliografia: ASCENCIO, 2007; MEDINA, 2006; SILVA, 2010;

Leia mais

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

Introdução à Programação Aula 09. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação Introdução à Programação Aula 09 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação A linguagem C, como qualquer outra linguagem de programação, permite

Leia mais

1 Introdução e Conceitos básicos

1 Introdução e Conceitos básicos 1 Introdução e Conceitos básicos Aula 0 Sumário Capítulo 1 Introdução e Conceitos básicos 1.1. Definição 1.. Comandos Básicos 1..1. Comando de saída: impressão na tela 1... Case sensitive 1..3. Função

Leia mais

Unidade 6: Ambiente de Programação Prof. Daniel Caetano

Unidade 6: Ambiente de Programação Prof. Daniel Caetano Informática para Engenharia 1 Unidade 6: Ambiente de Programação Prof. Daniel Caetano Objetivo: Apresentar o uso de funções prontas do Portugol e do Python para efeturar cálculos mais complexos. Bibliografia:

Leia mais

Algoritmos e Estruturas de Dados I (DCC/003) Funções

Algoritmos e Estruturas de Dados I (DCC/003) Funções Algoritmos e Estruturas de Dados I (DCC/003) Funções Funções Funções definem operações que são usadas frequentemente Funções, na matemática, requerem parâmetros de entrada, e definem um valor de saída

Leia mais

Material sobre Funções AEDS 1

Material sobre Funções AEDS 1 Material sobre Funções AEDS 1 1 Funções - revisão Funções definem operações que são usadas frequentemente Funções, na matemática, requerem parâmetros de entrada e definem um valor de saída 2 Funções -

Leia mais

Conhecendo a Linguagem de Programação C

Conhecendo a Linguagem de Programação C Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Conhecendo a Linguagem de Programação C DCA0800 - Algoritmos e Lógica de Programação Heitor Medeiros 1 Como

Leia mais

Explicação do programa:

Explicação do programa: Disciplina: Introdução à Programação. IPRJ/UERJ Professora: Sílvia Mara da Costa Campos Victer Índice: Aula10 Sub-rotina: Em algoritmos Em C Sub-rotinas subprograma - programação modularizada Definição:

Leia mais

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

Programaçã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 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

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

LINGUAGEM C: FUNÇÕES FUNÇÃO 04/07/2017. Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa. 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 mais

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II. Prof. Dr. Daniel Caetano

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II. Prof. Dr. Daniel Caetano LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II Prof. Dr. Daniel Caetano 2013-1 Material de Estudo Material Notas de Aula Apresentação Material Didático Acesso ao Material

Leia mais

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II. Prof. Dr. Daniel Caetano

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II. Prof. Dr. Daniel Caetano LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II Prof. Dr. Daniel Caetano 2012-1 Material de Estudo Material Notas de Aula Apresentação Material Didático Acesso ao Material

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.7. Funções 3.7.1. Introdução 3.7.2. Uso de

Leia mais

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

2ª Licenciatura AED1 e PC1 Prof. Eduardo 1 1 MODULARIZAÇÃO 2ª Licenciatura AED1 e PC1 Prof. Eduardo 1 1 MODULARIZAÇÃO A identificação de problemas mais complexos resultará no desenvolvimento de algoritmos também mais complexos para resolve-os. Uma abordagem eficiente

Leia mais

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

5 Funções. Site: BAC004 at   Source page: 5 Funções at 5 Funções Site: BAC004 at http://bac004.wikidot.com Source page: 5 Funções at http://bac004.wikidot.com/funcoes Fold Table of Contents 5.1 Funções Sem Passagem de Parâmetros e Sem Retorno Exemplo 1 Chamada

Leia mais

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA ESTRUTURA DE REPETIÇÃO Prof. Dr. Daniel Caetano 2013-2 Objetivos Entender o que é uma estrutura de repetição Compreender como implementar as repetições Capacitar para

Leia mais

Classes o Objetos. Classes, objetos, métodos e variáveis de instância

Classes o Objetos. Classes, objetos, métodos e variáveis de instância Classes o Objetos Um recurso comum de cada aplicativo feito até agora é que todas as instruções que realizavam tarefas localizavam-se no método main. Se você tornar parte de uma equipe de desenvolvimento

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

Unidade 11: Estrutura de Repetição Simples Prof. Daniel Caetano

Unidade 11: Estrutura de Repetição Simples Prof. Daniel Caetano Informática para Engenharia 1 Unidade 11: Estrutura de Repetição Simples Prof. Daniel Caetano Objetivo: Realizando decisões de repetição simples no código de programação. Bibliografia: ASCENCIO, 2007;

Leia mais

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

LINGUAGEM C: FUNÇÕES FUNÇÃO 08/01/2018. Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa. 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 mais

Aula 4 Introdução ao C

Aula 4 Introdução ao C Considere o nosso MSC. O Processador Central, entende o conjunto de instruções, leia, imprima, atribuição e condicional e com ela resolvemos vários problemas, construindo vários algoritmos. As instruções

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

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

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

Índice. Índice... 0 Passagem de parâmetros... 3 Procedures... 5 Funções... 5 Índice Índice... 0 Passagem de parâmetros... 3 Procedures... 5 Funções... 5 Definição Podemos definir sub-rotinas como sendo blocos de instruções que realizam tarefas específicas. O código de uma sub-rotina

Leia mais

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação Aula 3 Introdução a Linguagem C Profa. Marina Gomes marinagomes@unipampa.edu.br 1 Aula de Hoje - Criar programas simples em C utilizando a estrutura básica; - Declarar variáveis;

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

Introdução aos Algoritmos

Introdução aos Algoritmos Introdução aos Algoritmos Aula 05 Diogo Pinheiro Fernandes Pedrosa http://www2.ufersa.edu.br/portal/professor/diogopedrosa diogopedrosa@ufersa.edu.br Universidade Federal Rural do Semiárido Bacharelado

Leia mais

ECT1203 Linguagem de Programação

ECT1203 Linguagem de Programação Universidade Federal do Rio Grande do Norte Escola de Ciências e Tecnologia ECT1203 Linguagem de Programação Prof. Aquiles Burlamaqui Profa. Caroline Rocha Prof. Luiz Eduardo Leite Prof. Luciano Ferreira

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

Introdução aos Algoritmos

Introdução aos Algoritmos Introdução aos Algoritmos Aula 05 Diogo Pinheiro Fernandes Pedrosa http://www2.ufersa.edu.br/portal/professor/diogopedrosa diogopedrosa@ufersa.edu.br Universidade Federal Rural do Semiárido Bacharelado

Leia mais

16 Definição e Uso de Funções em Programas

16 Definição e Uso de Funções em Programas 16 Definição e Uso de Funções em Programas Ronaldo F. Hashimoto e Carlos H. Morimoto Nessa aula falaremos mais sobre funções. Veremos como declarar funções usando protótipos, como definir o corpo da função

Leia mais

ESTRUTURA DE DADOS LAÇOS E VETORES

ESTRUTURA DE DADOS LAÇOS E VETORES ESTRUTURA DE DADOS LAÇOS E VETORES Prof. Dr. Daniel Caetano 2014-2 Objetivos Recordar os laços de repetição Conhecer os vetores Compreender o uso de vetores Material de Estudo Material Notas de Aula Apresentação

Leia mais

Unidade 2: Estruturas de Controle Parte 1 - Scanner e Estrutura IF Prof. Daniel Caetano

Unidade 2: Estruturas de Controle Parte 1 - Scanner e Estrutura IF Prof. Daniel Caetano Linguagem de Programação 1 Unidade 2: Estruturas de Controle Parte 1 - Scanner e Estrutura IF Prof. Daniel Caetano Objetivo: Apresentar a classe Scanner e as principais estruturas de controle da linguagem

Leia mais

Estrutura de um Algoritmo, Variáveis, Comandos de Entrada e Saída e Expressões Aritméticas

Estrutura de um Algoritmo, Variáveis, Comandos de Entrada e Saída e Expressões Aritméticas Estrutura de um Algoritmo, Variáveis, Comandos de Entrada e Saída e Expressões Aritméticas Estrutura de um Programa em Linguagem Algorítmica Nesse curso nós vamos utilizar a linguagem algorítmica para

Leia mais

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

Programação em C. Variáveis e Expressões. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Programação em C Variáveis e Expressões DCA0800 Algoritmos e Lógica de Programação Heitor Medeiros Florencio

Leia mais

Aula 1 Apresentação do Curso

Aula 1 Apresentação do Curso Departamento de Sistemas de Computação Universidade de São Paulo SSC 502 Laboratório de Introdução a Ciência de Computação I Aula 1 Apresentação do Curso Responsável Prof. Seiji Isotani (sisotani@icmc.usp.br)

Leia mais

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

Algoritmos e Estruturas de Dados I Prof. Eduardo 1 1 MODULARIZAÇÃO Algoritmos e Estruturas de Dados I Prof. Eduardo 1 1 MODULARIZAÇÃO A identificação de problemas mais complexos resultará no desenvolvimento de algoritmos também mais complexos para resolve-os. Uma abordagem

Leia mais

INFORMÁTICA PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II

INFORMÁTICA PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II INFORMÁTICA PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II Prof. Dr. Daniel Caetano 2019-1 Objetivos Apresentar, diferentes níveis de detalhamento dos algoritmos Treinar a elaboração de algoritmos

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

PROGRAMAÇÃO em C. Vitor Valerio de Souza Campos

PROGRAMAÇÃO em C. Vitor Valerio de Souza Campos PROGRAMAÇÃO em C Vitor Valerio de Souza Campos Algoritmos x Programação Algoritmo é um conjunto finito de regras, bem definidas, para a solução de um problema em um tempo finito (Orth, 2001). Programa

Leia mais

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II. Prof. Dr. Daniel Caetano

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II. Prof. Dr. Daniel Caetano LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II Prof. Dr. Daniel Caetano 2013-2 Material de Estudo Material Notas de Aula Apresentação Material Didático Acesso ao Material

Leia mais

As funções são blocos de instruções que facilitam o entendimento do código. Sua sintaxe é:

As funções são blocos de instruções que facilitam o entendimento do código. Sua sintaxe é: Linguagem C-Funções Objetivos No primeiro capítulo foi dito que um programa em C pode ser composto de uma ou mais funções, sendo que a única obrigatória é main (). Agora, estudaremos como utilizar outras

Leia mais

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

FUNÇÕ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 mais

Ponteiros de Variáveis

Ponteiros de Variáveis Ponteiros de Variáveis C++ permite o armazenamento e a manipulação de valores de endereços de memória. Para cada tipo existente, há um tipo ponteirocapaz de armazenar endereços de memória em que existem

Leia mais

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA OUTRAS ESTRUTURAS DE REPETIÇÃO Prof. Dr. Daniel Caetano 2011-2 Visão Geral 1 Contagem com While 2 Repetição com For 3 Repetição com Do~While Material de Estudo Material

Leia mais

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA AMBIENTE DE PROGRAMAÇÃO. Prof. Dr. Daniel Caetano

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA AMBIENTE DE PROGRAMAÇÃO. Prof. Dr. Daniel Caetano LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA AMBIENTE DE PROGRAMAÇÃO Prof. Dr. Daniel Caetano 2013-1 Objetivos Entender como avaliar divisibilidade Conhecer as funções matemáticas prontas do C/C++ Capacitar o

Leia mais

MC-102 Aula 13. Instituto de Computação Unicamp. 29 de Setembro de 2016

MC-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 mais

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA AMBIENTE DE PROGRAMAÇÃO. Prof. Dr. Daniel Caetano

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA AMBIENTE DE PROGRAMAÇÃO. Prof. Dr. Daniel Caetano LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA AMBIENTE DE PROGRAMAÇÃO Prof. Dr. Daniel Caetano 2013-2 Objetivos Entender como avaliar divisibilidade Conhecer as funções matemáticas prontas do C/C++ Capacitar o

Leia mais

NOTAS DE AULA 09 Estruturas e Ponteiros

NOTAS DE AULA 09 Estruturas e Ponteiros Estrutura de Dados 1 NOTAS DE AULA 09 Estruturas e Ponteiros 1. Estruturas de Dados A linguagem C/C++ fornece uma porção de tipos de variáveis: int, float, long, double, boolean, char... dentre outros.

Leia mais

Algoritmos. Algoritmos. Linguagem de programação. Conceitos. Conceitos. Conceitos. Sintaxe do comando para incluir bibliotecas no programa:

Algoritmos. Algoritmos. Linguagem de programação. Conceitos. Conceitos. Conceitos. Sintaxe do comando para incluir bibliotecas no programa: Algoritmos Algoritmos Leandro Tonietto Unisinos ltonietto@unisinos.br http://www.inf.unisinos.br/~ltonietto/inf/pg1/algoritmosi_java.pdf Mar-2008 Possuem sintaxe flexível e são mais úteis para descrição

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

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

#include <stdio.h> main() { int i; // Cabeçalho for (i = 1; i <=20; i++) putchar( * ); putchar( \n ); puts( Numeros entre 1 e 5 ); O todo é igual à soma das partes. Euclides. FUNÇÕES E PROCEDIMENTOS Embora sem saber, ao longo dos outros laboratórios, já foram utilizadas funções tais como printf, scanf, getchar, putchar, dentre outras

Leia mais

LÓGICA DE PROGRAMAÇÃO INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II PARA ENGENHARIA. Prof. Dr. Daniel Caetano

LÓGICA DE PROGRAMAÇÃO INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II PARA ENGENHARIA. Prof. Dr. Daniel Caetano LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II Prof. Dr. Daniel Caetano 2018-1 Objetivos Apresentar, na prática, os diferentes níveis de detalhamento de algoritmo Apresentar

Leia mais

Linguagem C: Introdução

Linguagem C: Introdução Linguagem C: Introdução Linguagem C É uma Linguagem de programação genérica que é utilizada para a criação de programas diversos como: Processadores de texto Planilhas eletrônicas Sistemas operacionais

Leia mais

Vetores. e o programa deverá ler os valores separadamente:

Vetores. e o programa deverá ler os valores separadamente: Vetores Vetor é um tipo de dado usado para representar uma certa quantidade de variáveis de valores homogêneos (do mesmo tipo). Imagine o seguinte problema: calcular a média das notas da prova de 5 alunos.

Leia mais

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação Aula 7 Vetores Profa. Marina Gomes marinagomes@unipampa.edu.br 19/05/2017 Engenharia de Computação - Unipampa 1 Motivação Problema: Leia as notas de uma turma de cinco estudantes

Leia mais

Algoritmos e Estruturas de Dados I (DCC/003) Introdução à Programação de Computadores. Aula - Tópico 1

Algoritmos e Estruturas de Dados I (DCC/003) Introdução à Programação de Computadores. Aula - Tópico 1 Algoritmos e Estruturas de Dados I (DCC/003) Introdução à Programação de Computadores Aula - Tópico 1 1 Problema 1 Considere o seguinte problema: Determinar o valor de y = seno(1,5). 2 Definições Para

Leia mais

Por que programar? Programação de Computadores Introdução a C++ É tudo questão de automatizar coisas. Alan de Freitas

Por que programar? Programação de Computadores Introdução a C++ É tudo questão de automatizar coisas. Alan de Freitas Por que programar? Programação de Computadores Introdução a C++ Utilizar computadores é claramente uma vantagem em nossas vidas... Nos ajuda a comunicar Nos ajuda a fazer planos Nos permite trabalhar menos

Leia mais

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA OUTRAS ESTRUTURAS DE REPETIÇÃO Prof. Dr. Daniel Caetano 2012-2 Objetivos Conhecer as várias estruturas de repetição da linguagem C/C++ Compreender o uso de cada uma

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

LÓGICA DE PROGRAMAÇÃO ESTRUTURAS DE DECISÃO PARA ENGENHARIA. Prof. Dr. Daniel Caetano

LÓGICA DE PROGRAMAÇÃO ESTRUTURAS DE DECISÃO PARA ENGENHARIA. Prof. Dr. Daniel Caetano LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA ESTRUTURAS DE DECISÃO Prof. Dr. Daniel Caetano 2018-1 Objetivos Entender a ideia de decisão Compreender como implementar decisões Compreender problemas com decisões

Leia mais

MC102 - Algoritmos e programação de computadores. Aula 14: Funções e Procedimentos

MC102 - Algoritmos e programação de computadores. Aula 14: Funções e Procedimentos MC102 - Algoritmos e programação de computadores Aula 14: Funções e Procedimentos Procedimentos Procedimentos são estruturas que agrupam um conjunto de comandos, que são executados quando o procedimento

Leia mais

INFORMÁTICA PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II

INFORMÁTICA PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II INFORMÁTICA PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II Prof. Dr. Daniel Caetano 2018-2 Objetivos Apresentar, diferentes níveis de detalhamento de algoritmo Treinar a elaboração de algoritmos

Leia mais

Aula 5 - Mais C e repetição

Aula 5 - Mais C e repetição Vamos nesta aula mostrar mais detalhes e a forma geral dos comandos C vistos até agora. O comando de atribuição A forma geral do comando de atribuição é: = A expressão

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

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

Programação 1. Atribuição, operadores aritméticos, entrada de dados. Técnico em Eletrônica Semestre 5 02 Programação 1 Atribuição, operadores aritméticos, entrada de dados Técnico em Eletrônica Semestre 5 02 Armazenando na memória tipo de variável #include #include main() { int ano; Declaração

Leia mais

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA OUTRAS ESTRUTURAS DE REPETIÇÃO Prof. Dr. Daniel Caetano 2013-1 Objetivos Conhecer outras estruturas de repetição da linguagem C/C++ Compreender o uso de cada uma delas

Leia mais

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM C/C++ Prof. Dr. Daniel Caetano

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM C/C++ Prof. Dr. Daniel Caetano LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM C/C++ Prof. Dr. Daniel Caetano 2018-1 Objetivos Entender o mecanismo de um programa em C/C++ Apresentar e estrutura da Linguagem C/C++

Leia mais

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

Computação eletrônica: Funções Computação eletrônica: Gurvan Huiban ghuiban@cin.ufpe.br 13 de maio de 2014 Plano de aula 1 Princípio 2 Declaração de funções 3 Escope de variáveis Introdução O que é? Bloco de instruções desenvolvido

Leia mais

Unidade 10: Programas com Estruturas de Decisão Prof. Daniel Caetano

Unidade 10: Programas com Estruturas de Decisão Prof. Daniel Caetano Lógica de Programação para Engenharia 1 Unidade 10: Programas com Estruturas de Decisão Prof. Daniel Caetano EXERCÍCIO 4. Todos os meses as empresas precisam realizar o desconto de INSS do funcionário.

Leia mais

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

Comandos de controle de fluxo: if / for / while / do while. Conceitos básicos do C. 2 Introdução às funções. Entrada e saída. Comandos de controle de fluxo: if / for / while / do while. Variáveis, constantes, operadores e expressões Switch / break / matrizes e

Leia mais

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

Linguagem C Princípios Básicos (parte 1) Linguagem C Princípios Básicos (parte 1) Objetivos O principal objetivo deste artigo é explicar alguns conceitos fundamentais de programação em C. No final será implementado um programa envolvendo todos

Leia mais

PROGRAMAS BÁSICOS EM C++ Disciplina: Introdução à Ciência da Computação Prof. Modesto Antonio Chaves Universidade estadual do Sudoeste da Bahia

PROGRAMAS BÁSICOS EM C++ Disciplina: Introdução à Ciência da Computação Prof. Modesto Antonio Chaves Universidade estadual do Sudoeste da Bahia PROGRAMAS BÁSICOS EM C++ Disciplina: Introdução à Ciência da Computação Prof. Modesto Antonio Chaves Universidade estadual do Sudoeste da Bahia Calculo da área de um triângulo Algoritmo Área Var base,

Leia mais

Aula 4: Introdução à Linguagem C++

Aula 4: Introdução à Linguagem C++ CI208 - Programação de Computadores Aula 4: Introdução à Linguagem C++ Prof. MSc. Diego Roberto Antunes diegor@inf.ufpr.br www.inf.ufpr.br/diegor Universidade Federal do Paraná Setor de Ciências Exatas

Leia mais

Waldemar Celes e Roberto Ierusalimschy. 29 de Fevereiro de 2012

Waldemar Celes e Roberto Ierusalimschy. 29 de Fevereiro de 2012 Capítulo 5: Repetições Waldemar Celes e Roberto Ierusalimschy 29 de Fevereiro de 2012 1 Construção de laços Uma das principais características de um computador é sua capacidade para realizar cálculo e

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

SSC304 Introdução à Programação Para Engenharias. Introdução a Linguagem C. GE4 Bio

SSC304 Introdução à Programação Para Engenharias. Introdução a Linguagem C. GE4 Bio Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação Introdução à Para Engenharias Introdução a Linguagem C GE4 Bio GE4Bio Grupo de Estudos

Leia mais

Programação: Vetores

Programação: Vetores Programação de Computadores I Aula 09 Programação: Vetores José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/62 Motivação Problema Faça um programa que leia

Leia mais

Unidade 8: Sobrecarga de Funções e Vetores e Matrizes (Arrays) Prof. Daniel Caetano

Unidade 8: Sobrecarga de Funções e Vetores e Matrizes (Arrays) Prof. Daniel Caetano Linguagem de Programação Atualização: // Unidade 8: Sobrecarga de Funções e Vetores e Matrizes (Arrays) Prof. Daniel Caetano Objetivo: Uso de sobrecarga de funções para criação de código intuitivo e uso

Leia mais

Aula 8 Comandos de Seleção

Aula 8 Comandos de Seleção Aula 8 Comandos de Seleção Algoritmos e Programação de Computadores Profs: Ronaldo Castro de Oliveira ronaldo.co@ufu.br Anilton Joaquim da Silva anilton@ufu.br 1 Introdução Até agora não aprendemos a dizer

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 Introdução a Linguagem C Edirlei Soares de Lima Estrutura de um Programa C Inclusão de bibliotecas auxiliares: #include Definição

Leia mais