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



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

Exercícios de Fixação Conteúdo das aulas 03 a 06

CURSO BÁSICO DE PROGRAMAÇÃO AULA 7

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

Introdução a Algoritmos Parte 04

Exercícios de estrutura de Repetição

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

Exercícios de Fixação Introdução ao FORTRAN

Lista de Exercícios. Vetores

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:

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

Python Condicionais e Loops. Introdução à Programação SI1

EXERCÍCIOS. 2. Faça um algoritmo que receba dois números e ao final mostre a soma, subtração, multiplicação e a divisão dos números lidos.

Estrutura de Repetição Simples

Resolução de problemas e desenvolvimento de algoritmos

3. Tipos de Dados, Constantes e Variáveis.

Lista de Exercícios 03b Algoritmos Repetição

2ª Lista de Exercícios

Introdução à Lógica de Programação (cont.)

Sumário. INF01040 Introdução à Programação. Elaboração de um Programa. Regras para construção de um algoritmo

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

1. Usando Linguagem Natural, descreva o algoritmo que resolve o seguinte problema:

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

Estruturas de Repetição

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

CURSO BÁSICO DE PROGRAMAÇÃO AULA 9. Introdução a linguagem C Estruturas de decisão

BC0501 Linguagens de Programação

Programas C com Repetição

Lista de Exercícios 03b Repetição. 63) Escreva um programa que receba números do usuário enquanto eles forem positivos e

CADERNO DE EXERCÍCIOS ALGORITMOS

7. Estrutura de Decisão

PROGRAMAÇÃO ESTRUTURADA. CC 2º Período

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

Algoritmos com VisuAlg

Algoritmos e Programação. Prof. Tarcio Carvalho

Lista de Exercícios 1 Algoritmos, Pseudocódigo e Fluxograma

13 ÁLGEBRA Uma balança para introduzir os conceitos de Equação do 1ºgrau

Programação de Computadores I Fluxogramas PROFESSORA CINTIA CAETANO

Programação de Computadores. Professor Ilaim Costa Junior

1ª Lista de exercícios

Compilado pela Prof a Sílvia Moraes Organizado por Stewart Unger

Faculdade de Computação - UFMS

Grupo C Vetores e Matrizes

3ª Lista de exercícios

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

2aula TEORIA DE ERROS I: ALGARISMOS SIGNIFICATIVOS, ARREDONDAMENTOS E INCERTEZAS. 2.1 Algarismos Corretos e Avaliados

1. Estrutura de seleção. Seleção: algumas etapas (passos) do algoritmo são executadas dependendo do resultado de uma condição

Fluxograma Pseudocódigo Estruturas de decisão. Professor Leandro Augusto Frata Fernandes

A4 Projeto Integrador e Lista de Jogos

Lista de Exercícios de Estrutura Condicional

I Lista de Exercícios

ICC Introdução para JavaScript

Cálculo Numérico Aula 1: Computação numérica. Tipos de Erros. Aritmética de ponto flutuante

José Romildo Malaquias

Prof. Paulo Henrique Raciocínio Lógico

Material Teórico - Módulo de Divisibilidade. MDC e MMC - Parte 1. Sexto Ano. Prof. Angelo Papa Neto

Comandos de repetição while

Linguagem algorítmica: Portugol

Aula 3 Desvio Condicional

Apostila de Fundamentos de Programação I. Prof.: André Luiz Montevecchi

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

AULA 12 FUNÇÕES Disciplina: Algoritmos e POO Professora: Alba Lopes alba.lopes@ifrn.edu.br

QUALITATIVA VARIÁVEL QUANTITATIVA

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

Algoritmos e Estruturas de Dados I 01/2013. Estruturas Condicionais e de Repetição (parte 2) Pedro O.S. Vaz de Melo

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

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

9.1.2 Laços Controlados por Entrada: Contador

Por que o quadrado de terminados em 5 e ta o fa cil? Ex.: 15²=225, 75²=5625,...

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

Orientação a Objetos

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO UFRPE

ALGORITMOS PARTE 01. Fabricio de Sousa Pinto

REVISÃO E AVALIAÇÃO DA MATEMÁTICA

Introdução ao FORTRAN (Parte I)

Lista de Exercícios 03 Algoritmos e Scilab Estrutura de Repetição 1) Escreva um algoritmo em Scilab que imprima todos os números inteiros de 0 a 50.

Lista de Exercícios 03 Algoritmos e Scilab Estrutura de Repetição 1) Escreva um algoritmo em Scilab que imprima todos os números inteiros de 0 a 50.

Aula 04 Operadores e Entrada de Dados. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

Manual Verba Conceito de verba. Funcionamento Básico

20 Caracteres - Tipo char

Algoritmo e Programação

EXERCÍCIOS e Respostas de Lógica de Programação - ALGORITMOS -

Computadores XXI: Busca e execução Final

Projeto e Desenvolvimento de Algoritmos

Lógica de Programação

Exercícios de Java Aula 19

ALGORITMOS E FLUXOGRAMAS

ERROS MAIS COMUNS COMETIDOS EM PROGRAMAS E ALGORITMOS

MANUAL DO CIDADÃO. Para acessar a página do E-SIC clique no link do e-sic na página inicial do site (figura 1):

Aula Teórica 12. Material Didático Proposto

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

2ª Lista de exercícios

ESTRUTURA CONDICIONAL

Universidade Federal de Minas Gerais Instituto de Ciências Agrárias

Algoritmos e Programação de Computadores

O Problema do Troco Principio da Casa dos Pombos. > Princípios de Contagem e Enumeração Computacional 0/48

Contagem I. Figura 1: Abrindo uma Porta.

(a 1 + a 100 ) + (a 2 + a 99 ) + (a 3 + a 98 ) (a 50 + a 51 ).

Cotagem de dimensões básicas

OBI2007 Caderno de Tarefas

Transcrição:

Disciplina: TCC-00.7 Prog. de Computadores III Professor: Leandro Augusto Frata Fernandes Turma: A- Data: / / Exercícios de Fixação Pseudocódigo e Estruturas Básicas de Controle. Construa um algoritmo (pseudocódigo e fluxograma) que: a. Leia o nome de três pessoas (dado do tipo caractere). b. Escreva os nomes na ordem inversa da que foram informados. caractere: Nome, Nome, Nome Início Ler Nome Ler Nome Ler Nome Nome Nome Mostrar Nome Mostrar Nome Mostrar Nome Nome Nome Nome Nome Fim

. Os funcionários da empresa Dois Irmãos receberão um reajuste de salário. Construa um algoritmo (pseudocódigo e fluxograma) que: a. Leia o nome de um funcionário (dado do tipo caractere). b. Leia o valor atual de seu salário (dado do tipo real). c. Leia o percentual de reajuste (assuma que as entradas serão valores reais entre 0 e 00). d. Calcule o novo salário. e. Exiba o nome do funcionário e o novo valor do salário. caractere: Nome real: SalarioAtual, Reajuste, NovoSalario Ler Nome Ler SalarioAtual Ler Reajuste NovoSalario SalarioAtual + (SalarioAtual / 00) * Reajuste Mostrar Nome Mostrar NovoSalario Início Nome SalarioAtual Reajuste NovoSalario SalarioAtual + (SalarioAtual / 00) * Reajuste Nome NovoSalario Fim

. Construa um algoritmo (pseudocódigo e fluxograma) que: a. Leia um número inteiro. b. Informe se o número lido é negativo ou positivo. Considere o valor zero como sendo positivo. Teste o algoritmo utilizando o Método Chinês com as entradas, - e 0. Mantenha anotado o valor de cada variável durante os passos da execução. inteiro: Numero Ler Numero se Numero >= 0 então Mostrar O número informado é positivo Mostrar O número informado é negativo Início Numero Numero >= 0 Verdadeiro O número informado é positivo Falso O número informado é negativo Fim O teste de mesa neste caso é trivial. A única variável (Numero) assume o valor lido e o mantém até o da execução. O importante é acompanhar o desenvolver do algoritmo para observar que com as entradas e 0 as linhas,, e são executadas, enquanto que com a entrada - as linhas,,, e são executadas.

. Incremente o algoritmo (pseudocódigo e fluxograma) do exercício anterior modificando a saída. Neste caso, informe se o número lido é positivo, negativo ou igual a zero. Teste o algoritmo utilizando o Método Chinês com as entradas -, 0 e. Mantenha anotado o valor de cada variável durante os passos da execução. inteiro: Numero Ler Numero 7 8 9 0 se Numero > 0 então Mostrar O número informado é positivo se Numero < 0 então Mostrar O número informado é negativo Mostrar O número informado é igual a zero Início Numero Numero > 0 Verdadeiro O número informado é positivo Falso Numero < 0 Verdadeiro O número informado é negativo Falso O número informado é igual a zero Fim

O teste de mesa neste caso é trivial. A única variável (Numero) assume o valor lido e o mantém até o da execução. O importante é acompanhar o desenvolver do algoritmo para observar que com a entrada - as linhas,,,,, 9 e 0 são executadas. Com a entrada 0 as linhas,,,, 7, 8, 9 e 0 são executadas. Finalmente, com a entrada as linhas,, e 0 são executadas.. Construa um algoritmo (pseudocódigo e fluxograma) que determine e mostre o maior número entre vários fornecidos pelo usuário. A condição de parada é a entrada de um valor 0 (zero), ou seja, o algoritmo deve ficar escolhendo o maior até que a entrada seja igual a 0 (zero). Utilize a estrutura ENQUANTO... REPETIR... no algoritmo. Assuma que valores negativos nunca serão informados pelo usuário. 7 8 9 inteiro: NumAtual, MaiorNum MaiorNum 0 NumAtual - enquanto NumAtual <> 0 repetir Ler NumAtual se NumAtual > MaiorNum então MaiorNum NumAtual enquanto Mostrar MaiorNum A variável MaiorNum precisa ser inicializada com um valor menor que qualquer valor que possa ser informado pelo usuário. Neste caso, foi inicializada com 0 (zero) na Linha do pseudocódigo. A variável NumAtual precisa ser inicializada com qualquer valor diferente de 0 (zero), para que haja a possibilidade de entrar do laço ENQUANTO... REPETIR... Neste caso foi escolhido (veja a Linha do pseoudocódigo). Note que o primeiro valor atribuído a NumAtual não afeta a escolha do maior número dentre os informados pelo usuário, pois o valor de inicialização é sobrescrito por um valor informado pelo usuário na Linha do pseoudocódigo, antes de ser feita a comparação com o maior número armazenado até o momento (Linha ). Outras soluções (algoritmos) equivalentes podem ser construídas. Teste sua solução fazendo o teste de mesa.

Início Fim MaiorNum 0 NumAtual NumAtual <> 0 Falso MaiorNum Verdadeiro NumAtual Falso NumAtual > MaiorNum Verdadeiro MaiorNum NumAtual

7. Construa um algoritmo (pseudocódigo) que leia 00 valores inteiros e positivos e: a. Encontre e mostre o maior valor. b. Encontre e mostre o menor valor. c. Calcule e mostre a média dos números lidos. Utilize a estrutura ENQUANTO... REPETIR... no algoritmo. inteiro: Cont, NumAtual, MaiorNum, MenorNum, Soma, Media 7 8 9 0 MaiorNum - MenorNum + Soma 0 Cont 0 enquanto Cont < 00 repetir Ler NumAtual se NumAtual > MaiorNum então MaiorNum NumAtual se NumAtual < MenorNum então MenorNum NumAtual Soma Soma + NumAtual Cont Cont + enquanto Assim como no exercício anterior, a variável MaiorNum precisa ser inicializada com um valor menor que qualquer valor que possa ser informado pelo usuário, para que este valor inicial possa ser vencido por qualquer outro número informado pelo usuário. A variável MenorNum, por sua vez, precisa receber um valor maior que qualquer valor que possa ser informado pelo usuário, para que o valor inicial também possa ser vencido. Na solução apresentada optei por usar e + para inicializar MaiorNum e MenorNum, respectivamente (veja as Linhas e do pseudocódigo). Outras soluções (algoritmos) equivalentes podem ser construídas. Teste sua solução fazendo o teste de mesa. 7 8 9 Media Soma / Cont Mostrar MaiorNum Mostrar MenorNum Mostrar Media

8 7. Reescreva o algoritmo desenvolvido no Exercício utilizando a estrutura de repetição REPETIR... ENQUANTO... no lugar de ENQUANTO... REPETIR... inteiro: NumAtual, MaiorNum MaiorNum 0 7 repetir Ler NumAtual se NumAtual > MaiorNum então MaiorNum NumAtual enquanto NumAtual <> 0 8 Mostrar MaiorNum Início MaiorNum 0 NumAtual NumAtual > MaiorNum Falso Verdadeiro MaiorNum NumAtual Verdadeiro NumAtual <> 0 Falso MaiorNum Fim

9 8. Utilizando a estrutura PARA... ATÉ... REPETIR..., construa um algoritmo (pseudocódigo) que exiba os números ímpares entre 00 e 00. Dica: a função mod(x,y) retorna o resto da divisão de X por Y. Solução utilizando passo diferente de (um) inteiro: NumAtual para NumAtual 0 até 99 passo repetir Mostrar NumAtual para Solução utilizando passo igual a (um) inteiro: NumAtual para NumAtual 00 até 00 repetir se mod( NumAtual, ) <> 0 então Mostrar NumAtual para

0 9. Construa um algoritmo (pseudocódigo) que calcule a média de N números reais informados pelo usuário, onde o valor de N também é informado no da execução. Utilize a estrutura PARA... ATÉ... REPETIR... Antes do término da execução do algoritmo, mostre a média calculada. inteiro: i, N real: NumAtual, Soma, Media 7 8 9 0 repetir Ler N enquanto N <= 0 Soma 0 para i até N repetir Ler NumAtual Soma Soma + NumAtual para se N > 0 então Media Soma / N Media 0 Neste exercício é importante notar que não sabemos a priori a quantidade de valores que serão informados pelo usuário. Saberemos esta quantidade (N) apenas em tempo de execução do algoritmo. Por conta deste detalhe, as Linhas a do pseudocódigo garantem que a quantidade de números informados pelo usuário será sempre maior ou igual a 0 (zero). Afinal, informar uma quantidade negativa de número não faz sentido. Também, precisamos ser mais cuidados ao calcular a média. Precisamos testar na se a quantidade de valores é diferente de 0 (zero), a de evitar divisões por zero. Isso é feito na Linha 9 do pseudocódigo. Mostrar Media

0. Tendo como dados de entrada a altura e o sexo de uma pessoa, construa um algoritmo (pseudocódigo e fluxograma) que calcule seu peso ideal, utilizando as seguintes fórmulas: Para homens: (7,7 * altura) 8 Para mulheres: (, * altura),7 Ao perguntar o sexo, o algoritmo deverá garantir que as únicas entradas aceitas sejam M para homens e F para mulheres. Ou seja, caso um valor diferente de M ou F seja informado, o programa deverá requisitar ao usuário que informe o sexo novamente até a entrada ser válida. Dica: utilize a estrutura de repetição mais adequada dentre as três vistas em aula. caractere: Sexo real: Altura, Peso 7 8 9 0 Ler Altura repetir Ler Sexo enquanto Sexo <> M e Sexo <> F se Sexo = M então Peso (7.7 * Altura) 8 Peso (. * Altura).7 Mostrar Peso

Início Altura Verdadeiro Sexo Sexo <> M e Sexo <> F Falso Verdadeiro Sexo = M Peso (7.7 * Altura) 8 Falso Peso (. * Altura).7 Peso Fim

. Dado o pseudocódigo a seguir, responda: lógico: A, B, C Ler A Ler B Ler C se A então Mostrar Saída se B então se C então Mostrar Saída Mostrar Saída Mostrar Saída Mostrar Saída Mostrar Saída a. Se A = Verdadeiro, B = Verdadeiro, C = Falso, quais comandos Mostrar serão executadas? Mostrar Saída Mostrar Saída b. Se A = Falso, B = Verdadeiro, C = Falso, quais comandos Mostrar serão executados? Mostrar Saída Mostrar Saída Mostrar Saída Mostrar Saída c. Se A = Falso, B = Verdadeiro, C = Verdadeiro, quais comandos Mostrar serão executados? Mostrar Saída Mostrar Saída Mostrar Saída

d. Quais são os valores de A, B e C para que somente os comandos Mostrar Saída e Mostrar Saída sejam executados? A = Falso, B = Falso e C tanto faz, pois ele não chega a ser testado quando o valor armazenado por B é igual a Falso. e. Quais são os valores de A, B e C para que somente o comando Mostrar Saída seja executado? Para que o comando Mostrar Saída seja executado é preciso A = Falso, B = Verdadeiro e C = Verdadeiro. Entretanto, ele nunca será executado sozinho, pois nesse caso os comandos Mostrar Saída e Mostrar Saída também serão executados. Logo, não existe uma configuração de valores para A, B e C que faça o comando Mostrar Saída ser o único a ser executado.. Escreva um algoritmo (pseudocódigo) que leia três valores inteiros e mostre-os em ordem decrescente. Dica: utilize estruturas de decisão encadeadas. inteiro: V, V, V 7 8 9 0 7 Ler V Ler V Ler V se V > V então se V > V então se V > V então Mostrar V Mostrar V Mostrar V Mostrar V Mostrar V Mostrar V Mostrar V Mostrar V

8 9 0 7 8 9 0 Mostrar V se V > V então se V > V então Mostrar V Mostrar V Mostrar V Mostrar V Mostrar V Mostrar V Mostrar V Mostrar V Mostrar V

. Construa um algoritmo (pseudocódigo) que escreva uma contagem de 0 (dez) minutos, ou seja, mostre 0:00, e então 0:0, 0:0,..., 0:8, 0:9, :00, :0, :0,..., até 0:00. Dica: utilize a estrutura de repetição mais adequada dentre as três vistas em aula. inteiro: Min, Seg para Min 0 até 9 repetir para Seg 0 até 9 repetir Mostrar Min, :, Seg para para Mostrar 0:00. Construa três algoritmos (pseudocódigos) que imprimam a tabuada do (cinco). Em cada um deles utilize uma das estruturas de repetição vistas em aula. Dica: verifique se o resultado está correto fazendo um teste de mesa para cada uma das soluções apresentadas. Solução com ENQUANTO... REPETIR... inteiro: Num, Resultado Num 0 enquanto Num <= 0 repetir Resultado * Num Mostrar *, Num, =, Resultado Num Num + enquanto

7 Solução com REPETIR... ENQUANTO... inteiro: Num, Resultado Num 0 repetir Resultado * Num Mostrar *, Num, =, Resultado Num Num + enquanto Num <= 0

8 Solução com PARA... ATÉ... REPETIR... inteiro: Num, Resultado para Num 0 até 0 repetir Resultado * Num Mostrar *, Num, =, Resultado enquanto Obs.: Outras soluções (algoritmos) equivalentes podem ser construídas. O teste de mesa ajudará você a verificar se o algoritmo que você escreveu está correto. Em especial, ajudará no caso das duas primeiras estruturas de repetição. Com o teste de mesa você verifica se é multiplicado apenas pelos números inteiros de 0 a 0.