Buscar

2_Estrutura de um Algoritmo_Variaveis_Entrada_Saida

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Estrutura de um Algoritmo, Variáveis, 
Comandos de Entrada e Saída e 
Expressões Aritméticas 
Estrutura de um Programa em Linguagem 
Algorítmica 
Nesse curso nós vamos utilizar a linguagem algorítmica para treinar a 
programação de computadores. A linguagem algorítmica que nós vamos utilizar é 
muito similar às demais linguagens de programação imperativas. As principais 
diferenças entre a linguagem algorítmica e as demais linguagens de programação 
são: 
1. A linguagem algorítmica pode ser escrita em português, portanto, é mas 
simples de compreender os conceitos iniciais. 
2. A linguagem algorítmica é mais simples sintaticamente do que as demais 
linguagens de programação. Isso significa que podemos nos preocupar 
menos com regras sintáticas como, por exemplo, as regras que definem 
identificadores válidos. 
3. A linguagem algorítmica não possui algumas restrições de implementação 
presentes nas linguagens de programação reais. Por exemplo, não existe 
faixa de valores válidos para um determinado tipo de variável na linguagem 
algorítmica. 
4. Portanto, essas simplificações nos ajudam a focar na resolução do 
problema em si, e não em detalhes de sua codificação. 
Um algoritmo em linguagem algorítmica tem a seguinte estrutura mínima: 
Algoritmo primeiro; 
 
{ 
} 
Esse é o algoritmo mais simples que pode ser criado em linguagem algorítmica. 
Ele inicia com a palavra algoritmo e é seguido de um nome para o algoritmo, 
escolhido pelo programador. Esse nome é mais formalmente chamado de 
identificador, pois ele identifica algo, neste caso o algoritmo. O identificador do 
algoritmo serve para nos ajudar a lembrar para que serve esse algoritmo. Nesse 
caso, esse é o nosso primeiro algoritmo, por isso o identificador primeiro. Sempre 
utilize identificadores que sejam sugestivos, no caso de algoritmos, que ajudem a 
lembrar qual é a função do algoritmo. 
As palavras { e } marcam o início e o final dos comandos presentes no algoritmo. 
Entre essas duas palavras nós devemos inserir os comandos que devem ser 
executados no algoritmo. As palavras { e } delimitam um bloco de comandos. 
Todo algoritmo tem pelo menos um bloco de comandos, chamado de corpo 
principal do algoritmo. O corpo principal do algoritmo termina com um ponto final 
após a palavra }. 
O algoritmo acima não faz absolutamente nada. Isso ocorre porque não existe 
nenhum comando dentro do corpo principal do algoritmo. Assim que nós 
começarmos a aprender alguns comandos, os nossos algoritmos ficarão mais 
interessantes. 
Para ajudar na explicação dos algoritmos, aqui nesse texto, são inseridos à 
esquerda do algoritmo, números que correspondem às posições das linhas. Por 
exemplo, o algoritmo anterior ficaria assim: 
01 | Algoritmo primeiro; 
02 | 
03 | { 
04 | } 
Variáveis 
Todos nós já ouvimos falar que os computadores são excelentes para armazenar 
e processar informações. Entretanto, o que deve ser feito para armazenar um 
determinado valor na memória do computador? Uma das formas de fazê-lo é 
através das variáveis. 
As variáveis são componentes de um algoritmo que permitem armazenar valores 
na memória do computador. O valor de uma variável pode ser modificado no 
decorrer da execução do algoritmo, daí a origem do nome "variável". 
As variáveis também possuem um tipo associado. O tipo da variável limita o valor 
que a variável pode receber. Existem diversos tipos de variáveis, os mais 
utilizados são: 
• inteiro: uma variável inteira pode receber um valor inteiro, como por 
exemplo: 2, 5, -6, 11 ou 15423; 
• real: uma variável real pode rececer um valor real, ou seja, um número com 
ou sem parte fracionária, como por exemplo: -1.43, 0.001, 5 ou 2111.99; 
• caracter: uma variável do tipo caracter pode receber como conteúdo um 
caracter (ou seja, um único símbolo que pode ser entrado pelo teclado), 
como por exemplo: %, #, q, A, 7 ou {. 
Em um algoritmo é necessário declarar as variáveis antes de utilizá-las. Declarar 
uma variável significa dizer qual é o identificador e o tipo da variável. Na 
linguagem algorítmica, a palavra variáveis indica o início do bloco de declaração 
de variáveis. 
01 | Algoritmo segundo; 
02 | 
03 | { 
04 | a: inteiro; 
05 | 
06 | 
07 | } 
O algoritmo anterior dá um exemplo de como declarar um variável. Essa variável 
possui um identificador a e é do tipo inteiro. As variáveis devem ser declaradas 
entre a palavra variáveis e a palavra {, que indica o início do corpo principal do 
algoritmo. Por fim, as variáveis sempre são declaradas da forma: 
<Identificador da variável> : <Tipo da variável> ; 
No qual <Identificador da variável> deve ser substituído pelo nome da variável e 
<Tipo da variável> deve ser substituído pelo tipo da variável. Como por exemplo: 
a: inteiro; 
ou 
média: real; 
Repare que a declaração da variável a no algoritmo segundo está a alguns 
espaços em branco à direita. Isso é chamado de indentação e ajuda na 
legibilidade do programa. A indentação ajuda as pessoas que forem ler (incluindo 
você mesmo) o algoritmo. Nesse caso, fica bastante visível que a declaração a: 
inteiro; está dentro do bloco de declaração de variáveis. 
Portanto, a declaração a: inteiro cria uma variável com identificador a do tipo 
inteiro. Após declarar a variável a, é necessário executar os comandos presentes 
no corpo principal do algoritmo. Entretanto, no nosso segundo algoritmo o corpo 
principal está vazio. Sendo assim, o algoritmo termina. 
Nós já sabemos como declarar uma variável na linguagem algorítmica. Mas, como 
é possível ler ou alterar o valor dessa variável? As duas formas mais comuns para 
alterar o conteúdo de uma variável são: 
1. através de uma atribuição; 
2. através de um comando de entrada. 
Vamos ver agora como fazer uma atribuição. Mais tarde, vamos ver como os 
comandos de entrada funcionam. 
Uma atribuição é feita através do símbolo " ". Através desse símbolo é possível 
armazenar um valor (possivelmente resultado de uma expressão aritmética, como 
veremos logo a seguir) em uma variável. Vamos modificar o nosso segundo 
algoritmo para que ele armazene o valor 10 na variável a: 
01 | Algoritmo terceiro; 
02 | 
03 | { 
04 | a: inteiro; 
05 | 
06 | 
07 | a 10; 
08 | } 
O algoritmo acima possui um único comando dentro do corpo principal do 
algoritmo, esse comando é a atribuição na linha 07 (repare no símbolo ). Nesse 
caso, o valor 10 está sendo atribuído à variável a. Em português lê-se "a recebe 
10". Como foi declarado, a variável de identificador a é uma variável que pode 
receber valores inteiros. Na linha 07, essa variável passará a ter como conteúdo o 
valor 10. 
Uma atribuição segue sempre a mesma sintaxe. À esquerda do símbolo de 
atribuição ( ) deve ser colocado o identificador de um variável. Essa variável irá 
receber o valor especificado à direita do símbolo de atribuição. Como veremos na 
próxima seção, pode-se utilizar, no lado direiro da atribuição, uma expressão 
matemática. Isso faz com que o programa possa realizar alguns cálculos 
matemáticos e atribuir o resultado à variável. 
Até agora nós somente sabemos como atribuir um valor a uma variável. Mais 
interessante seria se nós pudessemos realizar cálculos matemáticos com essas 
variáveis. Esse é o assunto da próxima seção. 
Expressões Aritméticas 
Podemos fazer um algoritmo que utilize as variáveis para realizar cálculos, como 
se o computador fosse uma calculadora. Por exemplo, podemos calcular a média 
anual de um estudante a partir de 4 notas bimestrais. O algoritmo ficaria assim: 
01 | Algoritmo Média; 
02 | 
03 | { 
04 | B1, B2, B2, B4: real; 
05 | Média: real; 
06 | 
07 | 
08 | B1 7; // Nota da primeira prova bimestral: 7 
09 | B2 5; // Nota da segunda prova bimestral: 5 
10 | B3 8; // Nota da terceira prova bimestral: 811 | B4 7; // Nota da quarta prova bimestral: 7 
12 | Média (B1 + B2 + B3 + B4) / 4; 
13 | } 
O algoritmo acima possui algumas novidades. Na linha 04 são declaradas 4 
variáveis inteiras. Repare que para não repetir 4 vezes a mesma declaração 
"nome da variável: inteiro", nós podemos fazer uma simplificação e declarar na 
mesma linha as quatro variáveis. Isso é válido para qualquer número de variáveis 
e qualquer tipo. Entretanto, todas as variáveis declaradas na mesma linha 
precisam ser necessariamente do mesmo tipo. 
As linhas 08, 09, 10 e 11 fazem quatro atribuições às variáveis B1, B2, B3 e B4, 
respectivamente. B1, B2, B3, e B4 são as variáveis que armazenam as quatro 
notas bimestrais dos respectivos bimestres. Outra novidade são os textos 
iniciados por duas barras diagonais (//). Esses textos são chamados de 
comentários, e a sua função é simplesmente explicar algo para a pessoa que 
está lendo o algoritmo. Um comentário nunca é levado em consideração pelo 
algoritmo. A sua função é unicamente tornar o algoritmo mais simples de ser 
entendido pelas pessoas que o lêem. Um comentário inicia por // e se estende até 
o final da linha. Uma segunda forma fazer um comentário é colocar o texto entre 
os caracteres /* e */. Por exemplo: 
/* Nota da primeira prova bimestral: 7 */ 
Na linha 12 é atribuído à variável Média um valor resultante da expressão 
aritmética: 
(B1 + B2 + B3 + B4) / 4 
Essa expressão aritmética precisa primeiro ser avaliada, ou seja, é necessário 
fazer os cálculos para ver qual valor resulta dessa expressão. Dado os valores das 
variáveis, o algoritmo realiza o seguinte cálculo. 
(7 + 5 + 8 + 7) / 4 
Essa expressão resulta no valor 6,75. Por fim, esse valor é atribuído à variável 
Média. Repare que o valor 6,75 não é um valor inteiro. Portanto a variável Média 
não pode ser uma variável do tipo inteiro, mas sim uma variável do tipo real, 
exatamente como está declarado na linha 05. 
Existem vários tipos de operações que podem ser realizadas através de 
expressoões aritméticas. Para realizar essas operações é necessário conhecer os 
operadores aritmétidos da linguagem algorítmica. Eles são: 
• + (adição); 
• - (subtração); 
• * (multiplicação); 
• / (divisão); 
• div (divisão inteira); 
• % (resto de divisão inteira). 
Você já deve estar acostumado com as operações de adição, subtração, 
multiplicação e divisão. Mas, o que são as operações divisão inteira e resto de 
divisão inteira? 
Divisão inteira (operador div) calcula uma divisão entre dois números inteiros, mas 
o resultado fica restrito à parte inteira do quociente. Por exemplo: 
7 / 2 = 3,5 
Mas, 
7 div 2 = 3 
O operador resto de divisão inteira (%), faz, de certa forma, a operação 
complementar a operação de divisão inteira. Esse operador realiza uma divisão 
inteira e retorna o resto dessa divisão. Portanto: 
7 % 2 = 1 
Não é permitido omitir o operador de multiplicação, como é feito normalmente nos 
textos de matemática. Isso é feito para evitar confusões com os identificadores 
das variáveis. Na matemática a expressão AB+C quer dizer "multiplique A por B e 
some com C", mas na linguagem algorítmica AB pode ser entendido como um 
identificador de uma variável. Portanto, é obrigatório escrever A*B+C. 
Na linguagem algorítmica, os operadores possuem uma relação de prioridade 
entre si. Essa relação de prioridade está resumida na tabela a seguir: 
Prioridade Operador 
1ª * / div % 
2ª + - 
Para modificar a precedência dos operadores, basta utilizar parênteses. Por 
exemplo: 
(2 + 7) * (5 + 5) 
Na expressão acima, as parcelas (2 + 7) e (5 + 5) serão calculadas primeiro, 
resultando em 9 e 10. Só então a multiplicação será calculada, resultando em 90. 
Voltando ao algoritmo que calcula a média anual de um estudante, ele ainda pode 
ser melhorado. Por exemplo, o algoritmo não é capaz de informar ao usuário qual 
foi o resultado da média calculada. Para fazer isso, é necessário utilizar os 
comandos de entrada e saída. Esse é o assunto da próxima seção. 
Comandos de Entrada e Saída 
É importante que um algoritmo tenha mecanismos de comunicação com o usuário. 
As formas mais simples de fazê-lo é escrever mensagens na tela do computador e 
ler valores do teclado. Em linguagem algorítmica, os comandos utilizados para 
essas finalidades são os comandos escreva e leia. 
O comando escreva é um comando de saída. Na sua forma mais simples, esse 
comando permite que mensagens ou valores de variáveis sejam impressos na tela 
do computador. Toda mensagem a ser impressa na tela deve estar entre aspas. 
Por exemplo: 
escreva("Olá mundo"); 
imprime a mensagem "Olá mundo" na tela do computador. 
É possível imprimir também valores de variáveis, como por exemplo: 
escreva(Média); 
Nesse caso, o valor da variável Média é impresso na tela. Repare que o 
identificador da variável Média não está entre aspas. Isso indica que o valor da 
variável Média deve ser impresso na tela, e não a mensagem "Média". 
Podemos, então, refazer o nosso algoritmo de cálculo da média anual de forma 
que o algoritmo informe ao usuário qual foi o resultado do cálculo da média anual: 
01 | Algoritmo Média; 
02 | 
03 | { 
04 | B1, B2, B2, B4: real; 
05 | Média: real; 
06 | 
07 | 
08 | B1 7; // Nota da primeira prova bimestral: 7 
09 | B2 5; // Nota da segunda prova bimestral: 5 
10 | B3 8; // Nota da terceira prova bimestral: 8 
11 | B4 7; // Nota da quarta prova bimestral: 7 
12 | Média (B1 + B2 + B3 + B4) / 4; 
13 | escreva(Média); 
14 | } 
Ao algoritmo anterior foi adicionada apenas a linha 13, a qual utiliza o comando de 
saída escreva para escrever na tela do computador a valor da variável Média. 
Ainda, é possível mesclar mensagens e valores de variáveis em um mesmo 
comando escreva, para isso basta separar as mensagens e os nomes de 
variáveis com vírgulas, como por exemplo: 
escreva("O valor da sua média anual é ", Média); 
Com isso, o nosso algoritmo ficaria ainda mais fácil de ser utilizado pelo usuário. 
Podemos, portanto, modificar a linha 13 para escrever a mensagem anterior, o 
algoritmo ficaria assim: 
01 | Algoritmo Média; 
02 | 
03 | { 
04 | B1, B2, B2, B4: real; 
05 | Média: real; 
06 | 
07 | 
08 | B1 7; // Nota da primeira prova bimestral: 7 
09 | B2 5; // Nota da segunda prova bimestral: 5 
10 | B3 8; // Nota da terceira prova bimestral: 8 
11 | B4 7; // Nota da quarta prova bimestral: 7 
12 | Média (B1 + B2 + B3 + B4) / 4; 
13 | escreva("O valor da sua média anual é ", Média); 
14 | } 
Esse algoritmo imprime na tela do computador a mensagem: 
O valor da sua média anual é 6,75 
O nosso algoritmo ainda possui um defeito. Ele calcula a média sempre sobre os 
mesmos valores das notas bimestrais. Seria bem mais interessante se esses 
valores pudessem ser fornecidos pelo usuário. Dessa forma, a cada execução do 
algoritmo, o usuário informaria quais são os valores das suas provas bimestrais. 
Para fazer isso é necessário utilizar o comando de entrada leia. Ele permite que 
informações externas (do teclado, por exemplo) sejam entradas em um algoritmo. 
Na sua forma mais simples o comando leia possui a seguinte sintaxe: 
leia(<identificador da variável>); 
Sendo que <identificador da variável> deve ser substituído por um identificador 
de uma variável declarada no algoritmo. Quando o comando leia é executado, a 
execução do algoritmo pára e fica esperando o usuário digitar um valor seguido da 
tecla ENTER. Enquanto o usuário não digita um valor seguido de ENTER o 
algoritmo não irá prosseguir. Tão logo o usuário digite um valor seguido da tecla 
ENTER, o valor digitado é automaticamente armazenado na variável especificada 
entre os parênteses do comando leia. 
É possível alterar o nossoalgoritmo de cálculo da média de forma que ele leia os 
valores das provas bimestrais do teclado, ao invés do programador atribuir esses 
valores diretamente no programa. Assim o usuário será capaz de fornecer 
diferentes valores para as notas das provas bimestrais, a cada execução do 
algoritmo. O algoritmo fica assim: 
01 | Algoritmo Média; 
02 | 
03 | { 
04 | B1, B2, B2, B4: real; 
05 | Média: real; 
06 | 
07 | 
08 | leia(B1); // Nota da primeira prova bimestral 
09 | leia(B2); // Nota da segunda prova bimestral 
10 | leia(B3); // Nota da terceira prova bimestral 
11 | leia(B4); // Nota da quarta prova bimestral 
12 | Média (B1 + B2 + B3 + B4) / 4; 
13 | escreva("O valor da sua média anual é ", Média); 
14 | } 
Nesse último algoritmo, o usuário será responsável por fornecer os valores das 
notas bimestrais. Quando o comando leia, na linha 08, é executado, o computador 
pára a execução e fica esperando o usuário digitar um valor no teclado. Vamos 
supor que o usuário digite 10. O valor 10 é então atribuído à variável B1. Na 
seqüência, são executados os comandos leia nas linhas 09, 10 e 11. Para cada 
comando leia o usuário terá que digitar um valor. Vamos supor que ele digite 5 
para o comando leia na linha 09, 4 para o comando leia na linha 10 e 9 para o 
comando leia na linha 11. Então as variáveis B1, B2, B3 e B4 terão os seguintes 
valores: 
B1 = 10 
B2 = 5 
B3 = 4 
B4 = 9 
Na linha 12 é calculada a média anual. Essa média será: 
(B1 + B2 + B3 + B4) / 4 = (10 + 5 + 4 + 9) / 4 = 7 
Portanto, o valor 7 é atribuído na linha 12 à variável Média. Por fim, o comando 
escreva, na linha 13, irá escrever na tela do computador a seguinte mensagem: 
O valor da sua média anual é 7 
E o algoritmo termina. 
Um último melhoramento no nosso algoritmo de calcular a média anual. Repare 
que o algorimo não informa ao usuário o que deve ser feito. Seria mais 
interessante se o algoritmo escrevesse na tela do computador mensagens que 
indicassem o que o usuário deve fazer. Como por exemplo: 
Entre com o valor da sua primeira nota bimestral: 
E assim por diante. Vamos então modificar o nosso algoritmo para escrever 
mensagens de ajuda ao usuário: 
01 | Algoritmo Média; 
02 | 
03 | { 
04 | B1, B2, B2, B4: real; 
05 | Média: real; 
06 | 
07 | 
08 | escreva("Entre com o valor da primeira nota bimestral: "); 
09 | leia(B1); // Nota da primeira prova bimestral 
10 | escreva("Entre com o valor da segunda nota bimestral: "); 
11 | leia(B2); // Nota da segunda prova bimestral 
12 | escreva("Entre com o valor da terceira nota bimestral: "); 
13 | leia(B3); // Nota da terceira prova bimestral 
14 | escreva("Entre com o valor da quarta nota bimestral: "); 
15 | leia(B4); // Nota da quarta prova bimestral 
16 | Média (B1 + B2 + B3 + B4) / 4; 
17 | escreva("O valor da sua média anual é ", Média); 
18 | } 
Dicas 
Quando você criar os seus algorimtos lembre-se: 
• Utilize sempre identificadores sugestivos. Evite, por exemplo, chamar as 
variáveis que armazenam as notas bimestrais de X, Y, Z, W, pois esses 
identificadores não são sugestivos das funcionalidades dessas variáveis no 
algoritmo. 
• Sempre comente os seus algoritmos. Utilize os comentários para facilitar o 
entendimento do algoritmo. 
• Mantenha o seu algoritmo sempre legível. Evite escrevê-lo totalmente em 
letra maiúsculas. Utilize a indentação para mostrar que certos comandos 
fazem parte de blocos de comandos, por exemplo. 
Resumo 
Algumas coisas que você deve lembrar da aula de hoje: 
• Uma variável possui um identificador (nome), um tipo e um valor. O nome 
da variável é utilizado para ler ou modificar o valor dessa variável. O tipo da 
variável limita os valores que podem ser atribuídos à ela. Por exemplo, uma 
variável do tipo inteiro somente pode receber valores inteiros. 
• Os comandos de entrada e saída permitem que o programa se comunique 
com o mundo exterior. Em linguagem algorítmica o comando leia permite 
ler valores do teclado e atribuir esses valores às variáveis. O comando 
escreva escreve mensagens e valores de variáveis na tela do computador. 
• Expressões aritméticas fazem com o um algoritmo faça cálculos 
aritméticos. Esses cálculos podem envolver valores, variáveis e 
operadores, entre outras coisas. 
Exercícios 
1. Faça um algoritmo que leia dois números, calcule e escreva na tela a soma, 
a multiplicação, a divisão e a subtração desses números. 
2. Faça um algoritmo que leia dois valores: base e altura. Calcule e escreva 
na tela as áreas do retângulo (base * altura) e do triângulo (base * altura) / 
2. 
3. Faça um algoritmo que leia três valores do teclado, os quais correspondem 
a uma determinada hora (hora, minuto e segundo). Calcule e imprima na 
tela, quantos segundos a partir da hora zero, correspondem a hora 
fornecida pelo usuário.

Continue navegando