Exemplos de programação em PASCAL

Documentos relacionados
Aula Anterior. Decomposição algorítmica (continuação)

Aulas Anteriores. Detalhes da linguagem de programação

Algoritmos e Estruturas de Dados I

Sumário. Ciência da Computação. Prof. Dr. Leandro Alves Neves. Aula 10. Algoritmos e Programação. Enquanto (Teste no início) Repeat (Teste no final)

A resposta apresentada em aula, no quadro, (em Chapin e/ou Português Estruturado) está correta?

Linguagem Computacional. Estruturas de Controle: Estruturas de Repetição. Prof. Dr. Adriano Cansian Prof. Dr. Leandro Alves Neves

SEBENTA INTRODUÇÃO Á ALGORITMIA

2.2.5 EXPRESSÕES - Regras para o cálculo de valores

... contador = contador + 1; //contador++; ... <fim_da_estrutura_de_repetição> soma = 0; <estrutura_de_repetição_com_variável_x> soma = soma + x;

Modularidade. Objetivos: Introduzir noções básicas de modularidade. Funções e procedimentos

LINGUAGEM C: COMANDOS DE REPETIÇÃO

Universidade Veiga de Almeida Algoritmos e Linguagem I

Linguagem e Técnicas em Programação. Gilson de Souza Carvalho

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: estruturas de repetição While / Do While / For

Programação Procedimental

Sistemas Operacionais e Introdução à Programação. Introdução à Lógica de Programação: estruturas de repetição

ESTRUTURAS DE REPETIÇÃO

PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95

Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição Repetição com Teste no Final - Repita Até - GABARITO Professor: Danilo Giacobo

ESTRUTURAS DE CONTROLE

ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO

Aula 10: Introdução a Vetores e Matrizes

Introdução à Programação 2006/07. Algoritmos

69) Acrescentar uma mensagem de VALOR INVÁLIDO no exercício [68], caso o segundo valor informado seja ZERO.

Introdução à Ciência da Computação

Estruturas de Controlo Repetitivo. APROG (Civil) Aula 8

Aula 8: Estruturas de Repetição: O comando while

Sequencial Estrutura de controlo mais simples. As instruções são executadas sequencialmente.

A resposta apresentada em aula, no quadro, (em Chapin e/ou Português Estruturado) está correta?

ESTRUTURAS DE REPETIÇÃO - PARTE 1

Aula 15 - Estruturas de Repetição (p3)

Fundamentos de Lógica e Algoritmos Aula 2.5 Conceitos Básicos de Algoritmos. Prof. Dr. Bruno Moreno

CONCEITOS DE ALGORITMOS

PDA - Repetição. Estruturas de repetição. Slides adaptação de Deise Saccol

UNISINOS - UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6/6) Curso: Informática

Linguagem de Descrição de algoritmos

Aula 1. Introdução à programação. Prof. Dr. Bruno Honda

Programação I Apresentação

VARIÁVEIS NUMÉRICAS : integer - Números inteiros entre e real - Números reais de 11 algarismos significativos.

LINGUAGEM C: ARRAY: VETORES E MATRIZES

CAPÍTULO 5 ESTRUTURAS DE REPETIÇÃO

Métodos de Programação I Ana Maria de Almeida

ESTRUTURAS DE CONTROLE - LAÇOS OU MALHAS DE REPETIÇÃO

Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição - GABARITO Repetição com Variável de Controle - Para Professor: Danilo Giacobo

LISTA DE EXERCÍCIOS O que será escrito quando os algoritmos/trechos de algoritmos abaixo forem executados (fazer no papel)?

Programação de Computadores IV. Estruturas de repetição Slides cedidos por Bruno Augusto Dorta Marques

tipoveiculo = (bicicleta, motociclo, motorizada, automovel, autocomreb, camioneta, autocarro, camiao, reboque); veiculo : tipoveiculo;

Estruturas de Repetição. Estruturas de Repetição. Estruturas de Repetição. Estruturas de Repetição. Estruturas de Repetição Condicionais

Aula 5 ESTRUTURAS DE REPETIÇÃO (WHILE)

Introdução à programação em PASCAL. Aula de 22/10/2001. Nota: Conjunto de slides baseados nas transparências utilizadas em PEDA em anos anteriores

p A modularização consiste num método utilizado para facilitar a construção de grandes programas;

Estruturas de Repetição Parte I ENQUANTO-FAÇA

Estruturas de Repetição Parte I ENQUANTO-FAÇA

Algoritmos e Programação I

1) Operadores de auto incremento ++ e auto decremento --

INSTRUÇÕES DE REPETIÇÃO

Fundamentos Programação

Estruturas de Repetição Parte I ENQUANTO

6 a Lista Complementar de Exercícios de CI208 Programação de Computadores 13/02/2014

02. [Sebesta, 2000] Qual é o perigo potencial dos nomes que fazem distinção entre maiúsculas e minúsculas?

Instruções de repetição

Instruções de repetição

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

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

Programação científica C++

Estruturas de Repetição

ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO

Procedimento. Função. Selecção Condicional - a instrução if-then-else. expressão if lógica then instrução else instrução

Linguagem de Montagem do NeanderX

Lógica de Programação e Algoritmos

UNISINOS - UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6/6) Curso: Informática

Aula 15 Variáveis Indexadas (vetores)

Aula 11 Oficina de Programação Estruturas. Profa. Elaine Faria UFU

Aula 10 Comandos de Repetição For e Do While

LISTA DE EXERCÍCIOS 15 ( Matrizes (7Cs))

Universidade Federal de Ouro Preto UFOP. Instituto de Ciências Exatas e Biológicas ICEB. Departamento de Computação DECOM

Transcrição:

Exemplos de programação em PASCAL Exemplos baseados no cálculo de médias Revisão das instruções de repetição cíclica O conceito de acumulador e contador Utilização de arrays Problema: Dada uma sequência de 3 valores numéricos, lidos do teclado, calcular a sua média e escrever o resultado no écran. Variáveis de entrada: seq. de valores {ai: i< 3} Variável de saída: media

Solução trivial: Utilização de 3 variáveis diferentes e independentes (a, a2 e a3) media = (a+ a2 + a3) 3 Solução trivial: Utilização de 3 variáveis diferentes e independentes (a, a2 e a3) media = (a+ a2 + a3) 3 Ooops! e se for uma sequência com 00 valores? 2

Problema mais genérico: Dada uma sequência de N valores numéricos, lidos do teclado, calcular a sua média e escrever o resultado no écran. Variáveis de entrada: seq. de valores {ai: i<n} Variável de saída: media Solução : Utilização de N variáveis separadas (a, a2... an)?!! media = + N ( a+ a2 +... an ) Agora tentem fazer isto com 00 variáveis separadas... Programa ilegível, impossível de escrever e corrigir... 3

Solução 2: E se formos somando à medida que vamos lendo, repetindo N vezes a soma parcial: soma i = soma i- + ai com um valor inicial soma 0 =? 0 (claro!) Ao fim de termos repetido N vezes a soma parcial teremos todos os valores da sequência lidos e somados. media = soma N N Só necessitamos de 3 variáveis para qualquer N: N, soma e ai Atenção: cada valor da sequência é descartado na leitura do valor seguinte. 4

Mas como se constroi: soma i = soma i- + ai? Fazendo soma := 0; (* repetir para cada ai ** Que tipo de ciclo? ** *) soma := soma + ai ; A variável soma designa-se por acumulador. Problema ainda mais genérico: Dada uma numéricos positivos lidos do teclado e terminada com, calcular a sua média e escrever o resultado no écran. Variáveis de entrada: seq. de valores {ai: i<n} mas com N desconhecido! Variável de saída: media 5

Solução: Podemos usar o mesmo método mas, para além de construirmos a soma teremos de contar o número de elementos da sequência Como? Da mesma forma num i = num i- + (por cada elemento lido) E o valor inicial num 0? 0 (claro!) Mas como se constroi: num i = num i- +? Fazendo num := 0; (* repetir para cada ai ** Que tipo de ciclo? ** *) num := num + ; A variável num designa-se por contador. 6

Acumuladores e Contadores Acumulador soma := 0; (* repetir para cada ai *) soma := soma + ai ; Contador num := 0; (* repetir para cada ai *) num := num + ; E não há mesmo maneira de efectuar a média de um número genérico de elementos guardando-os individualmente em memória? Sim, usando um array! 7

array Conjunto de variáveis independentes, do mesmo tipo e com o mesmo nome e que são diferenciadas por um índice numérico do tipo inteiro. array (declaração) var sequencia: array[..00] of integer; sequencia 3 9 6... 2 3 4... 00 índice 8

array (utilização) begin soma := soma + sequencia[]; sequencia[2] := 9; for i := to 00 do writeln(sequencia[i]);... end Com a utilização de um array, o cálculo de uma média pode ser feito com qualquer N (!) segundo o processo habitual de leitura cálculos escrita Leitura do teclado para o array Cálculos sobre o array Escrita do resultado 9