Baixe o app para aproveitar ainda mais
Prévia do material em texto
UNIVERSIDADE LUTERANA DO BRASIL EDUCAÇÃO A DISTÂNCIA CURSO: Sistemas para Internet DISCIPLINA: Algoritmos e Programação I PROFESSOR(A): Vanessa Lindemann CRÉDITOS: 4 UNIDADE/EAD: 1000 HORAS/AULA TOTAIS: 68 ANO/SEM.: 2013/2 ATIVIDADE PRÁTICA 3 Esta atividade prática, que pode ser realizada em grupo ou individualmente, vai lhe possibilitar a revisão de conteúdos dos capítulos 1 a 6, em que são abordados conceitos fundamentais de lógica de programação, instruções primitivas e estruturas de controle sequencial e condicional para construção de algoritmos. Praticando esta atividade, você estará se preparando para a Prova Objetiva de G1 na NetAula. 1 CONCEITOS FUNDAMENTAIS Retomaremos alguns dos conceitos fundamentais estudados nos seis primeiros capítulos do livro da disciplina. Entretanto, para resolver as questões propostas nesta atividade prática, o ideal é que você já tenha estudado previamente os capítulos 1 a 6 do material. 1.1 Tipos de dados, variáveis e constantes Um algoritmo é uma sequência de passos finitos que visam solucionar um determinado problema. Para isso, é necessário manipular dados, transformando os dados de entrada em dados de saída (resultado esperado). Ao construir um algoritmo, é necessário identificar o tipo do dado que está sendo manipulado. Os tipos de dados podem ser classificados de acordo com o tipo de informação contida neles: dados numéricos (inteiros e reais), dados literais (caractere e cadeia) e dados lógicos. • Inteiro: os dados do tipo inteiro pertencem ao conjunto de números inteiros relativos, ou seja, são aqueles que não possuem componentes decimais ou fracionários, podendo ser positivos, nulo ou negativos. • Real: os dados do tipo real pertencem ao conjunto dos números reais, portanto, podem ter componentes decimais ou fracionários e ser positivos, nulo ou negativos. • Caractere: os dados do tipo caractere são compostos por um único caractere alfanumérico (0..9, A..Z, a..z) ou caractere especial (#, $, %, *, ?, >, ...) e são delimitados por aspas. • Cadeia: os dados do tipo cadeia são formados por um conjunto de caracteres alfanuméricos (0..9, A..Z, a..z) e/ou caracteres especiais (#, $, %, *, ?, >, ...) e são delimitados por aspas. • Lógico: um dado do tipo lógico só pode assumir dois estados: verdadeiro ou falso. Exemplos: resposta = verdadeiro (ou, simplesmente resposta = v); teste = falso (ou, simplesmente teste = f). Os dados são armazenados na memória do computador e manipulados através do uso de variáveis. Uma variável é formada por três atributos: nome (identificador), tipo de dado e valor. O nome da variável deve ser único e seguir algumas regras: sempre começar com uma letra, podendo ser seguida de letras e/ou números; não é permitido espaços em branco, caso haja necessidade de separador usa-se o sublinhado (underscore); não é permitido utilizar símbolos, operadores, acentos e caracteres especiais; não é permitido utilizar palavras reservadas. Todas as variáveis utilizadas em um algoritmo devem ser declaradas antes de serem utilizadas, através da definição de um nome (identificador) e do tipo de dado que será armazenado nela. Ao contrário das variáveis, o conteúdo armazenado em uma constante não é alterado durante a execução de um algoritmo. As constantes também são definidas antes de serem utilizadas e seus nomes (identificadores) seguem as mesmas regras das variáveis. 1.2 Operadores e expressões Operadores são elementos fundamentais que quando relacionados com operandos produzem uma expressão. Por exemplo, a expressão 3 + 2 relaciona dois operandos (os números 3 e 2) por meio do operador (+) que representa a operação de adição. Os operandos dividem-se em aritméticos, relacionais e lógicos. Esta divisão está diretamente relacionada com o tipo de expressão onde aparecem os operadores. 1.2.1 Expressões aritméticas As expressões aritméticas são formadas por variáveis numéricas e operadores aritméticos, cujo resultado da avaliação é do tipo numérico (inteiro ou real). Os operadores aritméticos e sua ordem de prioridade são apresentados na Tabela 1. Tabela 1 – Operadores aritméticos Operador Operação Prioridade Exemplo ** Exponenciação 1 3 ** 2 = 9 // Radiciação 1 25 // 2 = 5 * Multiplicação 2 7 * 2 = 14 / Divisão 2 20 / 4 = 5 div Quociente da divisão inteira 2 20 div 6 = 3 mod Resto da divisão inteira 2 20 mod 6 = 2 + Adição 3 3 + 8 = 11 - Subtração 3 30 – 12 = 18 A prioridade entre os operadores define a ordem em que os mesmos devem ser executados dentro de uma mesma expressão. Quando há dois ou mais operadores de mesma prioridade em uma expressão, a execução se dá da esquerda para direita. 1.2.2 Expressões lógicas As expressões lógicas têm como resultado um valor lógico (verdadeiro ou falso). Elas podem ser formada por operadores relacionais, operadores lógicos ou pela combinação de ambos. Os operadores relacionais, listados na Tabela 2, são utilizados quando se deseja efetuar comparações entre objetos de mesma natureza (variáveis do mesmo tipo de dado). O resultado de uma comparação é sempre um valor lógico (verdadeiro ou falso). Tabela 2 – Operadores relacionais Operador Comparação Exemplo = Igual 3 = 2 falso < > Diferente 10 <> 20 verdadeiro < Menor 4 < 18 verdadeiro > Maior 10 > 20 falso <= Menor ou igual 4 <= 7 verdadeiro >= Maior um igual 7 >= 7 verdadeiro Os operadores lógicos ou booleanos também resultam em valores lógicos e normalmente são usados para combinar expressões relacionais. Os operadores lógicos e suas relações de precedência são mostrados na Tabela 3. Tabela 3 – Operadores lógicos Operador Operação Prioridade Exemplo NÃO Negação 1 não(2>7) não(F) V E Conjunção 2 (2=2) e (3<7) (V) e (V) V OU Disjunção 3 (2<5) ou (9<20) (F) ou (V) V A Tabela 4, chamada de tabela-verdade, exemplifica o uso dos operadores lógicos, considerando duas variáveis lógicas (A e B). Uma vez que uma variável lógica só pode assumir dois valores (verdadeiro ou falso), há exatamente quatro combinações possíveis entre A e B. As colunas contêm os resultados das operações lógicas sobre as combinações de A e B. Tabela 4 – Tabela-verdade dos operadores lógicos A B Não A Não B A e B A ou B V V F F V V V F F V F V F V V F F V F F V V F F 1.3 Formas de representação de algoritmos • Linguagem natural: utiliza uma descrição narrativa para especificar os passos a serem realizados para executar a tarefa. Por não possuir uma estrutura bem definida, pode dar margem para más interpretações e ambiguidades. • Português estruturado: utiliza uma linguagem estruturada e se assemelha a um programa escrito em linguagem de programação. Também é denominado de pseudocódigo e é bastante utilizado como passo inicial antes de descrever um programa em uma linguagem de programação. • Fluxograma: é uma forma universal de representação, utiliza-se de figuras geométricas para ilustrar os passos a serem seguidos para a resolução de um problema. • Diagrama de Chapin: é uma variação do fluxograma permitindo se ter uma visão hierárquica e estruturada da lógica do algoritmo. 1.4 Instruções primitivas Instruções primitivas são comandos básicos utilizados para efetuar a entrada e a saída de dados e sua movimentação na memória. Estes comandos, presentes na maioria absoluta dos algoritmos, garantem a comunicação do algoritmo com o mundo exterior. No capítulo 3 estudamos as instruções primitivas de atribuição, de entrada de dados (comando LER) e de saída de dados (comando ESCREVER). VAMOS EXERCITARO CONTEÚDO REVISADO?! Questão 01 IDENTIFICADORES Assinale os identificadores válidos: ( ) funcionario ( ) endereço ( ) 3x 4 ( ) soma ( ) nota ( ) FGTS ( ) "sim" ( ) nomedaempresa ( ) ah! ( ) b248 ( ) salário_total ( ) cont ( ) x_2 ( ) 1teste ( ) ler Questão 02 DECLARAÇÃO DE VARIÁVEIS E COMANDO DE ATRIBUIÇÃO De acordo com a declaração de variáveis apresentada abaixo (à esquerda), assinale os comandos de atribuição considerados INVÁLIDOS. total, preco: real ( ) teste “verdadeiro” ( ) endereco 7 Setembro, 999 qtde, cont, idade: inteiro ( ) total qtde * 4.50 ( ) resposta “Não” teste, result: lógico ( ) resposta “s” ( ) result “V” resposta: caractere ( ) idade 59 ( ) qtde 30.6 nome, endereco: cadeia ( ) nome “Ana Maria” ( ) total total + (qtde * preco) ( ) preco 5 ( ) cont cont + 5 ( ) teste result ( ) resposta S Questão 03 EXPRESSÕES Dadas as variáveis numéricas A, B e C e as variáveis literais NOME e COR, quais os resultados para as relações a partir dos valores atribuídos a estas variáveis. A B C NOME COR COR <> “Verde” e B mod A + C > B // C ou NOME = “Lucas” 6 9 2 Joana Azul 2 64 2 Beto Verde 4 8 3 Lucas Preto Questão 04 CONCEITOS BÁSICOS EM ALGORITMOS Sobre os conceitos básicos de algoritmos, pode-se afirmar que: I. Para criar o nome de uma variável (identificador) é necessário seguir algumas regras. O identificador: deve iniciar por uma letra; deve conter apenas letras, números e sublinhado; não pode conter espaços em branco; não pode ser uma palavra reservada (ou seja, um comando); e, deve ser único no algoritmo. II. Os tipos primitivos de dados utilizados na construção de algoritmos são: real, inteiro, lógico, caractere e cadeia. III. Os operadores utilizados em algoritmos são classificados quanto ao tipo de dado de seus operandos e do valor resultante de sua avaliação, podendo ser aritméticos, relacionais ou lógicos. a) II e III estão corretas b) III está incorreta c) I e III estão corretas d) I está correta e) Todas estão corretas Questão 05 INSTRUÇÕES PRIMITIVAS I. O comando de atribuição, o comando de entrada de dados e o comando de saída de dados são instruções primitivas. II. No comando de atribuição, o literal atribuído a uma variável do tipo cadeia ou caractere deve estar entre aspas conforme o exemplo: nome "Luciene". III. A instrução primitiva de saída permite que dados fornecidos pelo usuário via teclado (ou por outros dispositivos) sejam armazenados em variáveis na memória do computador. Quais assertivas são VERDADEIRAS? (a) Apenas I e II (b) Apenas II. (c) Apenas I e III. (d) I, II e III. (e) Nenhuma das respostas anteriores. Questão 06 ESTRUTURA CONDICIONAL Considerando o algoritmo apresentado a seguir... algoritmo teste_de_mesa variáveis x, y, z: lógico início ler(x,y,z) se(x=V)então se(y=V)então se(z=F)então comando 1 senão início comando 2 comando 3 fim senão comando 4 comando 5 fim (a) Se x = V, y = F e z = V, quais os comandos serão executados? (b) Se x = V, y = V e z = V, quais os comandos serão executados? (c) Quais os valores de x, y e z para que somente o comando 5 seja executado? Questão 07 ESTRUTURA DE REPETIÇÃO O algoritmo a seguir imprime os números múltiplos de 3 entre 1 e 100. ( ) Certo ( ) Errado algoritmo exercicio variáveis valor: inteiro início valor 1 repita se(valor mod 3 = 0)então escrever(valor) valor valor + 1 até(valor>100) fim A realização desta atividade lhe auxiliará a resolver a Prova Objetiva de G1 na NetAula. Se sentir necessidade, volte a estudar os conteúdos dos capítulos 1 a 6. Fique atento ao prazo para a realização desta atividade.
Compartilhar