Programação imperativa. 3. Mais funções

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

Download "Programação imperativa. 3. Mais funções"

Transcrição

1 Programação imperativa 3. Mais funções

2 3. Mais funções Funções. Escolha binária. Números inteiros. 2

3 3. Mais funções Funções. Escolha binária. Números inteiros. 3

4 As funções de cálculo As funções de cálculo calculam um resultado a partir dos argumentos, tal como na matemática. O tipo do resultado. O nome da função. A lista de argumentos, cada argumento com o seu tipo. double weighted_average(double lab, double exam) return lab * exam * 0.6; A instrução return. A expressão que descreve os cálculos. 4

5 Distância entre dois pontos Eis uma função que calcula a distância entre dois pontos (x1, y1) e (x2, y2): double distance (double x1, double y1, double x2, double y2) return sqrt(pow(x1-x2, 2) + pow(y1-y2, 2)); sqrt(x), a raiz quadrada de x. pow(x, y), x elevado a y. 5

6 As funções de teste Tipicamente, as funções de teste não têm argumentos nem resultado, declaram variáveis para os dados e para os resultados do problemas, leem os dados, calculam os resultados e escrevem os resultados, repetidamente, até não haver mais dados: void test_distance(void) double x1, y1; double x2, y2; double d; while (scanf("%lf%lf%lf%lf", &x1, &y1, &x2, &y2)!= EOF) d = distance(x1, y1, x2, y2); printf("%f\n", d); 6

7 As funções matemáticas Função Significado sin(x) Seno de x. cos(x) Cosseno de x. tan(x) Tangente de x. atan2(y, x) exp(x) Exponencial de x. Arcotangente de y/x, no intervalo [-π, π]. log(x) Logaritmo natural de x. pow(x, y) x elevado a y. sqrt(x) Raiz quadrada de x. floor(x) Maior número inteiro menor ou igual a x. ceil(x) Menor número inteiro maior ou igual a x. fabs(x) Valor absoluto de x. Para usar, fazer #include <math.h> 7

8 3. Mais funções Funções. Escolha binária. Números inteiros. 8

9 Escolha binária Por vezes, a expressão dos cálculos envolve a escolha entre duas possibilidades: a nota final é a média ponderada ( ) se a nota do exame for maior ou igual a 8.5; caso contrário, é a nota do exame ( ). double grade_exact(double lab, double exam) return exam < 8.5? exam : weighted_average(lab, exam); 9

10 Expressão condicional x? y : z O valor de x? y : z é y, se x for verdadeiro, e é z, se x for falso. Se x for verdadeiro, z não é avaliado; se x é falso, y não é avaliado. double grade_exact(double lab, double exam) return exam < 8.5? exam : weighted_average(lab, exam); 10

11 Arredondamento rx ( ) x 0.5, se x 0.0 x 0.5, se x 0.0 double round(double x) return x < 0.0? ceil(x-0.5) : floor(x+0.5); void test_round(void) double x; double z; while (scanf("%lf", &x)!= EOF) z = round(x); printf("%f\n", z); 11

12 Instrução if-else Podemos usar a instrução if-else em vez da expressão condicional: double grade_exact(double lab, double exam) if (exam < 8.5) return exam; else return weighted_average(lab, exam); double round(double x) if (x < 0.0) return ceil(x-0.5); else return floor(x+0.5); 12

13 Instrução if-else, significado if (B) true B false S else R S R 13

14 Decomposição funcional double grade_final(double lab, double exam) return round(grade_exact(lab, exam)); A função grade_final chama as funções round e grade_exact. A função round chama as funções floor e ceil. A função grade_exact chama a função weighted_average. 14

15 Formatação dos números double A nota final deve ser escrita sem parte decimal: void test_grade_final(void) double lb; double ex; double ge; double gf; while (scanf("%lf%lf", &lb, &ex)!= EOF) ge = grade_exact(lb, ex); gf = grade_final(lb, ex); printf("%.1f %.1f %f %.0f\n", lb, ex, ge, gf); Usar uma casa decimal. Usar seis casas decimais, por defeito. Não usar nenhuma casa decimal, nem sequer o ponto. 15

16 3. Mais funções Funções. Escolha binária. Números inteiros. 16

17 Números inteiros O tipo double representa os números reais; o tipo int representa os números inteiros. O intervalos dos números inteiros representáveis é [ ], isto é, [ ] é um pouco mais do que dois mil milhões. Para os reais o intervalo vai de 1.7* a 1.7* (tanto positivos como negativos), com precisão até 15 algarismos decimais. Convém distinguir bem int e double. 17

18 Problema da potência minorante A potência minorante de um número inteiro positivo, para uma certa base, é a maior potência dessa base que é menor ou igual ao número. Para a base 10, calcula-se de cabeça: pm(3781) = 1000; pm(91) = 10; pm(100) = 100; pm(8) = 1. Como programar? 18

19 Como não programar Não vale fazer uma análise por casos exaustiva: int powerless10_very_bad(int x) if (x < 10) return 1; else if (x < 100) return 10; else if (x < 1000) return 100; else if (x < 10000) return 1000; else...; 19

20 Aproveitando a ideia Na verdade só há dois casos. Se x é menor do que 10, o resultado é 1; se não, o resultado é 10 vezes mais do que o resultado que se obteria para um número 10 vezes menor do que x: int powerless10(int x) if (x < 10) return 1; else return 10 * powerless10(x / 10); 20

21 Base 2 Em programação interessa-nos a base 2: int powerless(int x) if (x < 2) return 1; else return 2 * powerless(x / 2); Variante, com expressão condicional: int powerless(int x) return x < 2? 1 : 2 * powerless(x / 2); 21

22 Calculando à mão powerless10(3785) = 10 * powerless10(378) = 10 * (10 * powerless(37)) = 10 * (10 * (10 * powerless(3))) = 10 * (10 * (10 * 1))) = = 1000 powerless (161) = 2 * powerless(80) = 2 * (2* powerless(40)) = 2 * (2 * (2 * powerless(20))) = 2 * (2 * (2 * (2 * powerless(10)))) = 2 * (2 * (2 * (2 * (2 *powerless(5))))) = 2 * (2 * (2 * (2 * (2 * (2 * powerless(2)))))) = 2 * (2 * (2 * (2 * (2 * (2 * (2 * powerless(1))))))) = 2 * (2 * (2 * (2 * (2 * (2 * (2 * 1)))))) = =

23 Função de teste void test_powerless(void) int x; int z; while (scanf("%d", &x)!= EOF) z = powerless10(x); printf("%d\n", z); z = powerless(x); printf("%d\n", z); 23

24 Concatenação de números Queremos, dados dois números, calcular o número que se obtém concatenando as representações decimais desses números. Por exemplo concat(356, 1278) vale ; concat(95, 6) vale 956; concat(81, 0) vale 810; concat(0, 672) vale 672. Como programar? 24

25 Como programar a concatenação Se o segundo número for menor do que 10, é fácil: multiplica-se o primeiro por 10 e soma-se o segundo. E se não? Se não, podemos começar por concatenar o primeiro número e número que se obtém do segundo eliminando o último algarismo; e depois acrescentamos o último algarismo do segundo número ao resultado. Nota: o último algarismo é o resto da divisão por 10. Nota: eliminar o último algarismo é dividir por 10. Nota: Estamos a trabalhar com números inteiros: a divisão é a divisão inteira. 25

26 Função de concatenação Observe: int concat(int x, int y) if (y < 10) return x * 10 + y; else return concat(x, y / 10) * 10 + y % 10; Quociente da divisão inteira de y por 10. Resto da divisão inteira de y por

27 Função de teste void test_concat(void) int x; int y; int z; while (scanf("%d%d", &x, &y)!= EOF) z = concat(x, y); printf("%d\n", z); 27

28 Os operadores aritméticos Operador Significado + Soma. Diferença. * Produto. / Quociente da divisão inteira, se ambos os operandos forem de tipo int; quociente da divisão exata, se algum deles (ou os dois) forem de tipo double. % Resto da divisão inteira. Ambos os operandos têm de ser de tipo int. 28

29 Os operadores de comparação Operador Significado == Igualdade.!= Não igualdade. < Menor. <= Menor ou igual. > Maior. >= Maior ou igual. 29

Programação Imperativa. Lição n.º 3 Operações aritméticas

Programação Imperativa. Lição n.º 3 Operações aritméticas Programação Imperativa Lição n.º 3 Operações aritméticas Operações aritméticas Aritmética em C. Aritmética int. Aritmética double. Aritmética mista. Funções matemáticas de biblioteca. Funções max e min.

Leia mais

Declarações. C diferencia letras maiúsculas de minúsculas! int n, N; n é diferente de N!

Declaraçõ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 mais

LINGUAGEM E TÉCNICAS DE PROGRAMAÇÃO

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

Algoritmos e Técnicas de Programação. Professora: Luciana Faria

Algoritmos e Técnicas de Programação. Professora: Luciana Faria Algoritmos e Técnicas de Programação Professora: Luciana Faria Entrada e Saída de Dados Funções matemáticas #include Função ceil cos exp fabs floor log log10 pow sin sqrt tan Exemplo ceil(x)

Leia mais

Algoritmos RESUMO - LINGUAGEM C

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

Aula 04: Fluxogramas e condicionais

Aula 04: Fluxogramas e condicionais Aula 04: Fluxogramas e condicionais 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 Introdução ao C/C++ Variáveis

Leia mais

Introdução à Linguagem C. Adaptado de Deise Saccol

Introduçã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 mais

Aula 08: Repetição (Parte 3)

Aula 08: Repetição (Parte 3) Aula 08: Repetição (Parte 3) Introdução a Programação Túlio Toffolo & Puca Huachi http://www.toffolo.com.br BCC201 2018/2 Departamento de Computação UFOP Aula Anterior Breve Revisão Comandos de Decisão

Leia mais

Introdução a Linguagem C

Introduçã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 mais

Introdução à Linguagem C

Introduçã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 mais

Introduçã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 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 mais

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

Introdução à Linguagem C

Introduçã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 mais

Programação de Computadores III

Programação de Computadores III Programação de Computadores III Introdução ao FORTRAN Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.1/tcc-00.157

Leia mais

Introduçã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/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 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

Programação de Computadores III

Programação de Computadores III Programação de Computadores III Introdução ao FORTRAN Professor Hugo de Oliveira Barbalho hbarbalho@ic.uff.br Material produzido pelo professor: Leandro Augusto Frata Fernandes (laffernandes@ic.uff.br)

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Programação 1.Ano LCC-MIERSI DCC - FCUP Nelma Moreira Aula 5 1 Repitições controladas por contadores Contar até 10 main() { int contador=0; while (++contador

Leia mais

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

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

Leia mais

Programação de Computadores:

Programação de Computadores: Instituto de C Programação de Computadores: Introdução ao FORTRAN Luis Martí Instituto de Computação Universidade Federal Fluminense lmarti@ic.uff.br - http://lmarti.com Introdução ao FORTRAN Cinco aspectos

Leia mais

LP2 Laboratório de Programação 2 Ciência da Computação. Problema proposto

LP2 Laboratório de Programação 2 Ciência da Computação. Problema proposto Problema proposto Em um torneio de futebol a pontuação foi definida da seguinte maneira: vitória por goleada 6 pontos; vitória simples 3 pontos; empate 1 ponto. Como determinar a quantidade mínima de jogos

Leia mais

Fundamentos de Programação. Turma CI-240-EST. Josiney de Souza.

Fundamentos de Programação. Turma CI-240-EST. Josiney de Souza. Fundamentos de Programação Turma CI-240-EST Josiney de Souza josineys@inf.ufpr.br Agenda do Dia Aula 5 (18/09/15) Resolução de alguns problemas Aula anterior: soma-produto-media, amd2dias, segundos2hms

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

Informática Aplicada. Aula 4 UNIDADE II. Prof. Cleanderson Lobo

Informática Aplicada. Aula 4 UNIDADE II. Prof. Cleanderson Lobo Informática Aplicada Aula 4 UNIDADE II Prof. Cleanderson Lobo cleanderson.lobo@faculdadecisne.edu.br Histórico da Linguagem C Criada por Denis Ritchie, na década de 1970, para uso em um computador DEC

Leia mais

Algoritmos; Introdução à linguagem C

Algoritmos; Introdução à linguagem C Algoritmos; Introdução à linguagem C Referências: (1) Livro Introdução a Algoritmos e Programação de Fabricio Ferrari e Cristian Cechinel (2) Notas de aula das Profas. Vania Bogorny, Patrícia Jaques, Mônica

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 2012-2 Objetivos Entender a utilidade do resto de divisão Conhecer as funções matemáticas prontas do C/C++ Capacitar

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

Computadores Digitais 2. Prof. Rodrigo de Souza Couto

Computadores 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

Vírgula flutuante. Tipos float, double, long double. Uso de funções. Exercícios

Vírgula flutuante. Tipos float, double, long double. Uso de funções. Exercícios Vírgula flutuante. Tipos float, double, long double. Uso de funções. Exercícios David Déharbe 1 1 Objetivos da aula Complementar os conhecimentos sobre a construção de expressões Novos tipos para valores

Leia mais

Aula 12- Variáveis e valores reais

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

INF1005 Programação I. Pontifícia Universidade Católica Departamento de Informática

INF1005 Programação I. Pontifícia Universidade Católica Departamento de Informática INF1005 Programação I Pontifícia Universidade Católica Departamento de Informática 1 INF1005 Expressões e Operadores Pontifícia Universidade Católica Departamento de Informática 2 Farinha, açúcar, manteiga,fermento...

Leia mais

Capítulo 2. Funções. Flexibilização de um programa; Reutilização de código (OO); Evitar o retrabalho;

Capítulo 2. Funções. Flexibilização de um programa; Reutilização de código (OO); Evitar o retrabalho; Capítulo 2 Funções Até o presente momento estudamos programas escritos de maneira estrutural eemumúnicoblocodecódigo-inteiramentenafunçãomain(). Esta técnica se mostra muito eficaz nos quesitos rapidez

Leia mais

Introdução à Computação

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

Leia mais

Introdução à Computação

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

Leia mais

Programação de Computadores. Primeiro contato

Programação de Computadores. Primeiro contato Programação de Computadores Primeiro contato Sumário Programa O que é um programa? Um conjunto de instruções encadeadas de modo lógico, convertido em uma linguagem que computadores podem interpretar O

Leia mais

Seguindo em frente. 2.1 A biblioteca matemática. 2.2 Estruturas condicionais

Seguindo em frente. 2.1 A biblioteca matemática. 2.2 Estruturas condicionais Capítulo 2 Seguindo em frente 21 A biblioteca matemática Diversas funções matemáticas estão definidas em C Algumas que usamos com freqüência em aplicações físicas são listadas abaixo A variáveis x e y

Leia mais

Linguagem Haskell. Universidade Estadual Santa Cruz Conceitos de Linguagens de Programação. Tiago Carneiro 19 Agosto 2013

Linguagem Haskell. Universidade Estadual Santa Cruz Conceitos de Linguagens de Programação. Tiago Carneiro 19 Agosto 2013 Linguagem Haskell Universidade Estadual Santa Cruz Conceitos de Linguagens de Programação Tiago Carneiro 19 Agosto 2013 1 1 Linguagem Haskell Linguagem de programação funcional É um paradigma de programação

Leia mais

Programação Introdução

Programação Introdução PROGRAMAÇÃO Programação Introdução Prof. Dr. Adriano Mauro Cansian 1 Introdução Para armazenar um algoritmo na memória de um computador e para que ele possa, em seguida, comandar as operações a serem executadas,

Leia mais

Introdução a Programação de Jogos

Introduçã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 mais

Programação de Computadores

Programação de Computadores Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Módulos: math random Funções definidas pelo usuário Mais sobre notações

Leia mais

Revisão. Classe e objeto Construtores Polimorfismo Sobrecarga Pacote padrão

Revisão. Classe e objeto Construtores Polimorfismo Sobrecarga Pacote padrão Revisão Classe e objeto Construtores Polimorfismo Sobrecarga Pacote padrão Conceito de referência Considere o seguinte trecho de programa: public static void main(string args[]) { Pessoa p1, p2, p3; p1

Leia mais

Computação eletrônica: Operadores, expressões e funções

Computação eletrônica: Operadores, expressões e funções Computação eletrônica: Operadores, expressões e funções Gurvan Huiban ghuiban@cin.ufpe.br Plano de aula 1 2 Funções 1 Operadores aritméticos Operadores relacionais Operadores lógicos 2 Funções Operadores

Leia mais

INF1005: 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 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 mais

Capítulo 4: Condicionais

Capítulo 4: Condicionais Capítulo 4: Condicionais INF1004 e INF1005 Programação 1 Pontifícia Universidade Católica Departamento de Informática Tomada de Decisão Até o momento, todas as instruções eram executadas, uma após a outra.

Leia mais

Introdução da Linguagem C

Introdução da Linguagem C 1. Introdução a Linguagem C 1.1 História Entre 1969 e 1973, Dennis Ritchie inventou a linguagem C e foi o primeiro a implementá-la usando um computador DEC PDP-11, que utilizava o sistema operacional Unix.

Leia mais

= = = = = = = = = = = = = = = =

= = = = = = = = = = = = = = = = Página 1 de 7 A Linguagem PASCAL = = = = = = = = = = = = = = = = 1) ALFABETO: são os símbolos (ié, caracteres ) permitidos na linguagem. São as letras (maiúsculas e minúsculas), os algarismos (ou dígitos)

Leia mais

Disciplina: Introdução a Programação. IPRJ/UERJ Professora: Sílvia Mara da Costa Campos Victer. Índice: Aula1 - Introdução Programa Algoritmo

Disciplina: Introdução a Programação. IPRJ/UERJ Professora: Sílvia Mara da Costa Campos Victer. Índice: Aula1 - Introdução Programa Algoritmo Disciplina: Introdução a Programação. IPRJ/UERJ Professora: Sílvia Mara da Costa Campos Victer Índice: Aula1 - Introdução Programa Algoritmo Aula 2 - Variáveis Tipos de dados Identificadores Aula 3 - Programação

Leia mais

Módulo 3. Métodos e String. Programação Orientada a Objetos I Java (Rone Ilídio)

Módulo 3. Métodos e String. Programação Orientada a Objetos I Java (Rone Ilídio) Módulo 3 Métodos e String Programação Orientada a Objetos I Java (Rone Ilídio) Métodos São módulos de programas, ou seja, trechos de código com determinada função. Cada método deve possuir um nome (identificador)

Leia mais

Programação Estruturada

Programação Estruturada Programação Estruturada Introdução à linguagem C Professores Emílio Francesquini e Carla Negri Lintzmayer 2018.Q3 Centro de Matemática, Computação e Cognição Universidade Federal do ABC Programação estruturada

Leia mais

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

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO LÓGICA DE PROGRAMAÇÃO PROFª. M.Sc. JULIANA H Q BENACCHIO Primeiro programa em C #include int main() { int num1, num2, result; scanf("%d",&num1); scanf("%d",&num2); result = num1 + num2; printf("%d",

Leia mais

Aula 01. Tipos de Dados Saída de Dados Entrada de Dados Programação sequencial

Aula 01. Tipos de Dados Saída de Dados Entrada de Dados Programação sequencial Logo Aula 01 Tipos de Dados Saída de Dados Entrada de Dados Programação sequencial 2 Modelo de código para C/C++ Um modelo de código para C/C++ é semelhante ao seguinte: #include using

Leia mais

Laboratório de Programação 02

Laboratório de Programação 02 Laboratório de Programação 02 Ambiente de Desenvolvimento e Revisão da Linguagem C Prof. Carlos Eduardo de Barros Paes Prof. Julio Arakaki Departamento de Computação PUC-SP Code::Blocks Ambiente integrado

Leia mais

Linguagem C. Prof.ª Márcia Jani Cícero

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

Capítulo 2: Condicionais. Pontifícia Universidade Católica Departamento de Informática

Capítulo 2: Condicionais. Pontifícia Universidade Católica Departamento de Informática Capítulo 2: Condicionais Pontifícia Universidade Católica Departamento de Informática Tomada de Decisão Até o momento, todas as instruções eram executadas, uma após a outra. No capítulo 3, vimos que a

Leia mais

CCO 016 / COM 110 Fundamentos de Programação

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

Aula 13 - Somas de Séries

Aula 13 - Somas de Séries Aula 13 - Somas de Séries Vamos resolver alguns problemas que calculam somas. Vamos resolvê-los sem usar a função pow, para fazer uso da técnica de calcular um termo a partir do anterior. P46) Dado n>0

Leia mais

Técnicas de Programação em Engenharia Elétrica I - Engenharia de Sistemas Embarcados - Prof. Alessandro Zimmer Introdução à Linguagem C

Técnicas de Programação em Engenharia Elétrica I - Engenharia de Sistemas Embarcados - Prof. Alessandro Zimmer Introdução à Linguagem C Técnicas de Programação em Engenharia Elétrica I - Engenharia de Sistemas Embarcados - Prof. Alessandro Zimmer Introdução à Linguagem C Operadores aritméticos Operadores Unários (um só operando) Incremento

Leia mais

Utilização da Linguagem C

Utilização da Linguagem C Histórico Criada em 1972 por Dennis Ritchie Usada no desenvolvimento do sistema operacional Unix no Bell Labs C foi derivada da linguagem B, desenvolvida por Ken Thompson Linguagem procedural de alto nível

Leia mais

CCO 016 / COM 110 Fundamentos de Programação

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

Modulo 7: Programação com funções predefinidas pela linguagem

Modulo 7: Programação com funções predefinidas pela linguagem PROGRAMAÇÃO DE COMPUTADORES V - TCC- 00.323 Modulo 7: Programação com funções predefinidas pela linguagem Aura -Erick aconci@ic.uff.br, erickr@id.uff.br Roteiro Operadores de Atribuição Funções pré-definidas

Leia mais

MAC 2166 Introdução à Computação para Engenharia

MAC 2166 Introdução à Computação para Engenharia MAC 2166 Introdução à Computação para Engenharia PROVA 2 QUESTÃO 1. Simule a execução do programa abaixo, destacando a sua saída. A saída do programa consiste de tudo que resulta dos comandos printf. int

Leia mais

Conceitos básicos de programação

Conceitos básicos de programação Constantes class Exemplo { static void Main() { float fahr, celsius; int lower, upper, step; lower = 0; /* limite inferior da tabela de temperaturas */ upper = 300; /* limite superior */ step = 20; /*

Leia mais

Controle de Fluxo - Condicionais. INF1005 Programação I Profa. Simone D.J. Barbosa sala 410 RDC

Controle de Fluxo - Condicionais. INF1005 Programação I Profa. Simone D.J. Barbosa sala 410 RDC Controle de Fluxo - Condicionais INF1005 Programação I Profa. Simone D.J. Barbosa simone@inf.puc-rio.br sala 410 RDC 1 controle de fluxo - condicionais tópicos if if else if else if else expressões booleanas

Leia mais

ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO

ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO PROF. FABIANO TAGUCHI http://fabianotaguchi.wordpress.com (66) 9953-7642 AULA 02 Revisão de conteúdos da aula passada Exercícios de revisão da aula 01 Estruturas condicionais

Leia mais

Programação estruturada

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

Leia mais

Segundo programa: media.c

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

Introdução à Programação

Introdução à Programação Introdução à Programação 1.Ano LCC-MIERSI DCC - FCUP Nelma Moreira Aula 3 Tipos, Expressões,Operadores Tipos de dados Variáveis Constantes Constantes Simbólicas Expressões Operadores aritméticos, relacionais

Leia mais

Programação Imperativa. Lição n.º 1 Preliminares

Programação Imperativa. Lição n.º 1 Preliminares Programação Imperativa Lição n.º 1 Preliminares Preliminares Apresentação. A programação na LEI. O que é um computador? O que é um programa? Linguagens de programação. A linguagem de programação C. Bibliografia.

Leia mais

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

Módulo 7. Funções. Algoritmos e Estruturas de Dados I C++ (Rone Ilídio) Módulo 7 Funções Algoritmos e Estruturas de Dados I C++ (Rone Ilídio) Funções Conjunto de instruções acessadas através de um nome Implementadas uma única vez e executadas quantas necessárias Importantes

Leia mais

Programação de Computadores

Programação de Computadores Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Linguagens Conceito de Algoritmo Pseudocódigo

Leia mais

Introdução ao R. Gualberto Agámez Montalvo. 16 de Março de Análise de Dados e Simulação Departamento de Estatística Universidade de São Paulo.

Introdução ao R. Gualberto Agámez Montalvo. 16 de Março de Análise de Dados e Simulação Departamento de Estatística Universidade de São Paulo. Gualberto Agámez Montalvo. Análise de Dados e Simulação Departamento de Estatística Universidade de São Paulo. 16 de Março de 2015 Interface do R Novo script Novo script Tinn-R Editor Figura: Interface

Leia mais

Introdução ao Scilab

Introdução ao Scilab Introdução ao Scilab Prof. Santos Alberto Enriquez Remigio Faculdade de Matemática-Universidade Federal de Uberlândia 12 de setembro de 2015 Tópicos Scilab Operações básicas de calculadora no Scilab Definição

Leia mais

Minicurso MATLAB BÁSICO MÓDULO 1

Minicurso MATLAB BÁSICO MÓDULO 1 Minicurso MATLAB BÁSICO MÓDULO 1 Vitorino Biazi Robertson Junior Jhonata Moraes Comissão do Minicurso Sávio Alves Gabriel Nunes Thiago Bragança Roteiro do primeiro módulo Introdução Área de trabalho Variáveis

Leia mais

1. Múltiplos e divisores

1. Múltiplos e divisores Escola Básica de Santa Marinha Matemática 2009/2010 7º Ano Síntese dos conteúdos Números e operações 1 Múltiplos e divisores Múltiplo de um número é todo o número que se obtém multiplicando o número dado

Leia mais

CCM0118 Computação I

CCM0118 Computação I CCM0118 Computação I Departamento de Ciência da Computação IME-USP Curso de Ciências Moleculares Turma 22 Segundo Semestre de 2012 Segundo Exercício-Programa Prazo de entrega: até 16 de outubro de 2012.

Leia mais

Programação. MEAer. Expressões e Instruções. Bertinho Andrade da Costa. Instituto Superior Técnico. 2011/2012 1º Semestre

Programação. MEAer. Expressões e Instruções. Bertinho Andrade da Costa. Instituto Superior Técnico. 2011/2012 1º Semestre Programação MEAer 2011/2012 1º Semestre Bertinho Andrade da Costa Instituto Superior Técnico Expressões e Instruções Programação 2011/2012 DEEC-IST Expressões 1 Sumário Expressões Formato Expressões de

Leia mais

controle de fluxo - condicionais

controle de fluxo - condicionais controle de fluxo - condicionais controle de fluxo - condicionais tópicos if if else if else if else expressões booleanas switch referências Capítulo 4 da apostila Capítulo 3 do livro condicionais (tomada

Leia mais

a) Defina uma função para obter o máximo entre dois números

a) Defina uma função para obter o máximo entre dois números IP, Resoluções comentadas, Semana 2 jrg, vs 002, Out-2012 a) Defina uma função para obter o máximo entre dois números A versão mais imediata talvez seja esta: public static int maior ( int a, int b ) {

Leia mais

Linguagem Haskell. Riocemar S. de Santana

Linguagem Haskell. Riocemar S. de Santana Linguagem Haskell Riocemar S. de Santana Haskell, o que é? É uma linguagem de programação puramente funcional, de propósito geral. Nomeada em homenagem ao matemático americano Haskell B. Curry (1900 1982).

Leia mais

public void setdata(data d) { data = d;

public void setdata(data d) { data = d; class Data... public class Compromisso private Data data; private int hora; private String descricao; /**java.lang.string*/ public Compromisso() public Compromisso(Data data, int hora, String descricao)

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Alexandre César Muniz de Oliveira Dados e Operadores Parte V Representação Programação Solução de problemas em duas fases: Representação (modelagem de dados) Ação (modelagem

Leia mais

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

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

Programação modular. Função

Programação modular. Função 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

Leia mais

Programação Imperativa. Lição n.º 12 Arrays ordenados

Programação Imperativa. Lição n.º 12 Arrays ordenados Programação Imperativa Lição n.º 12 Arrays ordenados Arrays ordenados Renque. Busca dicotómica. Método da bisseção. 11/3/16 Programação Imperativa 2 Problema do renque O renque de um valor num array é

Leia mais

Tipo de argumentos. valor. argumentos

Tipo de argumentos. valor. argumentos Operação Numero de argumentos Tipo de argumentos valor (+ ) 2 ou + Numérico Soma ( ) 2 ou + Numérico Subtração ( ) 1 Numérico Simétrico (/ ...) 2 ou + Numérico Divisão (cos

Leia mais

Algoritmos: Conceitos Fundamentais

Algoritmos: Conceitos Fundamentais Algoritmos: Conceitos Fundamentais Instituto de Ciências Matemáticas e de Computação Slides elaborados pela Prof(a). Simone do Rocio Senger de Souza 1o semestre/2012 DADOS, INSTRUÇÕES E EXPRESSÕES TIPO

Leia mais

02 - Introdução ao Scilab

02 - Introdução ao Scilab BCC701- Programação de Computadores I 02 - Introdução ao Scilab Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM http://www.decom.ufop.br/bcc701 BCC701-2018-02 DECOM 02 - Introdução

Leia mais

MC102 Algoritmos e Programação de Computadores

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

Leia mais

Aula 15: Repetição (Parte 3)

Aula 15: Repetição (Parte 3) Aula 15: Repetição (Parte 3) 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 Breve Revisão Comandos de Decisão

Leia mais

Conceitos Básicos Linguagem C

Conceitos Básicos Linguagem C Conceitos Básicos Linguagem C PROF. MAURÍCIO A DIAS MACDIASPAE@GMAIL.COM 2 Método Método básico para construção de algoritmos 1. Compreender completamente o problema a ser resolvido, se possível dividindo

Leia mais

Introdução à Programação em C Input / Output

Introdução à Programação em C Input / Output Introdução à Programação em C Input / Output Resumo Aula Anterior Programa começa com função main() Sintaxe para definição de funções Definição de variáveis e atribuições Estruturas de controlo if-then

Leia mais

Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Segunda Aula Prática - 29 de agosto de 2008

Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Segunda Aula Prática - 29 de agosto de 2008 Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Segunda Aula Prática - 29 de agosto de 2008 Introdução O objetivo desta aula prática é exercitar comandos de entrada e saída simples

Leia mais

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano CÁLCULO NUMÉRICO Profa. Dra. Yara de Souza Tadano yaratadano@utfpr.edu.br Aula 10 04/2014 Scilab Métodos para zeros reais de funções Algoritmo do Método da Bissecção Seja f (x) contínua em [a, b] e tal

Leia mais

Mé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 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 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

4.1- Aritméticos + soma - subtração * multiplicação / divisão % módulo (resto da divisão de inteiros ).

4.1- Aritméticos + soma - subtração * multiplicação / divisão % módulo (resto da divisão de inteiros ). 2626262626262626262626262626262626262626262626262626 4 - OPERADORES Podem ser: aritméticos, relacionais, lógicos, incremento e decremento, atribuição. Operadores aritméticos têm precedência sobre os relacionais

Leia mais

Introdução ao SciLab. SciLab O que é? Onde obter o programa:

Introdução ao SciLab. SciLab O que é? Onde obter o programa: Introdução ao SciLab SciLab O que é? SciLab é uma plataforma interativa para computação numérica composta de uma rica coleção de algoritmos numéricos e de uma linguagem de programação associada. CN04 2010

Leia mais

5 Operações e Funções Matemáticas. Unesp Campus de Guaratinguetá

5 Operações e Funções Matemáticas. Unesp Campus de Guaratinguetá 5 Operações e Funções Matemáticas Unesp Campus de Guaratinguetá Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro Ministrado por: Prof. André Amarante 4.4.1 Avaliação de Expressões

Leia mais

Algoritmos e Lógica de Programação. 6ª Lista de Exercícios Comandos de Repetição

Algoritmos e Lógica de Programação. 6ª Lista de Exercícios Comandos de Repetição Algoritmos e Lógica de Programação 6ª Lista de Exercícios Comandos de Repetição 1. Qual a saída do programa abaixo? int i; for (i = 0; i < 10; i += 2) printf("%d\n", i / 2); 2. Qual a saída do programa

Leia mais