Algoritmos com VisuAlg



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

Guia da Linguagem de Programação do VisuAlg*

Introdução a Algoritmos Parte 04

ALGORITMOS PARTE 01. Fabricio de Sousa Pinto

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

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

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

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

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

Algoritmo e Programação

AULA 12 FUNÇÕES Disciplina: Algoritmos e POO Professora: Alba Lopes alba.lopes@ifrn.edu.br

ERROS MAIS COMUNS COMETIDOS EM PROGRAMAS E ALGORITMOS

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

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

Algoritmos e Programação de Computadores

Algoritmos Computacionais ( Programas )

CURSO BÁSICO DE PROGRAMAÇÃO AULA 7

Curso: Ciência da Computação Disciplina: Construção de Compiladores Período: Prof. Dr. Raimundo Moura

Resolução de problemas e desenvolvimento de algoritmos

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

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

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

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

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

Aula 11 Introdução ao Pseudocódigo. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

Algoritmos I Aula 13 Java: Tipos básicos, variáveis, atribuições e expressões

PROGRAMAÇÃO DE COMPUTADORES (Teoria)

Manual do VisuAlg Curso Técnico em Informática Prof. Arley Rodrigues. Curso de Formação Profissional em Técnico em Informática

Conceitos Importantes:

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

TIPOS DE DADOS E VARIÁVEIS

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

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

ESTRUTURA CONDICIONAL

ALGORITMOS. Supervisão: Prof. Dr.º Denivaldo Lopes

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br

&XUVRGH,QWURGXomRDR (GLWRUGH3ODQLOKDV([FHO

Curso de Programação Computadores

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

Algoritmos: Estruturas de Repetição. Prof. Carlos Lopes

Aluísio Eustáquio da Silva

Linguagem algorítmica: Portugol

Componentes da linguagem C++

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

Linguagem e Técnicas de Programação I Operadores, expressões e funções. Prof. MSc. Hugo Souza Material desenvolvido por: Profa.

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

INTRODUÇÃO À PROGRAMAÇÃO BCC 201 TURMAS 31, 32 E AULA TEÓRICA 4 PROF. MARCELO LUIZ SILVA (R E D)

OPERADORES E ESTRUTURAS DE CONTROLE

CURSO TÉCNICO EM PROCESSAMENTO DE DADOS

Introdução aos cálculos de datas

Estruturas de Repetição Parte II PARA-ATÉ

Arquitetura de Computadores. Tipos de Instruções

INF 1005 Programação I

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM C/C++ Prof. Dr. Daniel Caetano

Lógica de Programação PROF. FLÁVIO IZO

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

CURSO TÉCNICO DE INFORMÁTICA

2. ENTRADA DE DADOS 2.1. TEXTOS

Internet e Programação Web

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

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

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

Desenvolvido por: Juarez A. Muylaert Filho - jamf@estacio.br Andréa T. Medeiros - andrea@iprj.uerj.br Adriana S. Spallanzani - spallanzani@uol.com.

Os objetivos indicados aplicam-se a duas linguagens de programação: C e PHP

Organização de programas em Python. Vanessa Braganholo

A Estação da Evolução

Algoritmos e Programação _ Departamento de Informática

Programação Elementar de Computadores Jurandy Soares

Introdução à Linguagem

Estruturas de Repetição

Prof. Esp. Adriano Carvalho

Bacharelado em Ciência e Tecnologia Processamento da Informação. Equivalência Portugol Java. Linguagem Java

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

ALGORITMOS MEMÓRIA, VARIÁVEIS E CONSTANTES, OPERADORES Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

Algoritmos e Programação Parte Teórica

Lógica de Programação

Criando um script simples

Algoritmos em Javascript

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

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS

Resumo VISUALG. A seção de declaração de variáveis começa com a palavra-chave var, e continua com as seguintes sintaxes:

ALGORITMOS AULA 2. Profª Amanda Gondim

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

Aula 02 Excel Operações Básicas

ICC Introdução para JavaScript

FERRAMENTAS BÁSICAS DA PROGRAMAÇÃO (cont)

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

INFORMÁTICA APLICADA AULA 03 ALGORITMOS

Java - Introdução. Professor: Vilson Heck Junior. vilson.junior@ifsc.edu.br

Sumário Algoritmos e Estrutura de Dados Repetição

AULA 2: INTRODUÇÃO A LINGUAGEM DE C. Curso: Ciência da Computação Profª.: Luciana Balieiro Cosme

JSP - ORIENTADO A OBJETOS

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

Programação I. Departamento de Engenharia Rural Centro de Ciências Agrárias

INTRODUÇÃO À LINGUAGEM C++

CONVENÇÃO DE CÓDIGO JAVA

Criar a classe Aula.java com o seguinte código: Compilar e Executar

e à Linguagem de Programação Python

Computação e Processamento de Dados CPD INF400

Transcrição:

Algoritmos com VisuAlg Prof Gerson Volney Lagemann Depto Eng de Produção e Sistemas UDESC - CCT

Algoritmos com VisuAlg Introdução A linguagem VisuAlg é simples, seu objetivo é disponibilizar um ambiente de programação no idioma português do Brasil utilizando para tal o Portugol muito usado na bibliografia da área Entre as principais características estruturais da linguagem vale destacar: O VisuAlg permite apenas um comando por linha; Todas as palavras-chave do VisuAlg foram implementadas sem acentos, cedilha, etc O VisuAlg não distingue maiúsculas e minúsculas no reconhecimento de palavras-chave e nomes de variáveis É permitida a inclusão de comentários: qualquer texto precedido de "//" é ignorado, até se atingir o final da sua linha O formato básico do pseudocódigo é o seguinte: algoritmo "semnome" // Função: // Autor: // Data: //Seção de Declarações inicio // Seção de Comandos fimalgoritmo Tipos de Dados inteiro: define variáveis numéricas do tipo inteiro, ou seja, sem casas decimais Ex idade, número de filhos, quantidade de estados do Brasil real: define variáveis numéricas do tipo real, ou seja, com casas decimais Ex salário, peso, temperatura caractere: define variáveis do tipo string, ou seja, cadeia de caracteres 2

Ex nome, endereço, frase 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 palavrachave vetor Nomes de Variáveis Os nomes das variáveis devem obrigatoriamente começar por uma letra Após a primeira letra poderá conter letras, números ou underline ( _ ), até um limite de 30 caracteres As variáveis podem ser simples ou estruturadas (vetores de uma ou duas dimensões) Variáveis não podem ter nomes iguais Iniciar a declaração de variáveis obrigatoriamente com o termo var, seguir com os nomes das variáveis separados por,, colocar o sinal : e finalmente informar o tipo daquela variável ou lista de variáveis Ex: var a: inteiro valor1, valor2 : real nome_aluno : caractere Obs: A identação da linha 1 para a linha 2 não é obrigatória, mas é recomendável para melhor visualização Constantes O VisuAlg tem três tipos de constantes: Numéricas: 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 O VisuAlg não suporta separadores de milhares Caracteres: qualquer cadeia de caracteres delimitada por aspas duplas (") 3

Lógicos: admite os valores VERDADEIRO ou FALSO Comando de Atribuição 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 Ex a <- 3 valor1 <- 15 valor2 <- valor1 + a nome_aluno <- "José da Silva" Expressões Aritméticas Operador Operação Exemplo Resultado + Adição 3 + 2 5 - Subtração 10-5 5 * Multiplicação 3 * 7 21 / Divisão 25 / 2 125 ^ Potenciação 5 ^ 2 25 OBS: - Não se usa o "X" para indicar a multiplicação, nem a barra horizontal de fração para indicar a divisão - Da mesma forma que a matemática, algumas operações têm prioridade sobre as outras A potenciação tem a maior prioridade entre todos os operadores A Multiplicação e a divisão devem ser operadas antes da adição e da subtração Para alterar as prioridades, novamente como na matemática, devemos usar os parênteses () Veja alguns exemplos de atribuição e expressões aritméticas: 4

Palavras Reservadas do VisuAlg aleatório enquanto funcao para algoritmo entao inicio passo arquivo escolha int pausa asc escreva inteiro pos ate escreval interrompa real carac faca leia procedimento caracpnum falso limpatela repita caractere fimalgoritmo logico retorne caso fimenquanto maiusc se compr fimescolha minusc senao copia fimfuncao mod timer cronometro fimpara nao var debug fimprocedimento numpcarac vetor e fimrepita ou verdadeiro eco fimse outrocaso xou Entrada de Dados no Programa Para passar um dado para o programa vamos usar o comando Leia Assim, se você precisa das notas das provas de um aluno para que o programa calcule a média você deve usar esta instrução para que o usuário do programa possa digitá-la e então o programa possa calcular a média A sintaxe deste comando é: Leia <Nome_De_Variável> Se definíssemos as variáveis: var nota1, nota2, media : real então usaríamos o comando: 5

Leia nota1 Leia nota2 ou Leia (nota1, nota2) Supondo que o usuário digitasse 75" teclasse ENTER e digitasse 65 e teclasse ENTER, o valor "75" seria atribuído a variável nota1 e o valor 65 a nota2, automaticamente Quando usar leia(nota1, nota2) é necessário que após digitar a nota1 seja teclado ENTER e então digitada a nota2 e teclado ENTER novamente Saída de Dados do Programa A lógica de qualquer programa indica que pelo menos um resultado ele deve fornecer Podemos ter programas que não necessariamente necessitem ler algum dado para sua execução, porém não tem sentido um programa executar e não exibir nenhuma informação a respeito do que foi processado Nos algoritmos usamos o comando Escreva A sintaxe deste comando é a seguinte: Escreva <Expressão1, Expressão2, etc> Expressão1, Expressão2 são valores de qualquer tipo, separados por vírgula Estes valores podem ser constantes ou variáveis Caso a expressão seja uma variável o que será exibido é o seu valor Comandos (algoritmo) Resultado (tela do computador) Escreva ("Alô, mundo!") Alô, mundo! Escreva (20) 20 var nome : caracter var idade : numerico nome "José" idade 40 6

Escreva (nome) Escreva ("O meu nome é ", nome) Escreva ("Tenho ", idade, " anos") José O meu nome é José Tenho 40 anos Mais exemplos: Comando Comentário 1 var A : inteiro Definição de uma variável de nome A do tipo inteiro A 3 O valor de A passa a ser 3 Escreva (A * 5) Será mostrado o valor 15, pois A=3 e 3 * 5 = 15 2 var A, B : inteiro Definição de duas variáveis de nome A e B do tipo inteiro A 10 O valor de A passa a ser 10 B A * 3 O valor de B passa a ser 30 Escreva (B A + 1) Será mostrado o valor 21 (30 10 + 1) B 40 O valor de B passa a ser 40 Escreva (B A + 1) Será mostrado o valor 31 (40 10 + 1) 3 Var x inteiro Definição de uma variável de nome x do tipo inteiro Leia x Será obtido o número que será digitado pelo usuário Escreva (x * 2) Será mostrado o dobro do valor digitado pelo usuário Operadores Relacionais Nome Símbolo Igual = Diferente <> Menor < Maior > Menor ou igual <= Maior ou igual >= 7

Instrução de Decisão SE Forma Geral: se <condição> entao instrução_1 instrução_2 instrução_n senao instrução_1 instrução_2 instrução_n fimse O resultado da <condição> é obtida pela interpretação lógica a partir da utilização de um dos operadores relacionais acima ou ainda de uma combinação entre eles Veja o exemplo a seguir: algoritmo "media" // Função : media // Autor : Gerson // Data : 09/08/2010 // Seção de Declarações var n1, n2: inteiro m : real inicio // Seção de Comandos Escreva ("Informe a nota1: ") leia (n1) escreva ("Informe a nota 2: ") leia (n2) 8

m <- (n1 + n2) / 2 escreva ("Media = ", m) se m < 70 entao Escreva ("Em EXAME") Senao Escreva ("APROVADO") fimse fimalgoritmo OBS: - O deslocamento de espaços usado no exemplo acima na instrução se não é obrigatória, serve somente para deixar o programa mais claro - É conveniente antes de ler algum dado do usuário exibir o que está sendo pedido que seja digitado ( Escreva ("Informe a nota1: ")) A instrução se pode ainda aparecer sem o complemento senao Veja: Forma Geral: se <condição> entao instrução_1 instrução_2 instrução_n fimse Instruções de Repetição A Instrução de Repetição Enquanto_Faça As instruções de repetição servem para que uma determinada sequência de instruções seja repetida um número finito de vezes O número de repetições é controlado por uma instrução lógica que caso VERDADEIRA executa as instruções do laço e caso FALSA abandona o laço, seguindo para a primeira instrução após o fimenquanto 9

Forma Geral: enquanto <expressão_lógica> faca instrução_1 instrução_2 LAÇO instrução_n fimenquanto Veja exemplo abaixo INICIO A 1 algoritmo "lista" // Função : lista // Autor : Gerson // Data : 09/08/2010 A< 11 N FIM // Seção de Declarações var A: inteiro S Escreva (A) inicio // Seção de Comandos A <- 1 enquanto a < 11 faca escreva (A) A 1 + 1 A <- A + 1 fimenquanto fimalgoritmo A Instrução de Repetição Para_Faça Similar a instrução enquanto_faça a para_faça serve para que uma determinada sequência de instruções seja repetida um número finito de vezes O número de repetições é controlado por uma instrução lógica que caso VERDADEIRA executa as instruções do laço e caso FALSA abandona o laço, seguindo para a primeira instrução após o fimpara A diferença entre as duas instruções está no incremento automático que a instrução fimpara apresenta 10

Forma Geral: para <variável> de <valor_inicial> ate <valor_final> <passo> faca instrução_1 instrução_2 LAÇO instrução_n fimpara Veja exemplo abaixo algoritmo "lista" // Função : lista // Autor : Gerson // Data : 09/08/2010 // Seção de Declarações var A: inteiro inicio // Seção de Comandos para A de 1 ate 10 passo 1 faca escreva (A) fimpara fimalgoritmo Referências Bibliográficas MAZIOLI, J R Apostila: Lógica de Programação com VisuAlg CEET: Vila Velha ES, 2008 SOUZA, C M VisuAlg http://wwwapoioinformaticainfbr/programas - acessado em 09/08/2010 11