Linguagem de Programação I. Aula 04 Estruturas de Controle



Documentos relacionados
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia de Computação CECOMP

Programação I. Departamento de Engenharia Rural Centro de Ciências Agrárias

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

ALGORITMOS E PROGRAMAÇÃO. Andreza Leite Andreza.leite@univasf.edu.br

Técnicas de Programação I

Estruturas de Repetição Parte II PARA-ATÉ

Linguagem de Programação I. Aula 03 Estruturas de Controle

Convertendo Algoritmos para a Linguagem C

Sumário Algoritmos e Estrutura de Dados Repetição

Projeto em Grupo: Parte 2

7. Estrutura de Decisão

IFTO LÓGICA DE PROGRAMAÇÃO AULA 05

Introdução a Algoritmos Parte 04

Tutorial do Interpretador de Linguagem Algorítmica (ILA)

Algoritmo e Programação

ALGORITMOS E FLUXOGRAMAS

TUTORIAL AMBIENTE WEB PORTUGOL

Informática de Gestão 1º ano / 1º semestre Ano letivo: 2014/2015. Visual Basic VBA

5 - Vetores e Matrizes Linguagem C CAPÍTULO 5 VETORES E MATRIZES

Algoritmos com VisuAlg

Programação para web JavaScript

Programação de Computadores I Pseudocódigo PROFESSORA CINTIA CAETANO

Exercícios de Java Aula 19

Universidade Federal de Rondônia Técnicas de Desenvolvimento de Programas Lista 4

Comandos de repetição while

Introdução à Programação. Armazenamento de Grande Quantidade de Informação Usando Vetores

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

9.1.2 Laços Controlados por Entrada: Contador

Introdução à Engenharia ENG1000

Computação II Orientação a Objetos

9 Comandos condicionais

Estruturas de Controle de Fluxo

CURSO BÁSICO DE PROGRAMAÇÃO AULA 9. Revisão Aula Anterior Estruturas de Decisão (If e Switch)

INTRODUÇÃO À LINGUAGEM C++

Conversão de Tipos e Arrays

Capítulo 8. CICLOS. Tabela 8.1 Programa8a.f90.

Capítulo 2. VARIÁVEIS DO TIPO INTEIRO

Introdução à Lógica de Programação

Bem vindo Joe Ramone!

VisuALG Estruturas de Repetição. Professores: Vilson Heck Junior Felipe Schneider Costa

Programando em C++ Histórico da Linguagem C

insfcanceof new public switch transient while byte continue extends for int null

Estrutura de Dados Básica

Prof. Vania Gimenez.Notas de aula Lógica de programação- Este material não substitui os livros indicados no site no link bibliografia.

Programação científica C++

Variáveis e Comandos de Atribuição

Exercícios de Fixação Pseudocódigo e Estruturas Básicas de Controle

Sistemas de Apoio à Decisão

Trabalho Computacional 2. Aplicativo para Gestão Financeira. Grupos: Os trabalhos devem ser feitos individualmente ou em duplas.

AULA 1 AULA 2. Estudo dirigido para as três primeiras AULAS de LPI Professora ANITA MACIEL 1º ESTUDO DIRIGIDO

Filas: conceitos e implementações

A linguagem algorítmica utiliza o português para a definição dos comandos e tem as seguintes característica:

Algoritmo Iterativo. Dilema do Martelo x Edifício. O Martelo. O Edifício 01/06/2014. Dilema das ações x declarações

Definição. de solução de um problema passo-a-passo. Representa a lógica l. passo.

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:

UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO CENTRO UNIVERSITÁRIO NORTE DO ESPÍRITO SANTO

2ª Lista de Exercícios

LINGUAGEM C. Estrutura básica de um programa

Conceito de Algoritmos e Suas Características

ALGORITMO I VARIÁVEIS INDEXADAS

Testando e Comparando Valores

Aula 11 Introdução ao Pseudocódigo. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

Programação Funcional. Aula 5. Funções Recursivas. José Romildo Malaquias. Departamento de Computação Universidade Federal de Ouro Preto 2011.

Sistemas Operacionais e Introdução à Programação. Vetores e matrizes


Estruturas II UFOP 1/1

Unión Europea FEDER. Invertimos en su futuro

ALGORITMOS cont. Universidade Federal do Rio Grande do Norte Centro de Tecnologia Departamento de Computação e Automação

Programação Básica em Arduino Aula 2

Algoritmo. Linguagem natural: o Ambígua o Imprecisa o Incompleta. Pseudocódigo: o Portugol (livro texto) o Visualg (linguagem) Fluxograma

1. Fazer um programa em C que pergunta um valor em metros e imprime o correspondente em decímetros, centímetros e milímetros.

Exercícios de Revisão Java Básico

LINGUAGEM DE PROGRAMAÇÃO

Neste artigo estudaremos os conceitos relacionados às matrizes unidimensionais (vetores) e multidimensionais.

Planificação. Apreender conceitos sobre a lógica de programação. Aplicar instruções e sequências lógicas na resolução de problemas

Linguagens de Programação

LINEAR EQUIPAMENTOS RUA SÃO JORGE, TELEFONE : SÃO CAETANO DO SUL - SP - CEP:

Descrição da aplicação

Linguagem e Técnicas de Programação I Tipos de dados, variáveis e constantes. Prof. MSc. Hugo Souza Material desenvolvido por: Profa.

Algoritmos e Programação Parte Teórica

A4 Projeto Integrador e Lista de Jogos

ALGORITMOS. Supervisão: Prof. Dr.º Denivaldo Lopes

LÓGICA DE PROGRAMAÇÃO. Vitor Valerio de Souza Campos

Aluísio Eustáquio da Silva

Aula Teórica 16: Estruturas de Dados Heterogêneas

10/02/2015. Introdução. Podemos classificar os tipos de dados a serem processados em dados e instruções Dados: Algoritmos e Lógica de Programação

Algoritmos: Estruturas de Repetição. Prof. Carlos Lopes

Estruturas de Dados. Alguns dados não costumam ser tão simples assim... Podem ser compostos por vários dados distintos

14.1 Vetor - Problemas

Capítulo 12. SUB-ROTINAS

Lógica de Programação

Trabalho de laboratório Avaliação semestral Exame final MÉDIA PONDERADA CONCEITO

Questões dadas em Sala de Aula (para cada turma), nas aulas de Teoria:

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

OPERADORES E ESTRUTURAS DE CONTROLE

Formador: Carlos Maia

Javascript 101. Parte 2

Transcrição:

Linguagem de Programação I Aula 04 Estruturas de Controle

Da Aula Anterior Portugol: aspectos básicos Estruturas de condicionais Estrutura condicional Estrutura de escolha múltipla Estruturas de repetição controladas por contador

Nesta Aula Estruturas de repetição controladas por sentinelas Arrays: Vetores e Matrizes Gerando números aleatório

Exemplo Voltemos ao exercício 7 da primeira lista de exercícios e formulemos ele de forma mais abrangente: 7. Dada a nota das equipes que apresentaram seminários em sala de aula determinar qual a menor nota de uma equipe no seminário.

A Solução para Três Equipes inicio variavel real nota, menornota escrever "Qual a primeira nota" ler menornota escrever "\n Qual a segunda nota" ler nota se(nota < menornota) então menornota <- nota fimse escrever "\n Qual a terceira nota" ler nota se(nota < menornota) então menornota <- nota fimse escrever "A menor Nota e: ", menornota fim

Estruturas de Repetição Existem duas formas de se implementar a solução deste problema: Utilizando uma estrutura de repetição controlada por contador Utilizando uma estrutura de repetição controlada por sentinela.

Repetição Controlada por Sentinela também chamada de repetição indefinida, sentinela ou flag: valor sinalizador utilizado para indicar o final de um processo (e. g. entrada de dados), o valor do sentinela deve ser escolhido fora do domínio dos dados de entrada.

Exemplos Implemente uma calculadora de áreas e perímetros de figuras geométricas. O programa deve dar a opção do usuário escolher qual figura quer utilizar no cálculo. No final de cada cálculo o programa tem que retornar para o início permitindo que o usuário escolha entre outra figura ou sair da calculadora.

Menu de Opções... repete escrever "Calculadora Geométrica \n" escrever "1 Circunferência \n" escrever "2 Retângulo \n" escrever "3 Quadrado \n" escrever "4 Sair\n" escrever "Qual a opção desejada: " ler op escolhe op caso 1:... caso 4: Escrever "Ate a próxima\n" defeito: escrever "opção invalida!\n" fimescolhe ate op = 4...

Exercício 7... escrever "Entre com a nota da equipe 1:" ler menornota maiornota <- menornota media <- menornota cont <- 1 enquanto resposta =/= "s" e resposta =/="n" faz escrever "Tem outra equipe?:(s/n)" ler resposta fimenquanto enquanto resposta = "s" faz cont <- cont + 1... escrever "Tem outra equipe?:(s/n)" ler resposta enquanto resposta =/= "s" e resposta =/="n" faz escrever "Tem outra equipe?:(s/n)" ler resposta fimenquanto Fimenquanto Media <- media / cont...

Exercício 7 escrever "Entre com a nota da equipe 1:" ler nota menornota <- nota maiornota <- menornota media <- menornota cont <- 1 enquanto (nota > 0) faz cont <- cont + 1 escrever "Entre com a nota da equipe ", cont, " (0 para parar):" ler nota se nota > 0 então... fimse fimenquanto media <- media / (cont-1)

Exercício 7 Tente implementar os exemplos anteriores utilizando as estruturas para e repete. Qual das estruturas utilizadas você achou mais apropriada para implementar os exemplos analisados em sala de aula?

Mais Sobre Portugol Até agora foram utilizadas estruturas simples de armazenamento de dados. Entretanto, uma das vantagens das pseudo-linguagens é permitir trabalha com representação de estruturas de dados mais complexas. Analisaremos hoje como utilizar Arrays.

Arays Estruturas homogêneas de dados (Arrays) define um conjunto de dados todos do mesmo tipo que podem ser acedidos através de um índice. regras: 1. Se a declaração omitir o termo <variável/constante> o array é variável 2. A definição do nome obedece ás mesmas regras das variáveis 3. A dimensão tem de ser um valor inteiro ou uma expressão com resultado inteiro 4. As dimensões estão contidas dentro de parênteses rectos 5. São permitidas tantas dimensões quantas as desejadas 6. Se o valor de inicialização for omitido todas o conjunto é inicializado com os valores por defeito 7. A inicialização é feita com os dados compreendidos entre chaves e separados por virgulas 8. Se o número de valores for insuficiente os últimos elementos são inicializado com os valores por defeito

Arrays Sintaxes <variavel/constante> <tipo dados> nome[dimensão] <variavel/constante> <tipo dados> nome[dim1][dim2]... [dimn] <tipo dados> nome[dimensão] <tipo dados> nome[dimensão] <- {valor_1, valor_2,..., valor_n} Exemplo constante texto estacoes[4]<- {"inverno","outono","primavera","verão" } variavel inteiro notas[3] <- {10,20} real salarios[12] logico bits[8]

Exemplo Um professor deseja implementar a avaliação ponderada na sua disciplina. Ele quer as notas de todos os alunos pela melhor nota e multiplicar o resultado por 10 para ter a nota ponderada. Implemente um aplicativo que recebe a nota dos alunos da turma e retorna a nota ponderada.

Exemplo inicio variável real nota[30] variável inteiro cont, quantalunos variavel real maiornota escrever "Quantos alunos tem a turma?" ler quantalunos maiornota <- 0 para cont de 0 ate quantalunos-1 escrever "Qual a nota do aluno ", cont+1, ": " ler nota[cont] se nota[cont] > maiornota então maiornota <- nota[cont] fimse proximo para cont de 0 ate quantalunos-1 nota[cont] <- (nota[cont]/maiornota)*10 escrever "A nota do aluno ", cont+1, " = ", nota[cont], "\n" proximo fim

Exemplo Voltemos ao exercício 7 da primeira lista de exercícios e formulemos ele de forma diferente: 7. Dada a nota das equipes que apresentaram seminários em sala de aula determinar qual as equipes que tiveram a menor nota no seminário.

Gerando Números Aleatórios A pseudo-linguagem Portugal que utilizamos neste curso permite gerar números aleatórios utilizando a função: Sintaxes real aleatorio() Descrição Retorna um número real entre 0 e 1 Exemplo inicio inteiro numero, contador escrever "jogo de Megasena :" para contador de 1 ate 6 numero <- aleatorio ( ) * 60 escrever numero, "\t" proximo fim

Gerando Números Aleatórios Como gerar número aleatórios em um determinado intervalo? Num <- Min + (Aleatorios () * (Max-Min)) Gerando temperaturas entre 22 e 35 graus Temp <- 22 + (Aleatorio () * (35-24))