Algoritmos e Programação. Prof. Tarcio Carvalho



Documentos relacionados
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.

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

1. Faça um algoritmo que receba dois números e exiba o resultado da sua soma. subtração, multiplicação e a divisão dos números lidos.

Resolução de problemas e desenvolvimento de algoritmos

CURSO BÁSICO DE PROGRAMAÇÃO AULA 7

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

2ª Lista de exercícios

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

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

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

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

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

Introdução a Algoritmos Parte 04

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

I Lista de Exercícios

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

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

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

ICC Introdução para JavaScript

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

Lista de Exercícios de Estrutura Sequencial Resolvida

Aula Bibliografia - Definições - Operadores - Criação de um algoritmo - Exercícios. Algoritmo e Programação. Prof. Fábio Nelson.

Algoritmos Estruturas Seqüenciais. José Gustavo de Souza Paiva

Aula 4 Pseudocódigo Tipos de Dados, Expressões e Variáveis

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

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

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

Linguagem algorítmica: Portugol

Programação para Computação

Algoritmos e Programação Conceitos e Estruturas básicas (Variáveis, constantes, tipos de dados)

Lista de Exercícios. Vetores

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO UFRPE

PROGRAMAÇÃO DE COMPUTADORES (Teoria)

1ª Lista de exercícios

Lista de Exercícios de Estrutura Condicional

Conceitos Importantes:

ALGORITMOS PARTE 01. Fabricio de Sousa Pinto

Introdução à Programação e Algoritmos. Aécio Costa

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

Algoritmos e Programação de Computadores

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

Algoritmos com VisuAlg

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

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

CADERNO DE EXERCÍCIOS ALGORITMOS

ESTRUTURA DE UM PROGRAMA EM C++ Estrutura de um Programa em C++

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

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

Lógica de Programação

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

Algoritmos e Linguagens de Programação

7. Estrutura de Decisão

Estruturas de Controle A Tomada de Decisões

1.1. Organização de um Sistema Computacional

Algoritmo e Programação

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

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

ESTRUTURA CONDICIONAL

Programação de Computadores I Fluxogramas PROFESSORA CINTIA CAETANO

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

Lista de exercícios 01 de Computação Aplicada

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

Aula 3 Desvio Condicional

1ª LISTA DE EXERCÍCIOS - Extra

Algoritmos Computacionais ( Programas )

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

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

Universidade Federal de Uberlândia Faculdade de Computação. Conceitos básicos de algoritmos

Lógica. Everson Santos Araujo

Aluísio Eustáquio da Silva

Aula 02: C# - Estruturas de Decisão

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS

2. ALGORITMOS. Unesp Campus de Guaratinguetá. Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro

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

INF 1005 Programação I

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

1. Sistemas de numeração

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES

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

OPERADORES E ESTRUTURAS DE CONTROLE

Faculdade de Computação - UFMS

Algoritmos não se aprendem: Copiando algoritmos Estudando algoritmos Algoritmos só se aprendem: Construindo algoritmos Testando algoritmos

Introdução aos cálculos de datas

Estruturas de Repetição

Lição 1 - Criação de campos calculados em consultas

Lista de Exercícios 3 Estruturas de Controle Profa Susana M Iglesias

Programação: Estruturas de seleção

Regras Métodos Identificadores Variáveis Constantes Tipos de dados Comandos de atribuição Operadores aritméticos, relacionais e lógicos

Introdução à Computação

Roteiro do Programa e Entrada/Saída

ALGORITMOS E PROGRAMAÇÃO Estruturas de repetição. Andreza Leite andreza.leite@univasf.edu.br

O número é algo abstrato que representa a idéia de quantidade, expressos através de símbolos previamente acordados.

José Romildo Malaquias

Lista de Exercícios 02 Algoritmos Estrutura Condicional

OBS.: Usem as funções rand() e srand(). Qualquer duvida,

Processamento da Informação Teoria. Algoritmos e Tipos de dados

BC0501 Linguagens de Programação

Exercícios de Java Aula 19

ALGORITMOS E FLUXOGRAMAS

ALGORITMOS E ESTRUTURAS DE DADOS I

Transcrição:

Algoritmos e Programação Prof. Tarcio Carvalho

Conceito de Lógica A utilização da lógica na vida do indivíduo é constante, visto que é ela quem possibilita a ordenação do pensamento humano. Exemplo: A gaveta está fechada; A caneta está dentro da gaveta; Precisamos primeiro abrir a gaveta depois pegar a caneta. Algoritmo Passos para a solução de um problema. Algoritmo e uma seqüência de passos que visam atingir um objetivo bem definido. FORBELLONE, 1993 FORBELLONE, 2005 Criando um algoritmo para resolver um problema do dia-a-dia: Problema: Trocar lâmpada queimada. Pegue uma escada; Posicione-a embaixo da lâmpada; Busque uma lâmpada nova; Suba na escada; Retire a lâmpada velha; Coloque a lâmpada nova. Um algoritmo deve ser estruturado de forma que contemple todas as situações possíveis durante o processo, utilizando o raciocínio lógico para criar uma seqüência de passos para resolver

um problema. Um algoritmo tem por objetivo representar mais fielmente o raciocínio envolvido na Lógica de Programação, obedecendo os seguintes princípios: Coerência. Racionalidade. Por que fazer de uma forma e não de outra? Arte do bem pensar. Ordem no pensamento. 1. Formas de representação de um algoritmo 1.1. Descritiva Nessa forma de representação, analisamos o enunciado do problema e, simplesmente, descrevemos a seqüência de passos em nossa língua nativa (em nosso caso, o português). Exemplo: Media Inicio Fim leia a primeira nota leia a segunda nota soma primeira nota com a segunda divide a soma das notas por 2 mostrar a media

1.2. Fluxograma Nessa forma de representação, escrevemos o algoritmo utilizando símbolos gráficos predefinidos, enfatizando os passos individuais e suas interconexões. Início ou fim do algoritmo Indica o sentido do fluxo de execução do algoritmo. Conecta os objetos gráficos Representa a entrada de dados Indica cálculos e atribuições de valores (processamento) Indica desvios ou tomadas de decisões (Por exemplo: SE isso, ENTÃO aquilo) Representa a saída de dados, no Portugol IDE Também representa a saída de dados Exemplo do fluxograma de um algoritmo recebe valores e processa a média dos mesmo:

1.3. Pseudocódigo. Pseudocódigo ou portugol, podemos nos referir a essa forma de representação de outras maneiras, como: português estruturado, linguagem estruturada ou pseudolinguagem. O pseudocódigo obedece a regras predefinidas de estrutura para descrever um algoritmo. O pseudocódigo é uma combinação das melhores características das duas formas de representação anteriores. Vantagem - utilização do pseudocódigo é que, mesmo sendo independente de qualquer linguagem de programação, sua estruturação facilita a transcrição do algoritmo criado para o código, pode definir quais os dados a ser utilizados e como eles vão estar estruturados, além de utilizar o português como base. Exemplo: inicio { real nota1, nota2, media escreva ("Digite a primeira nota: ") leia (nota1) escreva ("Digite a primeira nota: ") leia (nota2) media=(nota1+nota2)/2 escreva("a média é: ",media ) } } Fases de um Algoritmo Entradas: dados que alimentam o sistema, inseridos pelo usuário. Processamento: Cálculos e manipulação dos dados de entrada. Saída: resultado obtido do processamento dos dados. Teste de mesa: e uma execução das três fases, verificando o funcionamento na pratica das instruções executadas.

2. Tipos de dados 2.1. Tipo Inteiro Os números inteiros são de 32 bits com completo de dois constituidos dos números naturais positivos {1,2,3,...}, negativos {-1, -2, -3,...} e zero {0}. O tipo de dado inteiro pode ser representado nas notações decimal, hexadecimal e binária. Exemplo: 2.2. Tipo Cadeia Cadeia é uma sequência ordenada de caracteres (símbolos) escolhidos a partir de um conjunto prédeterminado. O tipo cadeia deve estar acompanhado de aspas duplas. Quando \n aprece em uma cadeia e gerada uma quebra de linha no texto

Exemplo: 2.3. Tipo Real Pode-se pensar em um número real como uma fração decimal possivelmente infinita, como por exemplo o número PI 3.1415926535 Os valores do tipo de dado real são números separados por ponto (.) como por exemplo 1.3333 Quando um valor do tipo real aparece em uma expressão aritmética que contém valores do tipo inteiro o resultado da expressão é um valor do tipo real Exemplo:

3. Operadores Aritméticos O conjunto de símbolos que representa as operações básicas da matemática. 3.1. Operadores relacionais Utilizamos os operadores relacionais para realizar comparações entre dois valores de mesmo tipo primitivo. 4. Tipos de dados e Variáveis 4.1. Variável Uma informação é classificada como variável quando tem a possibilidade de ser alterada em algum instante no decorrer do tempo. Expressões que podem conter ou armazenas valores. Exemplo: A cotação do dólar, o peso de uma pessoa, o índice da inflação.

4.2. Declaração de Variáveis Quando nos referimos à variável, do ponto de vista da programação de computadores, estamos tratando de uma região de memória (do computador) previamente identificada cuja finalidade é armazenar os dados ou informações de um programa por um determinado espaço de tempo. O computador armazena os dados nessas divisões, sendo que em cada divisão só é possível armazenar um dado e toda vez que o computador armazenar um dado em uma dessas divisões, o dado que antes estava armazenado é eliminado. O conteúdo pode ser alterado, mas somente um dado por vez pode ser armazenado naquela divisão. Uma variável é composta por dois elementos básicos: o tipo que a variável pode armazenar e seu identificador, nome dado à variável para possibilitar sua utilização. O local onde a variável é declarada define seu escopo. Exemplo:

4.3. Declaração de Vetor Vetor é uma das mais simples estruturas de dados. Os vetores mantêm uma série de elementos de dados do mesmo tipo de dado. Elementos individuais são acessados por sua posição no vetor. A posição é dada por um índice. O índice utiliza uma sequência de números inteiros começando por zero. Sua declaração é similar à declaração de variáveis, definindo primeiro o seu tipo, em seguida do seu nome e por fim a sua dimensão. É possível inicializar o vetor durante sua declaração, esta inicialização deve possuir a mesma quantidade de elementos especificadas na declaração. Exemplo:

5. Estruturas de Controle 5.1. Estrutura de seleção Permite a escolha de um grupo de ações (bloco) a ser executado quando determinadas condições, representadas por expressões lógicas ou relacionais, são ou não satisfeitas. 5.2. Se O comando se serve para desviar a execução do programa baseado em uma condição. Este comando possui uma expessão lógica que será avaliada. Caso esta expressão seja verdadeira uma lista específica de comandos será executada, caso seja falsa, uma lista alternativa de comandos será executada (se houver). Para definir a lista de comandos que serão executados caso a condição não seja atendida, deve-se usar a palavra reservada senao. Exemplo:

6. Estruturas de Repetição 6.1. Laço Enquanto (Pré-Testado) Nesta estrutura de repetição o programador deve definir uma condição que será verificada a cada iteração do loop B, caso essa condição seja verdadeira então é executado o bloco de código D e então a variável de controle deve ser alterada para evitar que o laço de repetição seja executado infinitamente.

Exemplo: 6.2. Laço Faça-Enquanto (Pós-Testado)

Nesta estrutura de repetição o programador executa um bloco de instruções D e posteriormente faz uma verificação em B caso a condição de teste seja verdadeira executa o bloco de instrução até que a condição em B seja falsa. Exemplo:

6.3. Laço Para (Com Variável de Controle) Nesta estrutura de repetição o programador deve inicialmente declarar uma variável de controle A que será "testada" conforme uma condição B caso essa condição seja verdadeira, o código interno dentro da estrutura será executado. Ao final a variável declarada em A será incrementada ou decrementada e então a condição em B será novamente "testada" até que seja falsa.

Exemplo:

7. Lista de exercícios 1. Faça um algoritmo que receba dois números e exiba o resultado da sua soma. 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. 3. Escrever um algoritmo para determinar o consumo médio de um automóvel sendo fornecida a distância total percorrida pelo automóvel e o total de combustível gasto. 4. Escrever um algoritmo que leia o nome de um vendedor, o seu salário fixo e o total de vendas efetuadas por ele no mês (em dinheiro). Sabendo que este vendedor ganha 15% de comissão sobre suas vendas efetuadas, informar o seu nome, o salário fixo e salário no final do mês. 5. Escrever um algoritmo que leia o nome de um aluno e as notas das três provas que ele obteve no semestre. No final informar o nome do aluno e a sua média (aritmética). 6. Ler dois valores para as variáveis A e B, e efetuar as trocas dos valores de forma que a variável A passe a possuir o valor da variável B e a variável B passe a possuir o valor da variável A. Apresentar os valores trocados. 7. Ler uma temperatura em graus Celsius e apresentá-la convertida em graus Fahrenheit. A fórmula de conversão é: F=(9*C+160) / 5, sendo F a temperatura em Fahrenheit e C a temperatura em Celsius. 8. Elaborar um algoritmo que efetue a apresentação do valor da conversão em real (R$) de um valor lido em dólar (US$). O algoritmo deverá solicitar o valor da cotação do dólar e também a quantidade de dólares disponíveis com o usuário. 9. Faça um algoritmo que receba um valor que foi depositado e exiba o valor com rendimento após um mês. Considere fixo o juro da poupança em 0,70% a. m. 10. A Loja Mamão com Açúcar está vendendo seus produtos em 5 (cinco) prestações sem juros. Faça um algoritmo que receba um valor de uma compra e mostre o valor das prestações. 11. Faça um algoritmo que receba o preço de custo de um produto e mostre o valor de venda. Sabe-se que o preço de custo receberá um acréscimo de acordo com um percentual informado pelo usuário. 12. O custo ao consumidor de um carro novo é a soma do custo de fábrica com a percentagem do distribuidor e dos impostos (aplicados, primeiro os impostos sobre o custo de fábrica, e depois a percentagem do distribuidor sobre o resultado). Supondo que a percentagem do distribuidor seja de 28% e os impostos 45%. Escrever um algoritmo que leia o custo de fábrica de um carro e informe o custo ao consumidor do mesmo.

13. Faça um algoritmo que receba um número e mostre uma mensagem caso este número seja maior que 10. 14. Escrever um algoritmo que leia dois valores inteiro distintos e informe qual é o maior. 15. Faça um algoritmo que receba um número e diga se este número está no intervalo entre 100 e 200. 16. Escrever um algoritmo que leia o nome e as três notas obtidas por um aluno durante o semestre. Calcular a sua média (aritmética), informar o nome e sua menção aprovado (media >= 7), Reprovado (media <= 5) e Recuperação (media entre 5.1 a 6.9). 17. Ler 80 números e ao final informar quantos número(s) est(á)ão no intervalo entre 10 (inclusive) e 150 (inclusive). 18. Faça um algoritmo que receba a idade de 75 pessoas e mostre mensagem informando maior de idade e menor de idade para cada pessoa. Considere a idade a partir de 18 anos como maior de idade. 19. Escrever um algoritmo que leia o nome e o sexo de 56 pessoas e informe o nome e se ela é homem ou mulher. No final informe total de homens e de mulheres. 20. A concessionária de veículos CARANGO VELHO está vendendo os seus veículos com desconto. Faça um algoritmo que calcule e exiba o valor do desconto e o valor a ser pago pelo cliente de vários carros. O desconto deverá ser calculado de acordo com o ano do veículo. Até 2000-12% e acima de 2000-7%. O sistema deverá perguntar se deseja continuar calculando desconto até que a resposta seja: (N) Não. Informar total de carros com ano até 2000 e total geral. 21. Escrever um algoritmo que leia os dados de N pessoas (nome, sexo, idade e saúde) e informe se está apta ou não para cumprir o serviço militar obrigatório. Informe os totais. 22. Faça um algoritmo que receba o preço de custo e o preço de venda de 40 produtos. Mostre como resultado se houve lucro, prejuízo ou empate para cada produto. Informe media de preço de custo e do preço de venda. 23. Faça um algoritmo que receba um número e mostre uma mensagem caso este número sege maior que 80, menor que 25 ou igual a 40. 24. Faça um algoritmo que receba N números e mostre positivo, negativo ou zero para cada número. 25. Faça um algoritmo que leia dois números e identifique se são iguais ou diferentes. Caso eles sejam iguais imprima uma mensagem dizendo que eles são iguais. Caso sejam diferentes, informe qual número é o maior, e uma mensagem que são diferentes.

26. Faça um algoritmo que leia um número de 1 a 5 e escreva por extenso. Caso o usuário digite um número que não esteja neste intervalo, exibir mensagem: número inválido. 27. A concessionária de veículos CARANGO está vendendo os seus veículos com desconto. Faça um algoritmo que calcule e exiba o valor do desconto e o valor a ser pago pelo cliente. O desconto deverá ser calculado sobre o valor do veículo de acordo com o combustível (álcool 25%, gasolina 21% ou diesel 14%). Com valor do veículo zero encerra entrada de dados. Informe total de desconto e total pago pelos clientes. 28. Escrever um algoritmo para uma empresa que decide dar um reajuste a seus 584 funcionários de acordo com os seguintes critérios: a) 50% para aqueles que ganham menos do que três salários mínimos; b) 20% para aqueles que ganham entre três até dez salários mínimos; c) 15% para aqueles que ganham acima de dez até vinte salários mínimos; d) 10% para os demais funcionários. O nome do funcionário, seu salário e o valor do salário mínimo. Calcule o seu novo salário reajustado. Escrever o nome do funcionário, o reajuste e seu novo salário. Calcule quanto à empresa vai aumentar sua folha de pagamento. 29. Faça um algoritmo que receba o número do mês e mostre o mês correspondente. Valide mês inválido. 30. Escrever um algoritmo que leia três valores inteiros distintos e os escreva em ordem crescente. 31. Dados três valores A, B e C, em que A e B são números reais e C é um caractere, pede-se para imprimir o resultado da operação de A por B se C for um símbolo de operador aritmético; caso contrário deve ser impressa uma mensagem de operador não definido. Tratar erro de divisão por zero. 32. Escrever um algoritmo que leia três valores inteiros e verifique se eles podem ser os lados de um triângulo. Se forem, informar qual o tipo de triângulo que eles formam: equilátero, isóscele ou escaleno. Propriedade: o comprimento de cada lado de um triângulo é menor do que a soma dos comprimentos dos outros dois lados. Triângulo Equilátero: aquele que tem os comprimentos dos três lados iguais; Triângulo Isóscele: aquele que tem os comprimentos de dois lados iguais. Portanto, todo triângulo equilátero é também isóscele; Triângulo Escaleno: aquele que tem os comprimentos de seus três lados diferentes.

33. A escola APRENDER faz o pagamento de seus professores por hora/aula. Faça um algoritmo que calcule e exiba o salário de um professor. Sabe-se que o valor da hora/aula segue a tabela abaixo: Professor Nível 1 R$12,00 por hora/aula Professor Nível 2 R$17,00 por hora/aula Professor Nível 3 R$25,00 por hora/aula 34. Elabore um algoritmo que, dada a idade de um nadador. Classifique-o em uma das seguintes categorias: Infantil A = 5-7 anos Infantil B = 8-10 anos juvenil A = 11-13 anos juvenil B = 14-17 anos Sênior = 18-25 anos Apresentar mensagem idade fora da faixa etária quando for outro ano não contemplado. 35. Faça um algoritmo que calcule o valor da conta de luz de uma pessoa. Sabe-se que o cálculo da conta de luz segue a tabela abaixo: Tipo de Cliente Valor do KW/h 1 (Residência) 0,60 2 (Comércio) 0,48 3 (Indústria) 1,29