Buscar

Apostila Programacao

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 20 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 20 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 20 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

Prof. Walmor Cardoso Godoi, M.Sc.  Página 1 
 
 
 
 
 
 
 
 
 
 
 
 
Introdução à 
Programação 
TECNÓLOGO EM MECATRÔNICA/ELETRÔNICA 
PARTE 1 
 
 
 
 
 
 
 
 
 
 
 
 
 
 Elaborado por: Walmor Cardoso Godoi, M.Sc. 
 Revisado por: Walmor Cardoso Godoi, M.Sc. 
 
 
 REV.03 
 
Prof. Walmor Cardoso Godoi, M.Sc.  Página 2 
 
 
Índice 
1 Introdução aos Algoritmos de Programação ......................................................... 3 
1.1 Lógica – “arte de pensar” ............................................................................. 3 
1.2 Nomenclatura ................................................................................................ 3 
1.3 Simbologia Básica ......................................................................................... 4 
1.4 Introdução aos Algoritmos ........................................................................... 5 
1.5 Abstração ....................................................................................................... 5 
1.6 Exemplos ........................................................................................................ 5 
2 Resolução de Problemas por meio dos Computadores .......................................... 7 
2.1 Introdução ..................................................................................................... 7 
2.2 Programação ................................................................................................. 7 
2.3 Diretrizes para elaboração de algoritmos ................................................... 8 
2.4 Português Estruturado ................................................................................. 9 
2.5 Instruções Básicas ....................................................................................... 14 
3. Tipos de Dados e Instruções Primitivas ............................................................. 15 
3.1 Tipos de Informação: Dados e Instruções Primitivas .............................. 15 
3.2 O uso de variáveis e constantes .................................................................. 15 
3.3 Operadores Aritméticos .............................................................................. 16 
3.4 Exercício de Aprendizagem ........................................................................ 16 
3.5 Exercícios de Fixação .................................................................................. 17 
4 Estruturas de Controle ......................................................................................... 19 
4.1 Desvio condicional simples ......................................................................... 19 
4.2 Operadores relacionais ............................................................................... 19 
4.3 Desvio condicional composto ...................................................................... 20 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Prof. Walmor Cardoso Godoi, M.Sc.  Página 3 
 
 
1 Introdução aos Algoritmos de Programação 
1.1 Lógica – “arte de pensar” 
MANZANO afirma que para usar a lógica, é necessário ter domínio sobre o pensamento, bem 
como saber pensar, ou seja, possuir a “Arte de Pensar”. 
 
No contexto da Tecnologia da Informação (TI), a lógica trata-se de um esquema sistemático que 
define as interações de sinais no computador com o critério e princípio formais de raciocínio e 
pensamento. 
 
A técnica mais importante no projeto da lógica de programas é chamada programação 
estruturada, objetivando: 
• Agilizar a codificação da escrita da programação; 
• Facilitar a depuração da sua leitura; 
• Permitir a verificação de possíveis falhas; 
• Facilitar as alterações e atualizações; 
 
Deve ser composta de quatro passos fundamentais: 
1. Escrever as instruções em seqüências ligadas entre si; 
2. Escrever as instruções em grupos pequenos e combiná-las; 
3. Distribuição dos módulos do programa entre os diferentes programadores de um projeto 
4. Revisão do trabalho executado em reuniões com programadores de mesmo nível 
 
1.2 Nomenclatura 
Fluxograma é uma ferramenta usada e desenvolvida pelos profissionais de análise de sistemas 
de informação. Tem como finalidade descrever o fluxo, manual ou mecânico, especificando os 
suportes usados para os dados e as informações. Utiliza-se de símbolos convencionais (norma 
ISO 5807:1985), os quais indicarão símbolos de entrada de dados, do processamento de dados e 
da saída de dados. 
 
Figura 1: Exemplo de um fluxograma. 
 
 
 
 
Diagrama de blocos (ou diagrama de fluxo, não confundir com fluxograma) tem como objetivo 
descrever o método e a seqüência do processo dos planos num computador. Pode ser 
 
Prof. Walmor Cardoso Godoi, M.Sc.  Página 4 
 
 
desenvolvido em qualquer nível de detalhe que seja necessário pelo programador. Utiliza 
diversos símbolos geométricos (norma ISO 5807:1985(E)) que ditarão as seqüências de 
operações a serem efetuadas em um processamento computacional. 
 
Algoritmos Algumas definições podem ser encontradas para o que é um algoritmo. Veremos na 
próxima seção um detalhamento maior sobre o assunto. 
 
“É a descrição, de forma lógica, de um conjunto finito de passos a serem executados no 
cumprimento de determinada tarefa”. 
ou 
“É um processo de cálculo matemático ou de resolução de um grupo de problemas 
semelhantes”. 
ou 
“Do ponto de vista matemático, são regras formais para obtenção de um resultado ou da 
resolução de um problema, englobando fórmulas de expressões aritméticas” (MANZANO). 
ou ainda, 
“É uma receita de bolo.” 
1.3 Simbologia Básica 
Abaixo seguem alguns símbolos utilizados na área de Tecnologia da Informação (TI). Claro que 
existe um número bem maior deles. 
 
 
Prof. Walmor Cardoso Godoi, M.Sc.  Página 5 
 
 
1.4 Introdução aos Algoritmos 
O algoritmo pode ser usado como uma ferramenta genérica para representar a solução de tarefas 
independente do desejo de automatizá-las, mas em geral está associado ao processamento 
eletrônico de dados, onde representa o rascunho para programas (softwares). Serve como modelo 
para programas, pois sua linguagem é intermediária à linguagem humana e às linguagens de 
programação, sendo então, uma boa ferramenta na validação da lógica de tarefas a serem 
automatizadas. 
 
Um algoritmo é uma receita para um processo computacional e consiste de uma série de 
operações primitivas, interconectadas devidamente, sobre um conjunto de objetos. Os objetos 
manipulados por essas receitas são as variáveis. 
 
Um Algoritmo é uma seqüência de instruções ordenadas, e sem ambigüidades de forma lógica 
para a resolução de uma determinada tarefa ou problema. 
 
Algoritmo não é a solução de um problema, pois, se assim fosse, cada problema teria um único 
algoritmo. Algoritmo é um caminho para a solução de um problema, e em geral, os caminhos 
que levam a uma solução são muitos. O aprendizado de algoritmos não se consegue a não ser 
através de muitos exercícios, ou seja, a melhor maneira de aprender algoritmos é fazendo. 
 
1.5 Abstração 
Como qualquer modelo, um algoritmo é uma abstração da realidade. A abstração é o processo 
de identificar as propriedades relevantes do fenômeno que esta sendo modelado. Usando o 
modelo abstrato, podemos nos centrar unicamente nas propriedades relevantes para nós, 
dependendo da finalidade da abstração, e ignorar as irrelevantes. 
 
O processo de abstração consiste em compreender um sistema, concreto (como uma corrida de 
Fórmula 1) ou não (um sistema de conta corrente, por exemplo), e criar um modelo documentado 
e padronizado que reflita seu comportamento. 
1.6 Exemplos 
Exemplo 1: Elaborar um algoritmo bastante familiar de substituição de uma lâmpada queimada 
do Teto. 
1. Remova a lâmpada queimada.2. Coloque a lâmpada nova. 
Exemplo 2: Ensinar um robô a trocar lâmpada numa sala em que existe uma escada. 
 O algoritmo tem agora 7 passos: 
1. Posicione a escada debaixo da lâmpada queimada. 
2. Suba na escada até que a lâmpada possa ser alcançada. 
3. Gire a lâmpada queimada no sentido anti-horário até que se solte. 
4. Escolha uma lâmpada nova de mesma potência da queimada. 
5. Posicione a nova lâmpada no soquete. 
6. Gire no sentido horário até que ela se firme. 
7. Desça a escada. 
 
Prof. Walmor Cardoso Godoi, M.Sc.  Página 6 
 
 
Exemplo 3: No nosso dia a dia nos deparamos com diversos problemas que normalmente são 
resolvidos por meio do uso de algoritmos. Até coisas mais simples podem ser descritas através 
de algoritmo, por exemplo: “Fritar um ovo”. 
Passo 1 : Pegar a frigideira, o ovo, o óleo e o sal 
Passo 2: Colocar o óleo na frigideira 
Passo 3 : Acender o fogo 
Passo 4 : Colocar a frigideira no fogo 
Passo 5 : Esperar o óleo aquecer 
Passo 6 : Abrir o ovo na frigideira 
Passo 7 : Retirar quando pronto 
 
Exercício: Torres de Hanói. Considere o seguinte problema. Temos três hastes. Uma das hastes 
serve de suporte para três discos de tamanhos diferentes. Os discos menores são sempre 
colocados sobre os discos maiores. A figura abaixo mostra uma possível situação inicial das 
hastes e discos. 
 
Desejamos mover todos discos para a haste do meio, porém só podemos movimentar um disco 
de cada vez e um disco maior nunca pode ser colocado sobre um disco de menor tamanho. 
Nomeamos as hastes como 1, 2 e 3 e os discos como p, m e g. Considera-se que inicialmente os 
discos estão na haste 1. Os passos são: 
 
 
 
 
 
 
ANOTAÇÕES: 
_____________________________________________________________________________________________
_____________________________________________________________________________________________ 
_____________________________________________________________________________________________
_____________________________________________________________________________________________ 
_____________________________________________________________________________________________
_____________________________________________________________________________________________ 
_____________________________________________________________________________________________
_____________________________________________________________________________________________ 
_____________________________________________________________________________________________
_____________________________________________________________________________________________ 
___________________________________________________________________________________________ 
 
 
 
Prof. Walmor Cardoso Godoi, M.Sc.  Página 7 
 
 
2 Resolução de Problemas por meio dos Computadores 
2.1 Introdução 
Os computadores podem ser usados de forma eficiente na solução de certos tipos de problemas. 
Os problemas que suportam tratamento por computador, em geral, envolvem grandes 
quantidades de dados ou são problemas de natureza complexa, exigindo a execução de um 
grande número de passos para alcançar a solução. Basicamente são problemas na área de 
processamento de dados e na área científica. 
 
O computador é uma ferramenta que permite a realização do processamento 
automático (ou eletrônico) de dados. 
 
 
As etapas na solução de problemas são: 
i) Entendimento do problema; 
ii) Criação de uma seqüência de operações (ou ações) que, quando executadas, 
produzem a solução para o problema; 
iii) Execução desta seqüência de operações. 
iv) Verificação da adequação da solução. 
 
2.2 Programação 
 Programação é a seqüência de planejamento, projeto, escrita e testes de instruções 
desempenhadas pelo computador. É uma arte e uma ciência. Arte porque existem muitas 
maneiras de se realizar o trabalho de programação. Existe espaço para uma considerável dose de 
criatividade. É também uma ciência, porque existem algumas regras que devem ser seguidas, 
porque é necessário o uso de lógica e porque existem alguns métodos rigorosos de programação 
que asseguram a eficiência, economia e a utilidade dos programas gerados. 
O trabalho de programação pode se tornar mais fácil se o dividirmos sistematicamente 
em partes menos complexas (esta técnica denomina-se “dividir para conquistar”). 
O maior problema na construção de programas é a complexidade; esta complexidade 
representa a quantidade de situações diferentes que um problema pode apresentar e que devem 
ser previstas na solução do mesmo. Portanto, ao se construir um programa, o objetivo principal é 
vencer a complexidade do problema a ser solucionado. 
 
A fim de lidar com esta complexidade, podemos dividir a programação em duas fases distintas 
conforme ilustra o esquema abaixo: 
 
Prof. Walmor Cardoso Godoi, M.Sc.  Página 8 
 
 
 
 
2.3 Diretrizes para elaboração de algoritmos 
1. Identificação do problema: determinar o que se quer resolver ou qual objetivo a ser atingido. 
2. Identificação das “entradas de dados”: informações fornecidas, a partir das quais se 
desenvolverão os cálculos. 
3. Identificação das “saídas de dados”: as informações a serem geradas como resultado. 
4. Identificação das regras e limitações do problema ou das limitações do agente executante (ex: 
se o agente fosse uma calculadora não-científica, iriam existir limitações no cálculo de funções, 
por exemplo). 
5. Determinação do que deve ser feito para transformar as “entradas” em “saídas”. Neste ponto 
deve ser determinada a seqüência de ações que leve à solução do problema. 
6. Construção do Algoritmo utilizando uma das formas de representação de algoritmos. 
7. Teste da solução - execução de todas as ações do algoritmo, seguindo o fluxo estabelecido 
para verificar se ele está realmente gerando os resultados esperados ou detectar possíveis erros 
em sua descrição. 
Exemplo 1: Imagine o seguinte problema: Calcular a média final dos alunos da 6ª Série. Os 
alunos realizarão quatro provas: P1, P2, P3 e P4. A Média Final é calculada por: 
(P1 + P2 + P3 + P4) / 4. 
Para montar o algoritmo proposto, faremos três perguntas: 
a) Quais são os dados de entrada? 
R: Os dados de entrada são P1, P2, P3 e P4 
b) Qual será o processamento a ser utilizado? 
 
Prof. Walmor Cardoso Godoi, M.Sc.  Página 9 
 
 
R: O procedimento será somar todos os dados de entrada e dividi-los por 4 (quatro) 
(P1 + P2 + P3 + P4)/4 
c) Quais serão os dados de saída? 
R: O dado de saída será a média final. 
 
Assim, o algoritmo ficaria: 
 
2.4 Português Estruturado 
Como foi visto anteriormente, o algoritmo e o diagrama de blocos são formas de modelar a 
solução para um problema ou projeto, que posteriormente será implementado numa linguagem 
de programação (C++, Pascal, Visual Basic, etc). Mas existe outra ferramenta, muito importante 
também, que pode ser considerada como a ultima etapa da modelagem. É um recurso técnico 
denominado Português Estruturado ou Portugol (de uma forma geral, é conhecida como 
pseudocódigo). O Português Estruturado é uma técnica de “algoritmização” baseada em uma 
PDL – Program Design Language ( ou Linguagem de Projeto de Programação). A forma 
original de uma PDL é em inglês, e sua notação sintática é utilizada em diversas linguagens de 
programação. 
 
A PDL (que aqui será denominado Português Estruturado) tem como finalidade mostrar uma 
notação para elaboração de algoritmos textuais que serão utilizados na definição, criação e 
desenvolvimento de programas a serem facilmente convertidos em uma linguagem formal de 
porgramação, seja ela, PASCAL, C++, C, BASIC, etc. 
 
 
 
 
 
 
 
 
 
Prof. Walmor Cardoso Godoi, M.Sc.  Página 10 
 
 
Forma Geral de um Programa em Português Estruturadoprograma Nome_do_Seu_Programa 
 início //indica o início do programa 
 var 
 declarar todas as variáveis utilizadas aqui. 
 instruções... 
 instruções... 
... (...) 
 fim //indica o fim do programa 
 
Exemplo 2: Abaixo um algoritmo que irá retornar a soma de dois valores inteiros introduzidos 
pelo usuário (MANZANO). 
1. programa SomaDeDoisValores 
2. início 
3. var 
4. A,B, SOMA inteiro 
5. ler A, B 
6. SOMA ← A + B 
7. escreva SOMA 
8. fim 
 
A diferença entre uma linguagem de programação e uma PDL é que esta (seja escrita em 
português, inglês ou qualquer outro idioma) não poderia ser compilada em um computador. 
Porém, hoje já existem interpretadores de português estruturado. Por exemplo, o visuAlg. 
 
2.4.1 O VisuAlg 
A linguagem que o VisuAlg interpreta é bem simples: é uma versão portuguesa dos 
pseudocódigos largamente utilizados nos livros de introdução à programação, conhecida como 
"Portugol". Tomei a liberdade de acrescentar-lhe alguns comandos novos, com o intuito de criar 
facilidades específicas para o ensino de técnicas de elaboração de algoritmos. Inicialmente, 
pensava em criar uma sintaxe muito simples e "liberal", para que o usuário se preocupasse 
apenas com a lógica da resolução dos problemas e não com as palavras-chave, pontos e 
vírgulas, etc. No entanto, cheguei depois à conclusão de que alguma formalidade seria não só 
necessária como útil, para criar um sentido de disciplina na elaboração do "código-fonte". 
A linguagem do VisuAlg permite apenas um comando por linha: desse modo, não há 
necessidade de tokens separadores de estruturas, como o ponto e vírgula em Pascal. Também 
não existe o conceito de blocos de comandos (que correspondem ao begin e end do Pascal e 
ao { e } do C), nem comandos de desvio incondicional como o goto. Na versão atual do 
VisuAlg, com exceção das rotinas de entrada e saída, não há nenhum subprograma embutido, 
tal como Inc(), Sqr(), Ord(), Chr(), Pos(), Copy() ou outro. 
 
Prof. Walmor Cardoso Godoi, M.Sc.  Página 11 
 
 
Importante: para facilitar a digitação e evitar confusões, todas as palavras-chave do VisuAlg 
foram implementadas sem acentos, cedilha, etc. Portanto, o tipo de dados lógico é definido 
como logico, o comando se..então..senão é definido como se..entao..senao, e assim por 
diante. O VisuAlg também não distingue maiúsculas e minúsculas no reconhecimento de 
palavras-chave e nomes de variáveis. 
Formato Básico do Pseudocódigo e Inclusão de Comentários 
O formato básico do nosso pseudocódigo é o seguinte: 
algoritmo "semnome" 
// Função : 
// Autor : 
// Data : 
// Seção de Declarações 
inicio 
// Seção de Comandos 
fimalgoritmo 
A primeira linha é composta pela palavra-chave algoritmo seguida do seu nome delimitado 
por aspas duplas. Este nome será usado como título nas janelas de leitura de dados (nas 
futuras versões do VisuAlg, talvez utilizemos este dado de outras formas). A seção que se 
segue é a de declaração de variáveis, que termina com a linha que contém a palavra-chave 
inicio. Deste ponto em diante está a seção de comandos, que continua até a linha em que 
se encontre a palavra-chave fimalgoritmo. Esta última linha marca o final do pseudocódigo: 
todo texto existente a partir dela é ignorado pelo interpretador. 
O VisuAlg permite a inclusão de comentários: qualquer texto precedido de "//" é ignorado, até 
se atingir o final da sua linha. Por este motivo, os comentários não se estendem por mais de 
uma linha: quando se deseja escrever comentários mais longos, que ocupem várias linhas, 
cada uma delas deverá começar por "//". 
Tipos de Dados 
O VisuAlg prevê quatro tipos de dados: inteiro, real, cadeia de caracteres e lógico (ou 
booleano). As palavras-chave que os definem são as seguintes (observe que elas não têm 
acentuação): 
• inteiro: define variáveis numéricas do tipo inteiro, ou seja, sem casas 
decimais. 
• real: define variáveis numéricas do tipo real, ou seja, com casas decimais. 
• caractere: define variáveis do tipo string, ou seja, cadeia de caracteres. 
• logico: define variáveis do tipo booleano, ou seja, com valor VERDADEIRO ou 
FALSO. 
O VisuAlg permite também a declaração de variáveis estruturadas através da palavra-chave 
vetor, como será explicado a seguir. 
Nomes de Variáveis e sua Declaração 
 
Prof. Walmor Cardoso Godoi, M.Sc.  Página 12 
 
 
Os nomes das variáveis devem começar por uma letra e depois conter letras, números ou 
underline, até um limite de 30 caracteres. As variáveis podem ser simples ou estruturadas (na 
versão atual, os vetores podem ser de uma ou duas dimensões). Não pode haver duas 
variáveis com o mesmo nome, com a natural exceção dos elementos de um mesmo vetor. 
A seção de declaração de variáveis começa com a palavra-chave var, e continua com as 
seguintes sintaxes: 
<lista-de-variáveis> : <tipo-de-dado> 
<lista-de-variáveis> : vetor "["<lista-de-intervalos>"]" de <tipo-de-
dado> 
Na <lista-de-variáveis>, os nomes das variáveis estão separados por vírgulas. Na 
<lista-de-intervalos>, os <intervalo> são separados por vírgulas, e têm a seguinte 
sintaxe: 
<intervalo>: <valor-inicial> .. <valor-final> 
Na versão atual do VisuAlg, tanto <valor-inicial> como <valor-final> devem ser 
inteiros. Além disso, exige-se evidentemente que <valor-final> seja maior do que 
<valor-inicial>. 
Exemplos: 
var a: inteiro 
 Valor1, Valor2: real 
 vet: vetor [1..10] de real 
 matriz: vetor [0..4,8..10] de inteiro 
 nome_do_aluno: caractere 
 sinalizador: logico 
Note que não há a necessidade de ponto e vírgula após cada declaração: basta pular linha. A 
declaração de vetores é análoga à linguagem Pascal: a variável vet acima tem 10 elementos, 
com os índices de [1] a [10], enquanto matriz corresponde a 15 elementos com índices [0,8], 
[0,9], [0,10], [1,8], [1,9], [1,10], ... até [4,10]. O número total de variáveis suportado pelo VisuAlg 
é 500 (cada elemento de um vetor é contado individualmente). 
Constantes e Comando de Atribuição 
O VisuAlg tem três tipos de constantes: 
• Numéricos: são valores numéricos escritos na forma usual das linguagens de 
programação. Podem ser inteiros ou reais. Neste último caso, o separador de 
decimais é o ponto e não a vírgula, independente da configuração regional do 
computador onde o VisuAlg está sendo executado. O VisuAlg também não 
suporta separadores de milhares. 
• Caracteres: qualquer cadeia de caracteres delimitada por aspas duplas ("). 
• Lógicos: admite os valores VERDADEIRO ou FALSO. 
A atribuição de valores a variáveis é feita com o operador <-. Do seu lado esquerdo fica a 
variável à qual está sendo atribuído o valor, e à sua direita pode-se colocar qualquer expressão 
(constantes, variáveis, expressões numéricas), desde que seu resultado tenha tipo igual ao da 
variável. 
 
Prof. Walmor Cardoso Godoi, M.Sc.  Página 13 
 
 
Alguns exemplos de atribuições, usando as variáveis declaradas acima: 
a <- 3 
Valor1 <- 1.5 
Valor2 <- Valor1 + a 
vet[1] <- vet[1] + (a * 3) 
matriz[3,9] <- a/4 - 5 
nome_do_aluno <- "José da Silva" 
sinalizador <- FALSO 
 
Exemplo 3: O exemplo 2 em VisuAlg ficaria 
algoritmo "semnome" 
// Função :Somar dois Valores 
// Autor : 
// Data : 15/02/2009 
// Seção de Declarações 
var 
 A,B, SOMA:inteiro 
inicio 
// Seção de Comandos 
escreval(”digite um numero ”) 
leia(A) 
escreval(”digite um numero ”) 
leia(B) 
SOMA<-A+B 
escreval(”o valor da soma será ”) 
escreval(SOMA) 
 
fimalgoritmo 
Exemplo 4: Somar dois valores 
// Algoritmo : MEDIA ARITMETICA (O famoso...) 
// Função : Demonstração para o programa VisuAlg 
// Autor : Cláudio M. de Souza 
// Data : 08/09/2002 
algoritmo "mediaarit" 
// Seção de Declarações 
var 
 V1, V2, Media : real 
inicio 
// Seção de Comandos 
// Se quiser usar valores fracionários, use , ou . para separar as casas// decimais de acordo com a configuração de seu computador. 
escreva("Qual o primeiro valor? ") 
leia(V1) 
escreva("Qual o segundo valor? ") 
leia(V2) 
Media <- (V1+V2) / 2 
escreval("A média aritmetica é : ", Media : 10:3) 
fimalgoritmo 
 
Prof. Walmor Cardoso Godoi, M.Sc.  Página 14 
 
 
2.5 Instruções Básicas 
As instruções em programação são representadas pelo conjunto de palavras-chave (vocabulário) 
de uma determinada linguagem de programação, que tem por finalidade comandar em um 
computador o seu funcionamento e a forma como os dados armazenados serão tratados. 
 
As instruções a seguir devem ser colocadas de forma lógica e estratégica, formando os blocos do 
comando: início, fim, var, programa, enquanto, fim_enquanto, se, então, senão, fim_se, 
para, fim_para, escreva, leia, faça, repita, até_que, conjunto, inteiro, real, caractere, lógico, 
tipo, registro, fim_registro, procedimento, função, caso, fim_caso, além de operadores 
aritméticos (adição, subtração, multiplicação, divisão, exponenciação e atribuição), operadores 
relacionais (igual a, maior que, menor que, maior ou igual a e menor ou igual a)e operadores 
lógicos (.e., .ou. e .não.) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Prof. Walmor Cardoso Godoi, M.Sc.  Página 15 
 
 
3. Tipos de Dados e Instruções Primitivas 
3.1 Tipos de Informação: Dados e Instruções Primitivas 
O computador é uma ferramenta utilizada para solucionar problemas que envolvam a 
manipulação de informações. As informações para trabalho em um computador podem ser 
divididas em dois tipos básicos: dados e instruções. 
 
Os dados são representados pelas informações a serem tratadas (processadas) por um 
computador. Essas informações estão caracterizadas por três tipos de dados: dados numéricos 
(inteiros ou reais), caracteres e lógicos. 
 
Tipos inteiros: São caracterizados por seu sinal (positivo ou negativo), excluindo-se números 
fracionários. Exemplo: 35, -2, 1, 0, -36000, +201, etc. 
Tipos reais: São caracterizados como dados numéricos positivos, negativos e fracionários. 
Exemplo: 35, -2, 0, 1.2, 3.009, -200.73 
Tipos caracteres ou literais: São as seqüências contendo letras, números e símbolos especiais. 
Uma seqüência de dados tipo caractere deve ser indicada sempre entre “aspas”. Este tipo de dado 
também é conhecido como alfanumérico, string, literal ou cadeia. Exemplos: “A21”, 
“PROGRAMAÇÂO”, “Rua Alfa, 32”, “Fone:”, etc. 
Tipos lógicos: São dados com valores verdadeiro ou falso, apresentando somente um destes. 
Também é conhecido como booleano. Os dados lógicos devem sempre ser apresentados e 
delimitados pelo caractere ponto (.). Exemplos:.Verdadeiro., .F., .V., 
 
3.2 O uso de variáveis e constantes 
Variável é tudo aquilo que é sujeito a variações. Todo dado a ser armazenado na memória de um 
computador deve ser previamente identificado, ou seja, é preciso saber qual o seu tipo para 
depois fazer o seu armazenamento adequado. Assim, o dado pode ser utilizado e manipulado a 
qualquer momento. 
 
O nome de uma variável é utilizado para sua identificação e posterior uso dentro de um 
programa. Sendo assim, algumas regras devem ser seguidas: 
o Nomes de uma variável poderão ser atribuídos com um ou mais caracteres; 
o O primeiro caractere do nome de uma variável não poderá ser, em hipótese alguma, um 
número; sempre deverá ser uma letra; 
o O nome de uma variável não poderá possuir espaços em branco; 
o Não se podem utilizar palavras reservadas para o nome de uma variável; 
o Não poderão ser utilizados outros caracteres a não ser letras e números. 
o Cuidado com linguagens de programação que são CASE SENSITIVE, ou seja, 
reconhecem caracteres maiúsculos e minúsculos de forma diferente. 
Exemplos de nomes válidos: NOMEUSUARIO, FONE1, X, media, delata 25, escreva_soma, 
Variavel. 
Exemplos de nomes inválidos: Nome Usuário, 1X 00Zé, Fone#, ESCREVA (caso for uma 
palavra reservada), LEIA(caso for uma palavra reservada) 
 
 
Prof. Walmor Cardoso Godoi, M.Sc.  Página 16 
 
 
Constante é tudo aquilo que é fixo ou estável. 
Exemplo: O valor da fórmula RESULTADO = ENTRADA*2.26 retorna uma constante. 
 
3.3 Operadores Aritméticos 
Os operadores aritméticos são classificados em duas categorias: binários e unários. São binários 
quando atuam em operações de exponenciação, multiplicação, divisão, adição e subtração. São 
unários quando atuam na inversão de um valor, atribuindo a este o sinal positivo ou negativo. 
 
Tabela 1: Operadores Aritméticos 
← Atribuição 
+ Adição 
- Subtração 
* Multiplicação 
/ Divisão 
↑ Exponenciação 
↑(1/n) Raiz de índice n 
Além dos operadores citados anteriormente, podemos complementar nossa lista com o símbolo E que representa 
potência de 10 em computadores e calculadoras. Exemplo: o valor 3,00×108 pode ser escrito como 3,00E8 usando o 
símbolo E. 
 
As Expressões Aritméticas ou Fórmulas Matemáticas 
Será comum trabalharmos com expressões aritméticas ou fórmulas matemáticas. Estas 
expressões são definidas com o relacionamento existentes entre as variáveis e constantes. As 
expressões em computação são escritas de uma forma um pouco diferente da forma conhecida 
em matemática. 
Exemplos: 
1) A expressão x={43.[55 : (30+2)]} será escrita da forma x←(43*(55/(30+2))). 
2) O cálculo da área de um círculo de raio R será AREA←3.141592*RAIO*RAIO 
3) Ou ainda, o cálculo da área de um círculo de raio R será AREA←3.141592*RAIO↑2 
 
Lembre-se: Para criar um programa que seja executável dentro de um computador, é 
preciso ter em mente três etapas de trabalho: a entrada de dados, o processamento e a 
saída dos dados. 
3.4 Exercício de Aprendizagem 
Problema: Desenvolver um programa que calcule a área de uma circunferência, e apresentar a 
medida da área calculada (Mostre o Algoritmo, o Diagrama de Bloco e o Português Estruturado). 
Solução: 
 
 
 
 
 
Prof. Walmor Cardoso Godoi, M.Sc.  Página 17 
 
 
3.5 Exercícios de Fixação 
1) São dados do tipo inteiro. 
( ) 45, 1002, 20.5, 12 
( ) 12, 45, 1001, 10 
( ) “10”, 2, 3, 0 
( ) .F, .10, 0, dez 
 
2) São dados do tipo real. 
( ) -45, 1002, 20.5, “doze” 
( ) 12, 45, 1001, 10 
( ) “10”, 2, -3, 0 
( ) .F, .10, 0, dez 
 
3) São dados do tipo literal. 
( ) 45, 1002, 20.5, 12 
( ) “12”, “dez”, “\n”, “.F” 
( ) “10”, 2, -3, 0 
( ) .F., 10, 0, dez 
 
4) São nomes válidos para uma variável. 
( ) ENDEREÇO 
( ) #ENDEREÇO 
( ) 10ENDERCO 
( ) LEIA ENDERECO 
 
5) Resolva o problema da Torre de Hanói para 4 quatro discos. 
 
7) Numa determinada noite, acontece uma queda de energia. Você sabia que poderia encontrar 
uma vela na gaveta da cozinha, um lampião embaixo da cama, fusíveis de reserva no armário da 
sala e fósforos na estante da cozinha. Descreva a seqüência de passos que poderia ser utilizada 
para diagnosticar e resolver o problema, o que pode ser previsto em duas possibilidades: 
a) o fusível queimou; 
b) a queda é na estação da companhia elétrica. 
Utilize diagrama de bloco. 
 
6) Escreva um programa em algoritmo descritivo, diagrama de bloco e Português Estruturado, 
para calcular a soma de dois números quaisquer e apresente o resultado somente se o valor 
somado for maior que 1000. 
 
7) Considere o seguinte problema: Queremos calcular a média final dos alunos da 6a série. 40 
alunos realizaram três provas. A primeira prova teve peso 2.0, a segunda teve peso 4.0 e a 
terceira, peso 4.0. Apresente a solução em Português Estruturado. 
 
8) Faça um algoritmo para ler a base e a altura de um triângulo (formula abaixo). Em seguida, 
escreva a área do mesmo. Utilize Português Estruturado para apresentar a resposta. 
 
Prof. Walmor Cardoso Godoi, M.Sc.  Página 18 
 
 
 
Área <- ( Base * Altura ) / 2 
 
9) O preço de um automóvel é calculado pela soma do preço de fábricacom o preço dos 
impostos (45% do preço de fábrica) e a percentagem do revendedor (28% do preço de fábrica). 
Faça um algoritmo que leia o nome do automóvel e o preço de fábrica e imprima o nome do 
automóvel e o preço final. Utilize Português Estruturado para apresentar a resposta. 
 
10) Um sensor obtém uma temperatura em graus Fahrenheit e queremos apresentá-la convertida 
em graus Celsius. A fórmula de conversão é: C = (F-32)*(5/9), onde F é a temperatura em 
Fahrenheit e C é a temperatura em Celsius. Utilize Português Estruturado para apresentar a 
resposta. 
 
11) Calcular e apresentar o valor do volume de uma lata de óleo, utilizando a fórmula: 
VOLUME = 3.141592*(R^2)*ALTURA. Utilize Português Estruturado para apresentar a 
resposta. 
 
12) Ler dois valores para as variáveis A e B, efetuar a troca dos valores de forma que a variável 
A passe a possuir o valor da variável B e que a variável B passe a possuir o valor da variável A. 
O programa deverá mostrar os valores trocados. Utilize Diagrama de Bloco e Português 
Estruturado para apresentar a resposta. 
 
13) Crie um programa em que dado a tensão U e a resistência R, calcule a corrente num circuito. 
Dica: Use a lei de Ohm (U=R*I). Utilize Português Estruturado para apresentar a resposta. 
 
 
ANOTAÇÕES: 
_____________________________________________________________________________________________
_____________________________________________________________________________________________
_____________________________________________________________________________________________
_____________________________________________________________________________________________
_____________________________________________________________________________________________
_____________________________________________________________________________________________
_____________________________________________________________________________________________
_____________________________________________________________________________________________
_____________________________________________________________________________________________
_____________________________________________________________________________________________
_____________________________________________________________________________________________
_____________________________________________________________________________________________
_____________________________________________________________________________________________
_____________________________________________________________________________________________
_____________________________________________________________________________________________ 
 
 
 
 
 
 
 
 
Prof. Walmor Cardoso Godoi, M.Sc.  Página 19 
 
 
4 Estruturas de Controle 
4.1 Desvio condicional simples 
A tomada de decisão simples utiliza a instrução se...então...fim_se . Nesta instrução, se a 
condição estabelecida for verdadeira, serão executadas todas as instruções definidas entre 
se...então e fim_se, depois serão executadas todas as instruções existentes após fim_se. Se a 
condição estabelecida for falsa, se a condição estabelecida for falsa, serão executadas as 
instruções que estiverem definidas após a instrução fim_se. 
 
Diagrama de bloco 
 
 
 
 
 
 
 
 
 
 
 
Português Estruturado 
se (<condição>) então 
<instruções se a condição for verdadeira> 
fim_se 
< instruções se a condição for falsa ou após ser verdadeira> 
 
Exemplo 1: Ler dois valores numéricos, efetuar a adição e apresentar o resultado caso o valor 
somado seja maior que 10. 
 
 
 
 
 
4.2 Operadores relacionais 
Ao usar a instrução de tomada de decisão é necessário definir para ela uma condição. OS 
operadores relacionais realizam esta tarefa. 
 
== igual a 
> maior que 
< menor que 
>= maior ou igual a 
<= menor ou igual a 
<> ou =! diferente 
 
 
 
Prof. Walmor Cardoso Godoi, M.Sc.  Página 20 
 
 
4.3 Desvio condicional composto 
Diagrama de bloco 
 
 
 
 
 
 
 
Português Estruturado 
se (<condição>) então 
 <instruções para condição verdadeira> 
senão 
<instruções para condição falsa> 
fim_se 
 
Exemplo 2: Ler dois valores numéricos e efetuar a adição. Caso o valor somado seja maior ou 
igual a 10, deve ser apresentado somando a ele 5; caso o valor somado não seja maior ou igual a 
10, deve ser apresentado subtraído dele 7. 
 
Exemplo 3: Programa para calcular a média de alunos utilizando o desvio condicional composto: 
programa MÉDIA 
var 
 RESULTADO: caractere 
 N1, N2, N3, N4: real 
 SOMA, MEDIA: real 
início 
 leia N1, N2, N3, N4 
 SOMA ← N1+N2+N3+N4 
 MÉDIA ←SOMA/4 
 se (MEDIA>=7) então 
 RESULTADO ← “APROVADO” 
 senão 
 RESULTADO ← “REPROVADO” 
 fim_se 
escreva “Nota 1”, N1 
escreva “Nota 2”, N2 
escreva “Nota 3”, N3 
escreva “Nota 4”, N4 
escreva “Soma”, SOMA 
escreva “Média”, MEDIA 
escreva “Resultado”, RESULTADO 
fim

Outros materiais