Module Introduction. Programação. Cap. 4 Algoritmos e Programação Estruturada



Documentos relacionados
Cap.2.5: Design de Algoritmos e Programação Estruturada. Algoritmos, fluxogramas e pseudo-código

Prof. Dr. Abel Gomes Cap.4: Design de Algoritmos e Programação Estruturada. Algoritmos, fluxogramas e pseudo-código

Programação Mestrado Integrado em Engenharia Aeronáutica 1º ano, 1º semestre. T. 04 Algoritmos e Programação Estruturada

Programação de Computadores I Fluxogramas PROFESSORA CINTIA CAETANO

Instruções condicionais. Instruções de repetição. Programa simples. Se fizeres barulho então apanhas um estalo!!!! Se condição então acção.

Tipos de Dados Simples

PROGRAMAÇÃO INSTRUÇÕES DA LINGUAGEM C

José Romildo Malaquias

Linguagem de Programação C. Comandos de Seleção e Desvio

Programas simples em C

e à Linguagem de Programação Python

Comandos Sequenciais if else, e Switch

Estruturas de repetição (Ciclos)

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

Algoritmos de Busca em Tabelas

2. OPERADORES ALGORITMOS, FLUXOGRAMAS E PROGRAMAS FUNÇÕES... 10

Linguagem C: Estruturas de Controle. Prof. Leonardo Barreto Campos 1

Computação e Programação Aula prática nº 5. Enunciados dos problemas

Programação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre

7. Estrutura de Decisão

Estruturas de entrada e saída

Dadas a base e a altura de um triangulo, determinar sua área.

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

Estruturas de Repetição. Programação em Java Estruturas de Repetição

ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA 2005/ Valores

Resumo da Matéria de Linguagem de Programação. Linguagem C

Capítulo 2: Introdução à Linguagem C

Programação WEB I Estruturas de controle e repetição

Introdução a Computação

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br

Aluísio Eustáquio da Silva

IFTO LÓGICA DE PROGRAMAÇÃO AULA 01

Apresentar os conceitos básicos e as estruturas de linguagem relacionadas à tomada de decisão ofertadas pela linguagem C, tais como:

Introdução ao Javascript. Parte 2 Prof. Victor Hugo Lopes

Folha Prática 2. Lab. 2

Programação Estruturada Linguagem C

LINGUAGEM C: DESCOMPLICADA. Prof. André R. Backes

Javascript 101. Parte 2

Algoritmia e Programação APROG. Linguagem JAVA. Básico. Nelson Freire (ISEP DEI-APROG 2012/13) 1/31

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br

compreender a importância de cada estrutura de controle disponível na Linguagem C;

Exercício de Revisão Linguagem C

OPERADORES E ESTRUTURAS DE CONTROLE

INF 1005 Programação I

Estrutura de um programa em linguagem C

Informática II Cap. 3

Analise o código abaixo:

Variáveis e estruturas de controlo. Introdução à Programação André L. Santos

MC102 Algoritmos e Programação de Computadores 1ª Aula Introdução à Programação de Computadores

Operaçõe õ s c om o Strings Intr oduç ão a o Ponte iros o e Funçõe õ s

Edwar Saliba Júnior. Dicas, Comandos e Exemplos Comparativos entre Linguagem Algorítmica e Linguagem C

Convertendo Algoritmos para a Linguagem C

Aula 02: C# - Estruturas de Decisão

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá.

Resolução de problemas e desenvolvimento de algoritmos

Java. Marcio de Carvalho Victorino

Introdução a Algoritmos Parte 04

Aula 10 Introdução à Algoritmos. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

Edwar Saliba Júnior. Dicas, Comandos e Exemplos Comparativos entre Linguagem Algorítmica e Linguagem C / C++

Programação Básica em Arduino Aula 2

Mini Curso DESCOMPLICANDO C# Professor Hélio

Instituto Superior Politécnico de VISEU. Escola Superior de Tecnologia

Introdução à Programação

Introdução a PHP (Estruturas de Controle)

Introdução à Computação para o Ensino Médio. Centro Técnico Científico

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

Módulo Lógica Programação com aplicações em Java. Projeto khouse Profissionalizante Profª Larissa Brandão

Faculdade de Ciências Universidade Agostinho Neto Departamento de Matemática e Engenharia Geográfica Ciências da Computação

Linguagem C Tipos de Dados. void; escalares; sizeof Vectores; strings em C Estruturas Introdução ao pré-processador

Conceitos Importantes:

LINGUAGEM C. Estrutura básica de um programa

Programação científica C++

Os objetivos indicados aplicam-se a duas linguagens de programação: C e PHP

Introdução a Linguagem C

Curso de Linguagem C

Aula 1 Tipo Abstrato de Dados

Curso C: Controle de Fluxo

Sistema de Informação de Licenciamento de Operações de Gestão de Resíduos

Metodos de Programação

PROGRAMAÇÃO FUNÇÕES NA LINGUAGEM C

Algoritmo para converter uma temperatura em Fahrenheit para Celsius

Linguagem C: for. Introdução à linguagem C(++) Profs. Anilton, Lasaro e Paulo Coelho. Faculdade de Computação Universidade Federal de Uberlândia

Linguagem e Técnicas de Programação I Operadores, expressões e funções. Prof. MSc. Hugo Souza Material desenvolvido por: Profa.

Exercício 1. Tabela 1: Cadastro de usuários, senhas e privilégios (exemplo). Login Senha Privilégio Armamento

Universidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática

2 Orientação a objetos na prática

O código JavaScript deve ser colocado entre tags de comentário para ficar escondido no caso de navegadores antigos que não reconhecem a linguagem.

P r o g r a m a ç ã o d e C o m p u t a d o r e s 1 o S e m P r o f. A n d r é A m a r a n t e L u i z L A B 5 tag %2d while printf PE1:

Engenharia de Software

Introdução à Programação

Estruturas de Repetição

3. INTRODUÇÃO À LINGUAGEM C 3.1. CONCEITOS BÁSICOS. Lógica de Programação

Operador de atribuição

9 Comandos condicionais

Transcrição:

5374 : Engenharia Informática 6638 : Tecnologias e Sistemas de Informação 9099 : Bioengenharia 10135 : Ciências Biomédicas Cap. 4 Algoritmos e Estruturada Module Introduction

Algoritmos e Estruturada Objectivos:

Algoritmos e Estruturada Problemas e Algoritmos

Noção de Problema Exemplo: como fazer um bolo? Algoritmos e Estruturada Farinha de Trigo Ovos Açúcar Fermento Leite Manteiga receita

Algoritmos e Estruturada Noção de Algoritmo Farinha de Trigo Ovos Açúcar Fermento Leite Manteiga algoritmo

Desenho ou Concepção de Algoritmos para a Resolução de Problemas Algoritmos e Estruturada PROBLEMA ALGORITMO PROGRAMA

Algoritmos e Estruturada Passos na Concepção e Construção de Algoritmos

Algoritmos e Estruturada Método Cartesiano de Dividir-para-Conquistar

5375, 6619, 9099, 10135 Algoritmos e Estruturada Características Fundamentais dum Algoritmo Pode haver mais do que um algoritmo para resolver um problema. Por exemplo, para ir de casa até o trabalho, podemos escolher diversos meios de transportes em função do preço, conforto, rapidez, etc..

Algoritmos e Estruturada Representações de Algoritmos Não existe consenso entre os especialistas sobre qual é a melhor maneira de representar um algoritmo. Actualmente a maneira mais comum de representar algoritmos é através de uma pseudo-linguagem ou pseudo-código. Esta forma de representação tem a vantagem de o algoritmo seja escrito de uma forma que está próxima de uma linguagem de programação de computadores.

Algoritmos e Estruturada Codificação em Linguagem Natural (1) 1. Início 2. Ler X, Y 3. Calcular a média M de X e Y 4. Escrever M 5. Fim

Algoritmos e Estruturada Codificação em Fluxograma (2) Início Ler X Ler Y M=(X+Y)/2 Escreve M Fim

Algoritmos e Estruturada Codificação em Pseudo-código (3) 1. Início 2. Ler X, Y 3. Calcular a média M=(X+Y)/2 4. Escrever M 5. Fim

Algoritmos e Estruturada Codificação em C (4) #include <stdio.h> main(){ float X, Y, M; printf(introduza o valor de X:\n ); scanf("%f", &X); printf(introduza o valor de Y:\n ); scanf("%f", &Y); M=(X+Y)/2; printf( A media M = %f\n,m); }

Algoritmos e Estruturada Visual com Fluxogramas início e fim de fluxograma teste e decisão entrada e saída de dados outras acções/instruções conector na mesma página conector para outra página inicialização teste e actualização

Estruturas Lógicas de (estruturas de controlo) Algoritmos e Estruturada Uma estrutura (de controlo) é a unidade básica da lógica de programação. Em meados da década de 60, alguns matemáticos provaram que qualquer programa podia ser construído através da combinação de 3 estruturas básicas: sequência, selecção e repetição. entrance entrance entrance exit exit exit SEQUÊNCIA SELECÇÃO REPETIÇÃO

Sequência Algoritmos e Estruturada { } entrance exit

Selecção de 2-vias Algoritmos e Estruturada if-else Uma estrutura de selecção é também designada por estrutura de decisão. Neste caso, o fluxo de processamento segue por 1 das 2 vias, dependendo do valor lógico (verdadeiro ou falso) da expressão avaliada no início da estrutura. false? true Se o fluxo de processamento só passa por 1 via, então só uma das acções é realizada ou processada. Em C, uma estrutura de selecção com 2 vias é a instrução if-else.

Algoritmos e Estruturada Exemplo em C: if-else #include <stdio.h> int main() { int x, y, M; printf( Introduza x e y: \n ); scanf("%d%d", &x, &y); if (x > y) M = x; else M = y; } printf("o valor maior = %d\n", M); return 0;

Selecção de 1-via Algoritmos e Estruturada if Neste caso, se a expressão lógica tiver resultado false, nenhuma acção é processada dentro da estrutura de selecção. Só é processada uma acção dentro da estrutura de selecção se a expressão lógica for true; daí, o nome de selecção com 1 via. false? true Em C, uma estrutura de selecção com 1 via é a instrução if.

Algoritmos e Estruturada Exemplo em C: if #include <stdio.h> int main() { int x, y, M; printf( Introduza x e y: \n ); scanf("%d%d", &x, &y); M = x; if (y > M) M = y; } printf("o valor maior = %d\n", M); return 0;

Selecção de n-vias Algoritmos e Estruturada switch Neste caso, a decisão não é feita com base numa expressão lógica porque há mais do que 2 resultados possíveis. Também só são processadas a acção ou as acções encontradas numa via. Em C, uma estrutura de selecção com n vias é a instrução switch com break. No entanto, se não usarmos o break, há a possibilidade de executar as acções de várias vias....

Algoritmos e Estruturada Exemplo em C: switch #include <stdio.h> int main() { int x, y, resultado; char operacao; printf( Introduza x operador y: \n ); scanf("%d %c %d", &x, &operacao, &y); switch (operacao) { case + : resultado = x + y; break; case - : resultado = x - y; break; case * : resultado = x * y; break; case / : resultado = x / y; } } printf("o resultado = %d\n", resultado); return 0;

Algoritmos e Estruturada Repetição com Teste à Cabeça Neste caso, também há a necessidade de tomar uma decisão com base no valor lógico duma expressão. No entanto, a mesma acção será executada repetidamente enquanto o resultado da expressão lógica se mantiver verdadeiro (true). O teste (da expressão lógica) precede a acção. Diz-se, por isso, que o teste é à cabeça. false? true O teste é importante porque funciona como uma condição de paragem (a false) dos ciclos or repetições. Em C, uma estrutura de repetição deste tipo é a instrução while.

Algoritmos e Estruturada Exemplo em C: while #include <stdio.h> int main() { int soma, n=1; soma = 0; // inicialização da variável soma while (n <= 100) // teste de paragem { soma = soma + n; // actualização da variável soma n = n + 1; // actualização da variável de controlo } } printf("o valor da soma = %d\n", soma); return 0;

Algoritmos e Estruturada Repetição com Teste à Cauda Esta estrutura de repetição é em tudo idêntica à anterior. A diferença é que o teste é feito após o processamento da acção O teste (da expressão lógica) sucede a acção. Diz-se, por isso, que o teste é à cauda. Em C, uma estrutura de repetição deste tipo é a instrução do-while.? true false

Algoritmos e Estruturada Exemplo em C: do-while #include <stdio.h> int main() { int soma, n=1; soma = 0; // inicialização da variável soma do { soma = soma + n; // actualização da variável soma n = n + 1; // actualização da variável de controlo } while (n <= 100); // teste de paragem } printf("o valor da soma = %d\n", soma); return 0;

Repetição com Nº Pré-definido de Ciclos Algoritmos e Estruturada Esta estrutura de repetição é em tudo idêntica às anteriores. O teste é feito à cabeça. A diferença é que à partida se especifica o número de ciclos (ou iterações) que serão efectuados, i.e. o número de vezes que a acção será processada. Em C, uma estrutura de repetição deste tipo é a instrução for. false? true

Algoritmos e Estruturada Exemplo em C: for inicialização teste de paragem actualização #include <stdio.h> int main() { int soma, n=1; soma = 0; for (n=1; n<=100; n++) soma = soma + n; // inicialização da variável soma // actualização da variável soma } printf("o valor da soma = %d\n", soma); return 0;

Algoritmos e Estruturada Estruturada

Algoritmos e Estruturada Sumário: FIM