
































































Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
- - - - - - -
Tipologia: Notas de estudo
1 / 72
Esta página não é visível na pré-visualização
Não perca as partes importantes!

































































A idéia de escrever este programa nasceu a partir de uma necessidade: uma ferramenta que permitisse aos alunos iniciantes em programação o exercício dos seus conhecimentos num ambiente próximo da realidade. Em minha experiência como professor desta disciplina, tenho notado que a abstração de "rodar o chinês", ou seja, de executar um programa apenas no papel, é um grande obstáculo (quase intransponível para alguns) no aprendizado das técnicas de elaboração de algoritmos. Por outro lado, submeter um iniciante aos rigores de uma linguagem de programação como Pascal ou ao “esoterismo” do C também me parecia exagerado. O ideal seria uma linguagem mais simples, parecida com o "Portugol", de grande popularidade nos meios acadêmicos e presente nos livros mais utilizados; com ela, os princípios básicos da programação estruturada poderiam ser ensinados sem que a curva de aprendizagem fosse íngreme. Além disso, esta ferramenta deveria também ser capaz de simular o que acontece na tela do computador com o uso dos famosos comandos "leia" e "escreva", bem como possibilitar a verificação dos valores das variáveis, o acompanhamento passo a passo da execução de um algoritmo (pelo seu grande valor didático), e até mesmo suportar um modo simples de depuração. Aliado a tudo isto, deveria estar um editor de texto com recursos razoáveis (tais como abrir e salvar arquivos) e que dispusesse de todos os principais recursos de um ambiente gráfico.
O VisuAlg é para mim a concretização desta idéia. Espero que, colocando-o em domínio público (numa versão freeware ), possa ajudar professores e alunos de programação, e também ser ajudado por eles através de sugestões e críticas que visem sempre a sua melhoria. A idéia básica é manter o VisuAlg simples: deve ser como as rodinhas de apoio que uma criança usa ao aprender a andar de bicicleta, e que são retiradas quando deixam de ser necessárias. Isto não quer dizer que o VisuAlg não possa ou deva ser melhorado: conto com a colaboração de todos que vierem a utilizá-lo.
O VisuAlg é um programa simples, que não depende de DLLs, OCXs ou outros componentes. Sua instalação não copia arquivos para nenhuma outra pasta a não ser aquela em que for instalado, e exige cerca de 1 MB de espaço em disco. Pode ser executado sob Windows 95 ou posterior, e tem melhor aparência com resolução de vídeo de 800x600 ou maior.
A Tela Principal do VisuAlg O menu do programa A linguagem de programação do VisuAlg Referências da linguagem do VisuAlg Auto-digitação e sugestão de digitação
Abrir (Ctrl-A): Abre um arquivo anteriormente gravado, substituindo o texto presente no editor. Se este tiver sido modificado, o VisuAlg pedirá sua confirmação para salvá-lo antes que seja sobreposto. Novo (Ctrl-N): Cria um novo "esqueleto" de pseudocódigo, substituindo o texto presente no editor. Se este tiver sido modificado, o VisuAlg pedirá sua confirmação para salvá-lo antes que seja sobreposto. Salvar (Ctrl-S): Grava imediatamente o texto presente no editor. Na primeira vez que um novo texto é gravado, o VisuAlg pede seu nome e localização. Imprimir: Imprime imediatamente na impressora padrão o texto presente no editor. Para configurar a impressão, use o comando Imprimir do menu Arquivo (acessível também pelo atalho Ctrl-P ). Cortar (Ctrl-X): Apaga texto selecionado, armazenando-o em uma área de transferência. Copiar (Ctrl-C): Copia o texto selecionado para a área de transferência. Colar (Ctrl-V): Copia texto da área de transferência para o local em que está o cursor. Gravar bloco de texto: Permite a gravação em arquivo de um texto selecionado no editor. A extensão sugerida para o nome do arquivo é .inc. Inserir bloco de texto: Permite a inserção do conteúdo de um arquivo. A extensão sugerida para o nome do arquivo é .inc. Desfazer (Ctrl-Z): Desfaz último comando efetuado. Refazer (Shift-Ctrl-Z): Refaz último comando desfeito. Localizar (Ctrl-L): Localiza no texto presente no editor determinada palavra especificada. Substituir (Ctrl-U): Localiza no texto presente no editor determinada palavra especificada, substituindo-a por outra. Corrigir Indentação (Ctrl-G) : Corrige automaticamente a indentação (ou tabulação) do pseudocódigo, tabulando cada comando interno com espaços à esquerda. Numerar linhas: Ativa ou desativa a exibição dos números das linhas na área à esquerda do editor. A linha e a coluna do editor em que o cursor está em um determinado momento também são mostradas na barra de status (parte inferior da tela). Por motivos técnicos, esta opção é automaticamente desativada durante a execução do pseudocódigo, mas volta a ser ativada logo em seguida. Mostrar variáveis modificadas : Ativa ou desativa a exibição da variável que está sendo modificada. Como o número de variáveis pode ser grande, muitas podem estar fora da janela de visualização; quando esta característica está ativada, o VisuAlg rola a grade de exibição de modo que cada variável fique visível no momento em está sendo modificada. Este recurso é especialmente útil quando se executa um pseudocódigo passo a passo. Por questões de desempenho, a configuração padrão desta característica é desativada, quando o pseudocódigo está sendo executado automaticamente. No entanto, basta clicar este botão para executá-lo automaticamente com a exibição ativada. No final da execução, a configuração volta a ser desativada. Restaurar tela inicial: Retorna a divisão da tela ao formato inicial, caso você tenha mudado o tamanho da área do editor de texto, quadro de variáveis ou simulador de saída.
Executar (F9): Inicia (ou continua) a execução automática do pseudocódigo. Executar com timer (Shift-F9): : Insere um atraso (que pode ser especificado no intervalo ao lado) antes da execução de cada linha. Também realça em fundo azul o comando que está sendo executado, da mesma forma que na execução passo a passo. Intervalo do timer : Atraso em cada linha, para quando se deseja executar o pseudocódigo com timer. Passo (F8): Inicia (ou continua) a execução linha por linha do pseudocódigo, dando ao usuário a oportunidade de acompanhar o fluxo de execução, os valores das variáveis e a pilha de ativação dos subprogramas. Parar (Ctrl-F2): Termina imediatamente a execução do pseudocódigo. Evidentemente, este botão fica desabilitado quando o pseudocódigo não está sendo executado. Liga/desliga breakpoint (F5): Insere/remove um ponto de parada na linha em que esteja o cursor. Estes pontos de parada são úteis para a depuração e acompanhamento da execução dos pseudocódigos, pois permitem a verificação dos valores das variáveis e da pilha de ativação de subprogramas. Desmarcar todos os breakpoints (Ctrl-F5): Desativa todos os breakpoints que estejam ativados naquele momento. Executar em modo DOS: Com esta opção ativada, tanto a entrada como a saída-padrão passa a ser uma janela que imita o DOS, simulando a execução de um programa neste ambiente. Gerar valores aleatórios: Ativa a geração de valores aleatórios que substituem a digitação de dados. A faixa padrão de valores gerados é de 0 a 100 inclusive, mas pode ser modificada (basta alterar intervalo ao lado). Para a geração de dados do tipo caractere, não há uma faixa pré-estabelecida: os dados gerados serão sempre strings de 5 letras maiúsculas. Intervalo dos valores aleatórios: Faixa de valores que serão gerados automaticamente, quando esta opção estiver ativada. Perfil (F7): Após a execução de um pseudocódigo, exibe o número de vezes que cada umas das suas linhas foi executada. É útil para a análise de eficiência (por exemplo, nos métodos de ordenação). Mostrar pilha de ativação (Ctrl-F3): Exibe a pilha de subprogramas ativados num dado momento. Convém utilizar este comando em conjunto com breakpoints ou com a execução passo a passo. Ajuda (F1): Possibilita acesso às páginas de ajuda e às informações sobre o VisuAlg.
Quadro de Variáveis
É formado por uma grade na qual são mostrados o escopo de cada variável (se for do programa principal, será global; se for local, será apresentado o nome do subprograma onde foi declarada), seus nomes (também com os índices, nos casos em que sejam vetores), seu tipo ("I" para inteiro, "R" para real, "C" para caractere e "L" para lógico) e o seu valor corrente. A versão atual do VisuAlg permite a visualização de até 500 variáveis (contando individualmente cada elemento dos vetores).
A Barra de Status
Situada na parte inferior da tela, esta barra contém dois painéis: o primeiro mostra a linha e a coluna onde o cursor está, e o segundo mostra a palavra Modificado no caso em que o
Este menu compõe-se de 7 partes:
Arquivo: Possui os comandos para se abrir, salvar e imprimir algoritmos:
Novo: Cria um novo "esqueleto" de pseudocódigo, substituindo o texto existente no editor. Se este texto anterior tiver sido modificado, o VisuAlg pedirá sua confirmação para salvá-lo antes que seja sobreposto. Abrir: Abre o texto de um pseudocódigo anteriormente gravado, substituindo o texto existente no editor. Se este tiver sido modificado, o VisuAlg pedirá sua confirmação para salvá-lo antes que seja sobreposto. Salvar: Salva imediatamente o texto presente no editor. Caso seja a primeira vez que um novo texto é gravado, o VisuAlg pedirá o nome do arquivo e sua localização. Salvar como: Permite salvar o texto presente no editor exibindo antes uma janela na qual se pode escolher o nome do arquivo e sua localização. Enviar por email: Permite o envio por email do texto presente no editor. Imprimir: Permite a impressão do algoritmo corrente, mostrando antes a janela de configuração de impressão (o correspondente botão da barra de tarefas imprime imediatamente o texto do pseudocódigo na impressora padrão). Sair: Abandona o VisuAlg.
Além destes comandos, há ainda a lista dos 5 últimos algoritmos utilizados, que podem ser abertos diretamente ao se escolher o seu nome.
Editar: Além dos conhecidos comandos de um editor de texto (copiar, cortar, colar, desfazer, refazer, selecionar tudo, localizar, localizar de novo, substituir), há também as seguintes opções:
Corrigir indentação: Corrige automaticamente a indentação do pseudocódigo, tabulando cada comando interno com espaços à esquerda. Gravar bloco de texto: Permite a gravação em arquivo de um texto selecionado no editor. A extensão sugerida para o nome do arquivo é .inc. Inserir bloco de texto: Permite a inserção do conteúdo de um arquivo. A extensão sugerida para o nome do arquivo é .inc.
Exibir: Possui os comandos para ativar/desativar as seguintes características:
Número de linhas: Ativa/desativa a exibição da numeração das linhas na área à esquerda do editor. A numeração corrente da posição do cursor também é mostrada na primeira parte da barra de status, situada na parte inferior da tela. Por motivos técnicas, a numeração é desativada durante a execução do pseudocódigo, voltando à situação anterior logo em seguida. Variáveis modificadas: Ativa/desativa a exibição da variável que está sendo modificada. Como o número de variáveis pode ser grande, muitas podem estar fora da janela de visualização; quando esta característica está ativada, o VisuAlg rola a grade de exibição de modo que cada variável fique visível no momento em está sendo modificada. Este recurso é especialmente útil quando se executa um pseudocódigo passo a passo. Por questões de desempenho, a configuração padrão desta característica é desativada, quando o pseudocódigo está sendo executado automaticamente. No entanto, basta clicar este botão para executá-lo automaticamente com a exibição ativada. No final da execução, a configuração volta a ser desativada.
Pseudocódigo: Contém os comandos relativos à execução do algoritmo:
Executar: Inicia (ou continua) a execução automática do pseudocódigo. Passo a passo: Inicia (ou continua) a execução linha por linha do pseudocódigo, dando ao usuário a oportunidade de acompanhar o fluxo de execução, os valores das variáveis e a pilha de ativação dos subprogramas. Executar com timer : Insere um atraso (que pode ser especificado) antes da execução de cada linha. Também realça em fundo azul o comando que está sendo executado, da mesma forma que na execução passo a passo. Parar: Termina imediatamente a execução do pseudocódigo. Evidentemente, este item fica desabilitado quando o pseudocódigo não está sendo executado. Liga/desliga breakpoint : Insere/remove um ponto de parada na linha em que esteja o cursor. Estes pontos de parada são úteis para a depuração e acompanhamento da execução dos pseudocódigos, pois permitem a verificação dos valores das variáveis e da pilha de ativação de subprogramas. Desmarcar todos os breakpoints : Desativa todos os breakpoints que estejam ativados naquele momento. Executar em modo DOS: Com esta opção ativada, tanto a entrada como a saída-padrão passa a ser uma janela que imita o DOS, simulando a execução de um programa neste ambiente. Gerar valores aleatórios: Ativa a geração de valores aleatórios que substituem a digitação de dados. A faixa padrão de valores gerados é de 0 a 100 inclusive, mas pode ser modificada. Para a geração de dados do tipo caractere, não há uma faixa pré-estabelecida: os dados gerados serão sempre strings de 5 letras maiúsculas. Perfil: Após a execução de um pseudocódigo, exibe o número de vezes que cada umas das suas linhas foi executada. É útil para a análise de eficiência (por exemplo, nos métodos de ordenação). Pilha de ativação: Exibe a pilha de subprogramas ativados num dado momento. Convém utilizar este comando em conjunto com breakpoints ou com a execução passo a passo.
Linguagens: Permite a tradução automático do pseudocódigo presente no editor para outras linguagens de programação. Atualmente, apenas a tradução para Pascal está implementada, mas ainda em fase de testes.
Ferramentas: Neste menu, é possível configurar algumas opções do VisuAlg: cores e tipos de letras na exibição do pseudocódigo, número de espaços para indentação automática, etc.
Ajuda: Entre outras coisas, possibilita acesso às páginas de ajuda e às informações sobre o VisuAlg.
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):
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
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:
__ : _ _ : vetor "[" " ]" de __
Na __ , os nomes das variáveis estão separados por vírgulas. Na __ , os __ são separados por vírgulas, e têm a seguinte sintaxe:
__ : __ .. __
Na versão atual do VisuAlg, tanto __ como __ devem ser inteiros. Além disso, exige-se evidentemente que __ seja maior do que __.
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:
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.
Alguns exemplos de atribuições, usando as variáveis declaradas acima:
a <- 3 Valor1 <- 1. Valor2 <- Valor1 + a vet[1] <- vet[1] + (a * 3) matriz[3,9] <- a/4 - 5 nome_do_aluno <- "José da Silva" sinalizador <- FALSO
O VisuAlg tem uma característica para a criação de pseudocódigos que pode aumentar a rapidez da digitação e também diminuir a possibilidade de erros: é a auto-digitação. Para utilizar esta característica, basta escrever uma abreviatura da palavra-chave ou do comando a ser diigtado e teclar Ctrl-Espaço. O VisuAlg completa então o comando automaticamente, colocando o cursor no ponto adequado para se continuar a digitação (nos exemplos abaixo, este ponto é indicado através de um *). Eis a lista de abreviaturas com os respectivos comandos:
! - (Ponto de exclamação) Cria um modelo de pseudocódigo.
algoritmo "semnome"
inicio fimalgoritmo
// Algoritmo : * // Função : // Autor : // Data :
ale, aof, aon - Inserem os comandos aleatorio, aleatorio off ou aleatorio on, respectivamente.
alg - Insere a linha algoritmo e pede a digitação do seu nome.
algoritmo "*"
arq - Insere o comando arquivo e pede a digitação do seu nome.
arquivo "*"
cof, con - Inserem os comandos cronometro off ou cronometro on, respectivamente.
dcc - Insere uma declaração de variáveis caracteres.
var * : caractere
dcl - Insere uma declaração de variáveis lógicas.
var * : logico
dcr - Insere uma declaração de variáveis reais.
var * : real
deb - Insere o comando debug.
eof, eon - Inserem os comandos eco off ou eco on, respectivamente.
esc - Insere o comando escreva.
escl - Insere o comando escolha (sem a cláusula outrocaso).
escolha * caso fimescolha
esco - Insere o comando escolha (com a cláusula outrocaso).
escolha * caso outrocaso fimescolha
enq - Insere o comando enquanto.
enquanto * faca fimenquanto
fal - Insere a linha fimalgoritmo.
ini - Insere a linha inicio.
int - Insere o comando interrompa.
lep - Insere o comando leia.
leia (*)
par - Insere o comando para.
para * de 1 ate faca fimpara
parp - Insere o comando para com passo.
para * de ate passo faca fimpara
rep - Insere o comando repita.
repita
ate
repf - Insere o comando repita com fimrepita.
repita
fimrepita
see - Insere o comando se sem a alternativa senao.
Toda linguagem de programação já vem com um grupo de funções que facilitam a vida do programador. Estas funções realizam os cálculos aritméticos, trigonométricos e de manipulação e conversão de dados mais comuns; assim, o programador não tem que reinventar a roda a cada programa que faz. A este grupo de funções dá-se às vezes o nome de biblioteca.
Como usar uma função? Em termos simples, uma função pode ser usada em qualquer lugar onde uma variável também pode, a não ser, naturalmente, no "lado esquerdo da seta" em um comando de atribuição - uma função produz (diz-se no linguajar dos programadores retorna ) um valor, e não o recebe.
Abs( expressão) - Retorna o valor absoluto de uma expressão do tipo inteiro ou real. Equivale a | expressão | na álgebra. ArcCos( expressão) - Retorna o ângulo (em radianos) cujo co-seno é representado por expressão. ArcSen( expressão) - Retorna o ângulo (em radianos) cujo seno é representado por expressão. ArcTan( expressão) - Retorna o ângulo (em radianos) cuja tangente é representada por expressão. Cos( expressão) - Retorna o co-seno do ângulo (em radianos) representado por expressão. CoTan( expressão) - Retorna a co-tangente do ângulo (em radianos) representado por expressão. Exp( base, expoente) - Retorna o valor de base elevado a expoente, sendo ambos expressões do tipo real. GraupRad( expressão) - Retorna o valor em radianos correspondente ao valor em graus representado por expressão. Int( expressão) - Retorna a parte inteira do valor representado por expressão. Log( expressão) - Retorna o logaritmo na base 10 do valor representado por expressão. LogN( expressão) - Retorna o logaritmo neperiano (base e) do valor representado por expressão. Pi - Retorna o valor 3.141592. Quad( expressão) - Retorna quadrado do valor representado por expressão. RadpGrau( expressão) - Retorna o valor em graus correspondente ao valor em radianos representado por expressão. RaizQ( expressão) - Retorna a raiz quadrada do valor representado por expressão. Rand - Retorna um número real gerado aleatoriamente, maior ou igual a zero e menor que um. RandI( limite) - Retorna um número inteiro gerado aleatoriamente, maior ou igual a zero e menor que limite. Sen( expressão) - Retorna o seno do ângulo (em radianos) representado por expressão. Tan( expressão) - Retorna a tangente do ângulo (em radianos) representado por expressão.
Os valores que estão entre parênteses, representados pelas palavras como expressão , base e expoente , são os parâmetros, ou como dizem alguns autores, os argumentos que passamos para a função para que realize seus cálculos e retorne um outro, que usaremos no programa. Algumas funções, como Pi e Rand, não precisam de parâmetros, mas a maioria tem um ou mais. O valor dos parâmetros naturalmente altera o valor retornado pela função.
A seguir temos alguns exemplos que ilustram o uso destas funções.
algoritmo "exemplo_funcoes"
var a, b, c : real
inicio
a <- 2 b <- 9 escreval( b - a ) // será escrito 7 na tela escreval( abs( a - b ) ) // também será escrito 7 na tela c <- raizq( b ) // c recebe 3, a raiz quadrada de b, que é 9 // A fórmula da área do círculo é pi (3.1416) vezes raio ao quadrado... escreval("A área do circulo com raio " , c , " é " , pi * quad(c) ) // Um pouco de trigonometria... escreval("Um ângulo de 90 graus tem " , grauprad(90) , " radianos" ) escreval( exp(a,b) ) // escreve 2 elevado à 9ª, que é 512 // escreve 1, que é a parte inteira de 1.8, resultado de 9/(3+2) escreval( int( b / ( a + c ) ) )
fimalgoritmo
Funções para manipulação de cadeias de caracteres
(strings)
Asc (s : caracter) : Retorna um inteiro com o código ASCII do primeiro caracter da expressão. Carac (c : inteiro) : Retorna o caracter cujo código ASCII corresponde à expressão. Caracpnum (c : caracter) : Retorna o inteiro ou real representado pela expressão. Corresponde a StrToInt() ou StrToFloat() do Delphi, Val() do Basic ou Clipper, etc. Compr (c : caracter) : Retorna um inteiro contendo o comprimento (quantidade de caracteres) da expressão. Copia (c : caracter ; p, n : inteiro) : Retorna um valor do tipo caracter contendo uma cópia parcial da expressão, a partir do caracter p, contendo n caracteres. Os caracteres são numerados da esquerda para a direita, começando de 1. Corresponde a Copy() do Delphi, Mid$() do Basic ou Substr() do Clipper. Maiusc (c : caracter) : Retorna um valor caracter contendo a expressão em maiúsculas. Minusc (c : caracter) : Retorna um valor caracter contendo a expressão em minúsculas. Numpcarac (n : inteiro ou real) : Retorna um valor caracter contendo a representação de n como uma cadeia de caracteres. Corresponde a IntToStr() ou FloatToStr() do Delphi, Str() do Basic ou Clipper. Pos (subc, c : caracter) : Retorna um inteiro que indica a posição em que a cadeia subc se encontra em c, ou zero se subc não estiver contida em c. Corresponde funcionalmente a Pos() do Delphi, Instr() do Basic ou At() do Clipper, embora a ordem dos parâmetros possa ser diferente em algumas destas linguagens.
A seguir temos alguns exemplos que ilustram o uso destas funções.
algoritmo "exemplo_funcoes2"
var a, b, c : caracter
inicio
a <- "2" b <- "9" escreval( b + a ) // será escrito "92" na tela escreval( caracpnum(b) + caracpnum(a) ) // será escrito 11 na tela
Todo mundo que tem contato com computadores sabe que eles precisam ser programados para executar tarefas. Um programa é um conjunto de milhares de instruções que indicam ao computador, passo a passo, o que ele tem que fazer. Estes programas são construídos com ferramentas chamadas "linguagens de programação". Estas linguagens contém os comandos que fazem o computador escrever algo na tela, realizar cálculos aritméticos, receber uma entrada de dados via teclado, e milhares de outras coisas, mas estes comandos precisam estar em uma ordem lógica e contribuir, cada um, para a tarefa em questão. A lógica da programação, então, é o ponto principal na criação de aplicações para os computadores, e na verdade, ela independe da linguagem de programação utilizada.
Provavelmente você já viu uma receita de bolo. Nela estão colocados os ingredientes necessários e nas quantidades corretas; também na receita encontramos o modo de preparação, dizendo o que deve ser misturado com o que, em que ordem, o tempo em que o bolo ficará no forno, etc. A este conjunto de instruções poderíamos dar o nome de "algoritmo para a confecção de um bolo". A palavra algoritmo significa "conjunto de regras e instruções, que devem ser seguidas na ordem especificada, para resolver um problema específico". Este termo está ligado às ciências da computação, mas na realidade pode ser aplicado a qualquer problema cuja solução possa ser decomposta em um grupo de instruções. A única diferença no caso é que, em relação ao computador, os comandos têm que ser precisos, e cada um deve conter uma tarefa, apenas. Um computador não entenderia a instrução "bata a massa até atingir a consistência desejada..." Provavelmente teríamos que dizer "ligue a batedeira; bata a massa durante 5 minutos; delisgue a batedeira", ou coisa parecida.
O termo "processamento de dados" é muitas vezes utilizado em conjunto com computadores, pois isto é o que eles fazem: processar dados. Daí podemos extrair os dois componentes básicos de um algoritmo (de agora em diante, esta palavra será sempre utilizada no contexto da informática): dados e código. Dados são os valores (números, nomes, etc.) de que precisamos para resolver o problema, e código são os comandos que usaremos para manipular e "processar" os dados. A partir de agora estudaremos estes dois componentes
Os dados existem nas mais variadas formas, tanto no mundo real quanto nos computadores, mas para este curso usaremos três tipos, que serão suficientes embora não representem toda a gama possível. Estes tipos são:
Exemplos: 1.23 -3 45657 0.66 -897.06 etc.
Nos nossos exemplos daremos a todas as variáveis que armazenam valores numéricos o tipo numerico (assim mesmo, sem acento).
Exemplos: "Rio de Janeiro" "Computador" "A" "?" "Fora!" "1234"
Nos nossos exemplos daremos a todas as variáveis que armazenam valores literais o tipo caracter.
Nos nossos exemplos daremos a todas as variáveis que armazenam valores lógicos o tipo logico (assim mesmo, sem acento).
E como os dados estão representados nos algoritmos? De duas maneiras: como constantes , ou seja, o dado escrito como ele é, como nos exemplos acima, e armazenados em variáveis.
Variáveis são locais de armazenamento temporário para os dados. É um conceito parecido com
Regras para a formação de nomes de variáveis
Toda linguagem de programação tem regras para a formação de nomes de variáveis, e nós também teremos: neste curso, os nomes de variáveis deverão começar com uma letra, e depois poderão ter qualquer combinação de letras, números e sublinhado ("_"). Não pode haver espaços no interior dos nomes, e não haverá diferenciação entre maiúsculas e minúsculas (ou seja, os nomes "Salario", "SALARIO", e "salario" se referem à mesma variável. Exemplos: Nomes Válidos: Valor1, Valor2, Nota_do_Aluno, Salario Nomes Inválidos: 1Valor, 2Valor, _Salario, Nota.do.Aluno, Media- Aritmetica
Na próxima lição estudaremos os comandos básicos para a construção de algoritmos.