1) O documento discute conceitos básicos de programação e algoritmos, incluindo o que é um programa, linguagem de programação, variáveis, tipos de variáveis e algoritmos.
2) É explicado o que é pseudocódigo e como ele pode ser usado para representar algoritmos de forma estruturada antes de se programar em linguagens específicas.
3) São apresentados exemplos simples de algoritmos em pseudocódigo para calcular a média de um aluno e ler um número digitado pelo usuário.
Este documento apresenta as seguintes informações sobre a linguagem G-Portugol:
1) Discute as características gerais da linguagem, incluindo seus tipos de dados primitivos como inteiro e literal, e estruturas de controle como condicionais e repetição.
2) Explica que o objetivo do manual é servir como referência para a linguagem G-Portugol e suas ferramentas, assumindo que o leitor tenha conhecimento prévio de programação.
3) Fornece um resumo dos tópicos ab
Lista de exercicios algoritmos resolvida-Mauro Pereira
O documento apresenta algoritmos resolvidos em pseudocódigo para exercícios de estruturas sequenciais, condicionais, repetição e vetores. Inclui explicações sobre cada algoritmo e diferentes soluções propostas.
1) O documento discute pseudocódigo, apresentando sua estrutura básica, notação, comandos como declaração de variáveis, atribuição, entrada e saída de dados.
2) É apresentado um exemplo de algoritmo para calcular a média de duas notas e realizar testes em tabelas.
3) Exercícios são propostos para fixar conceitos e aplicar pseudocódigo na resolução de problemas.
O documento apresenta 33 exercícios de algoritmos para serem resolvidos, variando em complexidade, desde operações matemáticas simples até cálculos com múltiplos parâmetros. Os exercícios abordam tópicos como entrada e saída de dados, condicionais, laços de repetição e funções.
Material de Apoio de Algoritmo e Lógica de Programaçãorodfernandes
O documento discute algoritmos e lógica de programação. Explica que algoritmos são sequências finitas de passos para executar tarefas e que programas são algoritmos escritos em linguagens de programação. Também descreve formas de representar algoritmos como pseudocódigo e fluxogramas e os principais tipos de dados, variáveis, constantes e operadores usados em algoritmos.
Este documento apresenta conceitos básicos de programação e algoritmia. Descreve as principais etapas na criação de um programa, como definição do problema, planeamento da resolução, codificação, teste e depuração. Explora ainda conceitos-chave como algoritmos, operações elementares de sistemas de informação e operadores lógicos e aritméticos.
O documento descreve algoritmos que utilizam estruturas condicionais "se-senão-se" e "escolha-caso" para executar comandos diferentes de acordo com valores de variáveis ou opções selecionadas pelo usuário. É apresentado um exemplo de algoritmo que imprime o curso do aluno baseado no código digitado e outro que exibe mensagens para cada opção de menu escolhida.
Descritiva Narrativa (Lógica de Programação)Gercélia Ramos
Existem diversas formas de se representar um algoritmo, neste slide estaremos falando sobre a Descritiva Narrativa onde descrevemos o passo-a-passo de um algoritmo.[Aula para curso técnico]
Este documento apresenta as seguintes informações sobre a linguagem G-Portugol:
1) Discute as características gerais da linguagem, incluindo seus tipos de dados primitivos como inteiro e literal, e estruturas de controle como condicionais e repetição.
2) Explica que o objetivo do manual é servir como referência para a linguagem G-Portugol e suas ferramentas, assumindo que o leitor tenha conhecimento prévio de programação.
3) Fornece um resumo dos tópicos ab
Lista de exercicios algoritmos resolvida-Mauro Pereira
O documento apresenta algoritmos resolvidos em pseudocódigo para exercícios de estruturas sequenciais, condicionais, repetição e vetores. Inclui explicações sobre cada algoritmo e diferentes soluções propostas.
1) O documento discute pseudocódigo, apresentando sua estrutura básica, notação, comandos como declaração de variáveis, atribuição, entrada e saída de dados.
2) É apresentado um exemplo de algoritmo para calcular a média de duas notas e realizar testes em tabelas.
3) Exercícios são propostos para fixar conceitos e aplicar pseudocódigo na resolução de problemas.
O documento apresenta 33 exercícios de algoritmos para serem resolvidos, variando em complexidade, desde operações matemáticas simples até cálculos com múltiplos parâmetros. Os exercícios abordam tópicos como entrada e saída de dados, condicionais, laços de repetição e funções.
Material de Apoio de Algoritmo e Lógica de Programaçãorodfernandes
O documento discute algoritmos e lógica de programação. Explica que algoritmos são sequências finitas de passos para executar tarefas e que programas são algoritmos escritos em linguagens de programação. Também descreve formas de representar algoritmos como pseudocódigo e fluxogramas e os principais tipos de dados, variáveis, constantes e operadores usados em algoritmos.
Este documento apresenta conceitos básicos de programação e algoritmia. Descreve as principais etapas na criação de um programa, como definição do problema, planeamento da resolução, codificação, teste e depuração. Explora ainda conceitos-chave como algoritmos, operações elementares de sistemas de informação e operadores lógicos e aritméticos.
O documento descreve algoritmos que utilizam estruturas condicionais "se-senão-se" e "escolha-caso" para executar comandos diferentes de acordo com valores de variáveis ou opções selecionadas pelo usuário. É apresentado um exemplo de algoritmo que imprime o curso do aluno baseado no código digitado e outro que exibe mensagens para cada opção de menu escolhida.
Descritiva Narrativa (Lógica de Programação)Gercélia Ramos
Existem diversas formas de se representar um algoritmo, neste slide estaremos falando sobre a Descritiva Narrativa onde descrevemos o passo-a-passo de um algoritmo.[Aula para curso técnico]
O documento apresenta uma introdução aos algoritmos, definindo-os como sequências lógicas de instruções para resolver problemas. Descreve algoritmos não computacionais e computacionais, mostrando exemplos de cada um. Também define elementos básicos da linguagem de programação Portugol como variáveis, estruturas condicionais e de repetição, e operadores matemáticos e lógicos.
O documento apresenta um resumo da Unidade 1 do curso de Programação de Computadores I. A unidade introduz os conceitos de lógica de programação, algoritmos e fluxos de controle. Inclui exemplos de algoritmos para troca de lâmpadas e discussão sobre representação de algoritmos em forma textual e gráfica. Por fim, apresenta exercícios sobre problemas lógicos como atravessar um rio com itens específicos e Torre de Hanói.
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)Gercélia Ramos
Neste slide estaremos falando sobre Estrutura de Repetição em Pseudocódigo ou Portugol utilizando características e regras da programação na ferramenta Visualg.[Aula para curso técnico]
Este documento discute recursos educativos digitais (RED), incluindo suas características, avaliação e exemplos. REDs podem estimular aprendizagem criativa através de redes de colaboração e diferentes estímulos multimídia. Eles também devem ser avaliados com base em critérios de qualidade como rigor, relevância e usabilidade. Vários exemplos de REDs são fornecidos.
O documento fornece informações sobre como descrever personagens física e psicológicamente. Ele lista características físicas como cor de cabelo e olhos, e traços psicológicos como personalidade. Como exemplo, descreve Teresa e Luísa como gêmeas loiras de olhos castanhos donas do Caracol, Pedro como amigo de olhos e cabelo pretos usando óculos, Chico como aventureiro de olhos castanhos e cabelo preto encaracolado, e João como divertido dono de um cão com c
Carta de motivação anexa ao currículo.
Esta carta serve para elucidar a empresa/ entidade empregadora para a disponibilidade emotivação de determinado colaborador integrar a sua equipa.
Deve ser complementada com o curriculo vitae modelo europass.
O documento descreve a história da internet, desde sua criação como uma rede de computadores militares dos EUA até se tornar uma rede global comercial. Ele explica que a internet começou a ser disponibilizada para universidades na década de 1960 e recebeu o nome "internet" nessa época. Também credita Paul Baran como um dos criadores da internet por ter proposto uma rede descentralizada em 1964.
O documento apresenta exemplos de uso de estruturas de seleção em linguagem Pascal, incluindo if then, if then else e case. São mostrados programas que determinam o maior entre dois números, verificam a paridade de um número e atualizam salários com aumentos escalonados.
Aula 5 - Estruturas de seleção simples e composta - parte 1Pacc UAB
O documento discute estruturas de seleção simples e compostas em linguagem de programação. Ele apresenta os objetivos de aprendizado relacionados a essas estruturas, como reconhecer a necessidade delas, aprender a sintaxe IF-THEN/IF-THEN-ELSE e representá-las em fluxogramas. Exemplos ilustram o uso de operadores relacionais em condições e como escrever programas que usam seleção simples e composta.
- O documento discute pipelines em computadores, apresentando a arquitetura DLX e sua implementação com pipeline. O pipeline divide o processamento de instruções em estágios para execução sobreposta de múltiplas instruções.
- A arquitetura DLX é apresentada, incluindo seus formatos de instrução e ciclos de máquina. Sua implementação com pipeline é detalhada, dividindo o processamento em estágios de busca de instrução, decodificação, execução e escritura.
- Perigos como hazards estruturais e de dados
O documento fornece um resumo da história e funcionamento da Internet. Discutindo como a Internet surgiu de pesquisas militares nos EUA, evoluiu para incluir universidades, e eventualmente se tornou uma rede global. Também explica como a Internet funciona usando protocolos como TCP/IP para transmitir dados em pacotes entre computadores, e os principais serviços como a World Wide Web e e-mail.
Informática na Educação Infantil:
- Familiarizar crianças com equipamentos e softwares educativos;
- Desenvolver habilidades como coordenação motora, percepção visual, raciocínio lógico e concentração;
- Usar atividades lúdicas e desafios no computador para estimular o aprendizado.
1. O documento apresenta 8 exercícios sobre laços de repetição em algoritmos. Os exercícios pedem para ler valores e calcular médias, máximos, mínimos e outras estatísticas.
Este documento apresenta uma apostila sobre técnicas de programação elaborada pela Pontifícia Universidade Católica do Paraná. A apostila aborda tópicos como algoritmos, programação em Portugol e C, estruturas de dados como vetores, matrizes e strings, e conceitos como variáveis, operadores lógicos e laços de repetição.
O documento discute lógica de programação e algoritmos, definindo-os como sequências lógicas de passos para resolver problemas. Também aborda representações de algoritmos como pseudocódigo e diagramas de blocos, e técnicas como teste de mesa para validar algoritmos.
O documento apresenta uma oficina de criação de jogos digitais com Scratch, abordando uma breve introdução, um tutorial para criar o primeiro jogo com movimento, animação e colisões, um exemplo de jogo completo, como encontrar e publicar jogos.
O documento fornece informações biográficas e acadêmicas de Ricardo Terra, incluindo seu nome, email, formação acadêmica, experiência profissional e publicações. Ele também apresenta uma introdução sobre modelagem UML, descrevendo seus principais diagramas e conceitos.
O documento discute estruturas condicionais em programação, incluindo estruturas "se...senão" e "escolha...caso". Exemplos demonstram como essas estruturas permitem que programas atendam a diferentes situações com base nos valores de variáveis, evitando a necessidade de vários algoritmos menores. Exercícios propostos ilustram como solicitar dados do usuário e tomar decisões com base nesses dados.
O documento fornece dicas para a elaboração de uma PAP (Projeto de Aplicação Prática), enfatizando a importância de definir claramente o tema, pesquisar o que já existe sobre o assunto, e criar um cronograma para organizar o tempo. Também recomenda manter um portfólio com imagens, documentos e anotações do processo, além de apresentar o projeto em formato "pitch" para destacar suas qualidades.
CURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃOMicrosoft
O documento discute conceitos fundamentais de lógica de programação, incluindo:
1) O objetivo de desenvolver o raciocínio lógico do aluno para programação de computadores.
2) Diferentes tipos de linguagens de programação como imperativa, funcional, lógica e orientada a objetos.
3) Conceitos como algoritmos, variáveis, constantes, diagramas de blocos e pseudocódigo para representar algoritmos.
Este documento apresenta uma introdução aos algoritmos e pseudocódigo com Portugol. Discute definições de algoritmos e problemas bem definidos, formas de descrever algoritmos como narrativa e fluxogramas. Também explica a necessidade de linguagens de programação e características de pseudocódigos como não serem linguagens de programação. Apresenta a sintaxe básica do Portugol e conceitos como variáveis, tipos, operadores, constantes e sub-rotinas. Por fim, explica estruturas de controle como condicionais e repetição no Portugol.
O documento apresenta uma introdução aos algoritmos, definindo-os como sequências lógicas de instruções para resolver problemas. Descreve algoritmos não computacionais e computacionais, mostrando exemplos de cada um. Também define elementos básicos da linguagem de programação Portugol como variáveis, estruturas condicionais e de repetição, e operadores matemáticos e lógicos.
O documento apresenta um resumo da Unidade 1 do curso de Programação de Computadores I. A unidade introduz os conceitos de lógica de programação, algoritmos e fluxos de controle. Inclui exemplos de algoritmos para troca de lâmpadas e discussão sobre representação de algoritmos em forma textual e gráfica. Por fim, apresenta exercícios sobre problemas lógicos como atravessar um rio com itens específicos e Torre de Hanói.
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)Gercélia Ramos
Neste slide estaremos falando sobre Estrutura de Repetição em Pseudocódigo ou Portugol utilizando características e regras da programação na ferramenta Visualg.[Aula para curso técnico]
Este documento discute recursos educativos digitais (RED), incluindo suas características, avaliação e exemplos. REDs podem estimular aprendizagem criativa através de redes de colaboração e diferentes estímulos multimídia. Eles também devem ser avaliados com base em critérios de qualidade como rigor, relevância e usabilidade. Vários exemplos de REDs são fornecidos.
O documento fornece informações sobre como descrever personagens física e psicológicamente. Ele lista características físicas como cor de cabelo e olhos, e traços psicológicos como personalidade. Como exemplo, descreve Teresa e Luísa como gêmeas loiras de olhos castanhos donas do Caracol, Pedro como amigo de olhos e cabelo pretos usando óculos, Chico como aventureiro de olhos castanhos e cabelo preto encaracolado, e João como divertido dono de um cão com c
Carta de motivação anexa ao currículo.
Esta carta serve para elucidar a empresa/ entidade empregadora para a disponibilidade emotivação de determinado colaborador integrar a sua equipa.
Deve ser complementada com o curriculo vitae modelo europass.
O documento descreve a história da internet, desde sua criação como uma rede de computadores militares dos EUA até se tornar uma rede global comercial. Ele explica que a internet começou a ser disponibilizada para universidades na década de 1960 e recebeu o nome "internet" nessa época. Também credita Paul Baran como um dos criadores da internet por ter proposto uma rede descentralizada em 1964.
O documento apresenta exemplos de uso de estruturas de seleção em linguagem Pascal, incluindo if then, if then else e case. São mostrados programas que determinam o maior entre dois números, verificam a paridade de um número e atualizam salários com aumentos escalonados.
Aula 5 - Estruturas de seleção simples e composta - parte 1Pacc UAB
O documento discute estruturas de seleção simples e compostas em linguagem de programação. Ele apresenta os objetivos de aprendizado relacionados a essas estruturas, como reconhecer a necessidade delas, aprender a sintaxe IF-THEN/IF-THEN-ELSE e representá-las em fluxogramas. Exemplos ilustram o uso de operadores relacionais em condições e como escrever programas que usam seleção simples e composta.
- O documento discute pipelines em computadores, apresentando a arquitetura DLX e sua implementação com pipeline. O pipeline divide o processamento de instruções em estágios para execução sobreposta de múltiplas instruções.
- A arquitetura DLX é apresentada, incluindo seus formatos de instrução e ciclos de máquina. Sua implementação com pipeline é detalhada, dividindo o processamento em estágios de busca de instrução, decodificação, execução e escritura.
- Perigos como hazards estruturais e de dados
O documento fornece um resumo da história e funcionamento da Internet. Discutindo como a Internet surgiu de pesquisas militares nos EUA, evoluiu para incluir universidades, e eventualmente se tornou uma rede global. Também explica como a Internet funciona usando protocolos como TCP/IP para transmitir dados em pacotes entre computadores, e os principais serviços como a World Wide Web e e-mail.
Informática na Educação Infantil:
- Familiarizar crianças com equipamentos e softwares educativos;
- Desenvolver habilidades como coordenação motora, percepção visual, raciocínio lógico e concentração;
- Usar atividades lúdicas e desafios no computador para estimular o aprendizado.
1. O documento apresenta 8 exercícios sobre laços de repetição em algoritmos. Os exercícios pedem para ler valores e calcular médias, máximos, mínimos e outras estatísticas.
Este documento apresenta uma apostila sobre técnicas de programação elaborada pela Pontifícia Universidade Católica do Paraná. A apostila aborda tópicos como algoritmos, programação em Portugol e C, estruturas de dados como vetores, matrizes e strings, e conceitos como variáveis, operadores lógicos e laços de repetição.
O documento discute lógica de programação e algoritmos, definindo-os como sequências lógicas de passos para resolver problemas. Também aborda representações de algoritmos como pseudocódigo e diagramas de blocos, e técnicas como teste de mesa para validar algoritmos.
O documento apresenta uma oficina de criação de jogos digitais com Scratch, abordando uma breve introdução, um tutorial para criar o primeiro jogo com movimento, animação e colisões, um exemplo de jogo completo, como encontrar e publicar jogos.
O documento fornece informações biográficas e acadêmicas de Ricardo Terra, incluindo seu nome, email, formação acadêmica, experiência profissional e publicações. Ele também apresenta uma introdução sobre modelagem UML, descrevendo seus principais diagramas e conceitos.
O documento discute estruturas condicionais em programação, incluindo estruturas "se...senão" e "escolha...caso". Exemplos demonstram como essas estruturas permitem que programas atendam a diferentes situações com base nos valores de variáveis, evitando a necessidade de vários algoritmos menores. Exercícios propostos ilustram como solicitar dados do usuário e tomar decisões com base nesses dados.
O documento fornece dicas para a elaboração de uma PAP (Projeto de Aplicação Prática), enfatizando a importância de definir claramente o tema, pesquisar o que já existe sobre o assunto, e criar um cronograma para organizar o tempo. Também recomenda manter um portfólio com imagens, documentos e anotações do processo, além de apresentar o projeto em formato "pitch" para destacar suas qualidades.
CURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃOMicrosoft
O documento discute conceitos fundamentais de lógica de programação, incluindo:
1) O objetivo de desenvolver o raciocínio lógico do aluno para programação de computadores.
2) Diferentes tipos de linguagens de programação como imperativa, funcional, lógica e orientada a objetos.
3) Conceitos como algoritmos, variáveis, constantes, diagramas de blocos e pseudocódigo para representar algoritmos.
Este documento apresenta uma introdução aos algoritmos e pseudocódigo com Portugol. Discute definições de algoritmos e problemas bem definidos, formas de descrever algoritmos como narrativa e fluxogramas. Também explica a necessidade de linguagens de programação e características de pseudocódigos como não serem linguagens de programação. Apresenta a sintaxe básica do Portugol e conceitos como variáveis, tipos, operadores, constantes e sub-rotinas. Por fim, explica estruturas de controle como condicionais e repetição no Portugol.
Este documento apresenta conceitos básicos sobre algoritmos e fluxogramas. Na primeira parte, define algoritmos e discute formas de representá-los, incluindo descrição narrativa, pseudocódigo e fluxogramas. A segunda parte apresenta exemplos de algoritmos para calcular a média de alunos usando essas diferentes formas de representação. A terceira parte discute testes de mesa para validar algoritmos.
Este documento apresenta três formas de representação de algoritmos: descrição narrativa, fluxograma e pseudocódigo. Discute as vantagens e desvantagens de cada forma e fornece exemplos para exercitar a construção de algoritmos usando-as.
Este documento fornece uma introdução à programação, incluindo: (1) Uma breve história da programação e da computação, (2) Conceitos básicos como algoritmos, variáveis e tipos de dados, e (3) Estruturas de programação como instruções condicionais e de repetição. O documento também apresenta exemplos de algoritmos em pseudocódigo para auxiliar na compreensão dos conceitos.
Este documento discute algoritmos e como eles são usados para resolver problemas computacionais de forma precisa e sequencial. Explica que há três fases no desenvolvimento de um programa - problema, algoritmo e programa - e descreve fluxogramas e pseudo-código como formas de representar algoritmos. Também discute operadores lógicos e variáveis em algoritmos.
INFORMATICA LOGICA DE PROGRAMAÇÃO E ALGORITIMOS AULA- 01.pptPatricaNascimento1
O documento discute lógica de programação e algoritmos, definindo algoritmos e distinguindo entre algoritmos estruturados e não estruturados. Também cobre introdução ao pseudocódigo e a linguagem de programação Python.
1) A lógica de programação é necessária para desenvolvimento de sistemas e permite definir a sequência lógica para o desenvolvimento de programas. 2) Lógica de programação é a técnica de encadear pensamentos lógicos em uma sequência de instruções para atingir um objetivo. 3) Instruções são regras ou normas definidas para realizar uma tarefa no computador, indicando ações elementares a serem executadas.
O documento discute os conceitos fundamentais de lógica de programação e programação. Aborda tópicos como: 1) a lógica de programação é necessária para desenvolvimento de sistemas; 2) seqüência lógica são passos executados para atingir um objetivo; 3) instruções indicam ações a serem executadas por um computador. Também discute paradigmas de programação como imperativo, funcional, lógico e orientado a objetos.
1) A lógica de programação é necessária para desenvolvimento de sistemas e permite definir a sequência lógica para o desenvolvimento de programas. 2) Lógica de programação é a técnica de encadear pensamentos lógicos para atingir um objetivo. 3) Instruções são um conjunto de regras ou normas definidas para orientar a realização de uma tarefa pelo computador em uma ordem correta.
Este documento apresenta um curso sobre lógica de programação. O objetivo do curso é capacitar os alunos a conhecer conceitos básicos de programação para que possam criar sites, desenvolver games e programar robôs. O curso ensinará sobre representações de algoritmos, tipos de dados, variáveis, expressões, estruturas de condição e repetição. Os alunos irão desenvolver uma calculadora simples ao longo do curso para praticar os conceitos aprendidos.
Este documento apresenta três tópicos principais:
1. Fornece uma introdução sobre algoritmos, incluindo sua definição, história e exemplos de algoritmos no cotidiano.
2. Discutem formas de representação de algoritmos como descrição narrativa, fluxogramas e pseudocódigo.
3. Apresenta os objetivos e ementa de um curso sobre algoritmos, incluindo tópicos como estrutura de algoritmos, variáveis, estruturas de seleção e repetição.
O documento discute algoritmos e suas representações. Ele define algoritmo, lista os passos para construir um algoritmo e apresenta formas de representá-los, incluindo descrição narrativa, fluxogramas e pseudocódigo. O documento também explica o que são fluxogramas, seus elementos e como podem ser usados para ilustrar processos de forma simples.
Algoritmia para o site do 10gi marcelo e ricardozedaesquina98
Este documento fornece uma introdução aos conceitos básicos de algoritmia e programação. Resume os principais tópicos como o que é um algoritmo e seus tipos, fluxogramas, pseudocódigo, estruturas de repetição e decisão, símbolos da algoritmia, o que é programação, uma breve história da programação, terminologia comum, a estrutura de um programa e os pontos em comum entre todos os programas.
Este documento introduz conceitos básicos de programação, como algoritmos, fluxogramas e pseudocódigo. Explica que algoritmos são sequências de instruções para realizar tarefas e fornece um exemplo de algoritmo para fazer bolo. Também define fluxogramas e pseudocódigo como formas de representar algoritmos visualmente e por código semelhante à linguagem.
1. O documento introduz os conceitos básicos de programação de computadores, incluindo a organização de um computador, linguagem de máquina, algoritmos e lógica de programação.
2. Apresenta o ILA como uma linguagem algorítmica executável que permite aprender programação desenvolvendo algoritmos em português estruturado e executando os programas.
3. Fornece um guia para aprender programação resolvendo exercícios propostos e desenvolvendo a lógica de programação.
Ebook logica-de-programacao-para-iniciantesMarcio Lima
Este documento fornece uma introdução sobre lógica de programação para iniciantes. Resume os tópicos principais que serão cobertos no ebook, incluindo variáveis, tipos de dados, operadores, estruturas de decisão e repetição. Também discute por que aprender programação é útil e que o inglês não é um pré-requisito, mas é importante de se aprender.
O documento apresenta um curso sobre paradigmas de linguagens de programação ministrado por Marcelo Tomio Hama. O cronograma inclui aulas sobre fundamentos de linguagem de programação, evolução das principais linguagens, paradigmas estruturado, orientado a objetos, funcional e lógico. A bibliografia lista referências básicas e complementares sobre o tema.
Lógica e Matemática Computacional - Aula 04thomasdacosta
- O documento apresenta os conceitos básicos de lógica de programação e fluxogramas, incluindo símbolos utilizados para representar instruções lógicas em fluxogramas como entrada, saída, condicionais e processamento.
- São explicados termos como algoritmo, linguagem de programação e fluxograma, que é uma representação simbólica de um algoritmo que pode ser desenvolvido em qualquer linguagem.
- São mostrados exemplos de fluxogramas simples representando incremento de variável, cálculo de média e laço while.
O documento fornece um resumo sobre as linguagens de programação, discutindo os tipos de linguagens (de baixo e alto nível), paradigmas (imperativo, orientado a objetos, lógico), evolução das linguagens, e compiladores vs interpretadores.
O documento apresenta um manual de apoio ao formando sobre noções básicas de informática. O manual discute o processamento de texto usando Microsoft Word, incluindo a gestão de documentos, escrita de texto e formatação. O documento também fornece instruções sobre como imprimir e salvar documentos no Word.
Este documento apresenta um manual de apoio para a criação de sites na internet. Apresenta conceitos básicos como browsers, servidores, hiperlinks e ferramentas para desenvolvimento web como HTML, CSS e JavaScript. Inclui também informações sobre domínios, subdomínios e fatores a considerar na implementação de um site.
Este documento descreve uma prova de avaliação final para o curso de Técnico/a de Multimédia Nível IV. A prova é composta por 4 partes e avalia os conhecimentos e capacidades adquiridos pelos formandos ao longo da formação. Inclui instruções para os formandos e jurados, lista de equipamento necessário, e as 4 partes da prova cobrindo diferentes áreas como imagem, som, programação e conhecimentos gerais.
Este documento descreve um módulo de programação por objetos em ActionScript 3.0. O módulo tem como objetivos ensinar os alunos a programar usando a linguagem ActionScript e conceitos como scripting, algoritmos, entradas e saídas de dados e funções.
Este documento fornece uma introdução abrangente aos conceitos e ferramentas fundamentais para o desenvolvimento de sites e aplicações multimídia, incluindo definições de servidores, web designers, web developers, layouts, domínios, endereços IP e de email. Também discute fatores importantes para implementação de sites e linguagens de programação do lado do cliente e servidor.
Este documento fornece uma introdução aos projetos multimídia, incluindo:
1) As etapas-chave no desenvolvimento de um projeto multimídia, como análise e planeamento, design, produção, teste e distribuição.
2) Ferramentas úteis para planeamento de projetos como diagramas de Gantt e PERT.
3) Os elementos-chave a considerar na análise e planeamento, como objetivos, requisitos, cronograma e orçamento.
O documento fornece uma introdução às funções e conceitos básicos da linguagem JavaScript, incluindo:
1) A definição e tipos de funções em JavaScript;
2) Como declarar variáveis e os tipos de valores suportados;
3) Os operadores aritméticos, lógicos e de comparação disponíveis.
- Active Server Pages (ASP) são páginas web dinâmicas que combinam HTML, scripts do lado do cliente e scripts do lado do servidor.
- Os scripts do lado do cliente rodam no navegador do usuário, enquanto os scripts do lado do servidor rodam no servidor web.
- As páginas ASP devem ser hospedadas em um servidor Windows com o Internet Information Server (IIS) para que os scripts do lado do servidor possam ser processados.
O Que é Um Ménage à Trois?
A sociedade contemporânea está passando por grandes mudanças comportamentais no âmbito da sexualidade humana, tendo inversão de valores indescritíveis, que assusta as famílias tradicionais instituídas na Palavra de Deus.
Atividade letra da música - Espalhe Amor, Anavitória.Mary Alvarenga
A música 'Espalhe Amor', interpretada pela cantora Anavitória é uma celebração do amor e de sua capacidade de transformar e conectar as pessoas. A letra sugere uma reflexão sobre como o amor, quando verdadeiramente compartilhado, pode ultrapassar barreiras alcançando outros corações e provocando mudanças positivas.
Folheto | Centro de Informação Europeia Jacques Delors (junho/2024)Centro Jacques Delors
Estrutura de apresentação:
- Apresentação do Centro de Informação Europeia Jacques Delors (CIEJD);
- Documentação;
- Informação;
- Atividade editorial;
- Atividades pedagógicas, formativas e conteúdos;
- O CIEJD Digital;
- Contactos.
Para mais informações, consulte o portal Eurocid:
- https://eurocid.mne.gov.pt/quem-somos
Autor: Centro de Informação Europeia Jacques Delors
Fonte: https://infoeuropa.mne.gov.pt/Nyron/Library/Catalog/winlibimg.aspx?doc=48197&img=9267
Versão em inglês [EN] também disponível em:
https://infoeuropa.mne.gov.pt/Nyron/Library/Catalog/winlibimg.aspx?doc=48197&img=9266
Data de conceção: setembro/2019.
Data de atualização: maio-junho 2024.
Slides Lição 11, CPAD, A Realidade Bíblica do Inferno, 2Tr24.pptxLuizHenriquedeAlmeid6
Slideshare Lição 11, CPAD, A Realidade Bíblica do Inferno, 2Tr24, Pr Henrique, EBD NA TV, Lições Bíblicas, 2º Trimestre de 2024, adultos, Tema, A CARREIRA QUE NOS ESTÁ PROPOSTA, O CAMINHO DA SALVAÇÃO, SANTIDADE E PERSEVERANÇA PARA CHEGAR AO CÉU, Coment Osiel Gomes, estudantes, professores, Ervália, MG, Imperatriz, MA, Cajamar, SP, estudos bíblicos, gospel, DEUS, ESPÍRITO SANTO, JESUS CRISTO, Com. Extra Pr. Luiz Henrique, de Almeida Silva, tel-What, 99-99152-0454, Canal YouTube, Henriquelhas, @PrHenrique, https://ebdnatv.blogspot.com/
1. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
OBJECTIVOS DO MÓDULO
• Elaborar algoritmos de resolução para um dado um problema.
• Compreender a lógica de programação
• Identificar e dominar a utilização dos diferentes tipos de variáveis.
• Descrever a estrutura de um algoritmo identificando as palavras-chave, variáveis e funções.
• Elaborar algoritmos, sem ambiguidades, eficazes e eficientes.
O que é um programa?
Um programa de computador ou programa informático é uma colecção de instruções que
descrevem uma tarefa a ser realizada por um computador. O termo pode ser uma referência ao
código fonte, escrito numa linguagem de programação, ou ao arquivo que contém a forma
executável deste código fonte
O que é uma linguagem de programação?
Uma linguagem de programação é um método padronizado para expressar instruções para um
computador. Em programação, o uso da matemática é relativamente alto e é importante
também, que possuas um bom raciocínio lógico.
Porque Programar?
Podemos programar para alcançar inúmeros objectivos, como por exemplo:
- desenvolver um software, para automatizar tarefas, e quem sabe vende-lo
- criar um jogo de computador.
- Podes também programar para a Web e desenvolver aplicações .
- A área da tecnologia é um mercado em constante crescimento, com salários iniciais altos.
Então qual a linguagem que o computador entende?
O computador entende apenas a linguagem binário ou máquina, ou seja, 1 e 0, ligado ou
desligado.
Quer dizer que tenho que aprender a programar em 0 e 1?
Negativo. Hoje em dia, temos o que chamamos de compiladores e interpretadores. São eles
que fazem a tradução da nossa linguagem para linguagem de máquina.
2. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Qual a diferença entre linguagem compilada e interpretada?
Na linguagem interpretada, o código fonte é traduzido para linguagem de máquina no
momento da interpretação (execução), e o código fica visível, enquanto na linguagem
compilada, este é feito anteriormente, não sendo possível visualizar o código fonte.
Qual a diferença entre linguagens de baixo nivel e alto nivel?
Resumidamente, as linguagens de baixo nível, são aquelas que possuem contacto directo
com o hardware do computador, geralmente linguagens compiladas, como por exemplo C,
C++, Assembly…
Enquanto as linguagens de alto nível o contacto é com o software, exemplos são linguagens
interpretadas como Python, PHP, JavaScript, Pascal, ASP.NET…
Noções de Lógica?
Lógica é a forma correcta de organizar os pensamentos e demonstrar o raciocínio de maneira
correcta. A utilização da lógica é a melhor forma de solucionar problemas e atingir objectivos.
Sempre que se quer pensar, falar ou escrever correctamente, deve-se colocar os pensamentos
em ordem.
Exemplo:
- Todo mamífero é animal
- Todo cavalo é mamífero
- Portanto, todo cavalo é animal
A lógica é muito importante em nossa vida, no dia – a – dia. Veja os exemplos abaixo:
a) A gaveta está fechada.
A bala está na gaveta.
Preciso primeiro abrir a gaveta, para depois pegar a bala.
b) Moramos três pessoas.
Nenhum de nós dois quebrou o vaso de porcelana.
Quem quebrou o vaso?
O que é um algoritmo?
Segundo a Wikipédia…
3. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Um algoritmo é uma sequência finita de instruções bem definidas e não ambíguas, cada uma
das quais pode ser executada mecanicamente num período de tempo finito e com uma
quantidade de esforço finita.
traduzindo!!!
O algoritmo, é uma instrução, ou uma ordem que podemos dar ao computador, para que ele
realize determinada tarefa. Algoritmo é a lógica necessária para o desenvolvimento de um
programa.Ao contrário do que a maioria das pessoas pensam, o computador não é inteligente,
quem é inteligente, é o programador!
Simplificando…
Para se ter um algoritmo, é necessário:
1. Que se tenha um número finito de passos
2. Que cada passo esteja precisamente definido, sem possíveis ambigüidades
3. Que existam zero ou mais entradas tomadas de conjuntos bem definidos
4. Que existam uma ou mais saídas
5. Que exista uma condição de fim sempre atingida para quaisquer entradas e num tempo
finito.
Para que um computador possa desempenhar uma tarefa é necessário que esta seja
detalhada passo a passo, numa forma compreensível pela máquina, utilizando aquilo que se
chama de programa. Neste sentido, um programa de computador nada mais é que um
algoritmo escrito numa forma compreensível pelo computador.
FORMAS DE REPRESENTAÇÃO DE ALGORITMOS
Dentre as formas de representação de algoritmos mais conhecidas, sobressaltam:
a Descrição Narrativa
o Fluxograma Convencional
o Pseudocódigo, também conhecido como Linguagem Estruturada ou Portugol.
Descrição Narrativa
4. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Nesta forma de representação os algoritmos são expressos directamente em linguagem
natural. Como por exemplo, têm-se o algoritmo seguinte:
– Cálculo da média de um aluno:
– Obter as notas da primeira e da segunda prova
– Calcular a média aritmética entre as duas
– Se a média for maior ou igual a 7, o aluno foi aprovado, senão ele foi reprovado
Esta representação é pouco usada na prática porque o uso de linguagem natural muitas vezes
dá oportunidade a más interpretações, ambigüidades e imprecisões.
Fluxograma Convencional e Diagrama de Blocos
É uma representação gráfica de algoritmos onde formas geométricas diferentes implicam
ações (instruções, comandos) distintos. Tal propriedade facilita o entendimento das idéias
contidas nos algoritmos.
A figura 2.1 mostra as principais formas geométricas usadas em fluxogramas.
5. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
A figura 2.2 a seguir mostra a representação do algoritmo de cálculo da média de um aluno
sob a forma de um fluxograma.
6. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Pode-se perceber então, que tudo pode ser um algoritmo.
O sistema de buscas do Google, tem um algoritmo por trás dele, o facebook, também tem um
algoritmo, e assim sucessivamente.
Para aprendermos melhor, antes de passar para qualquer tipo de linguagem de programação
propriamente dita, iremos aprender a programar em pseudocódigo, conhecido como Portugol
ou Português Estruturado.
7. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Pseudocódigo . Portugol (Português Estruturado)
Esta forma de representação de algoritmos, , é bastante rica em detalhes e, por assemelhar-se
bastante à forma em que os programas são escritos, encontra muita aceitação, sendo portanto
a forma de representação de algoritmos que será adoptada nesta disciplina. a seguir iremos
passar a “programar” nesta linguagem, utilizando a ajuda do software VisualG.
O que são variáveis em programação?
Desenho de como seria uma variável
Vamos entender variável, como uma caixa, na qual podes dar o nome que achares
conveniente, e guardar o conteúdo que desejares.
Ou seja, toda a variável tem um nome, valor e tipo.
O que é o tipo?
As variáveis, podem ser classificadas em:
numérica (numeros reais ou inteiros);
8. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
caracteres (sequências de texto);
booleanas (verdadeiro ou falso);
Em portugol, temos os tipos: real, inteiro, caractere e logico
Então eu posso colocar qualquer nome à minha variável?
Sim e Não!
Como assim?
Certas palavras, são reservadas para o uso da linguagem, ou seja, essas palavras não podem
ser utilizadas, pois haveria um conflito na hora de interpretar o código.
Tabela sobre as palavras reservadas do portugol:
Não tem de decorar esta tabela! A medida que for aprendendo a programar em portugol,
saberás exactamente qual palavra é, e qual não é reservada pela linguagem.
9. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Outras restrições para o nome de uma variável é:
O primeiro caractere da variável, deve ser necessariamente letra ou underline ‘_’. Não
pode começar em números
Nomes das variáveis não podem ter espaços em branco. Nada de Coca Cola por
exemplo. Uma variável correcta seria cocacola, tudo junto e sem espaços.
Não são permitidas variáveis com mais de 127 caracteres
E por fim, em Portugol, diferente de outras linguagens de programação, as variáveis
não são case sensivity, ou seja, elas não diferenciam maiúsculas de minúsculas. Logo,
BrUnO = bruno.
Um pouco mais sobre tipo de variáveis…
A tabela abaixo, exemplifica que tipo de conteúdo de cada variável.
Estrutura do pseudocódigo…
Todo e qualquer algoritmo, terá sempre um Nome, Declaração de variáveis, Início e Fim. Na
estrutura abaixo:
Algoritmo “nome-do-seu-algoritmo”
VAR
10. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
nome-da-var: tipo
nome-da-var2: tipo
INICIO
|
FIMALGORITMO
O que é declaração de variáveis?
A declaração de variáveis, é uma parte obrigatória no portugol, assim como em outras
linguagens de programação como C por exemplo. Ela é necessária para que o interpretador
entenda que aquela palavra é uma variável, Na estrutura do Portugol, dentro da seção VAR,
declaramos a variável da seguinte maneira:
Nome-da-var: tipo
ex:
variavelnome: caractere
Vamos então criar o nosso primeiro programa…!
No ecrã Inicial do VisualG, já temos a estrutura do nosso portugol pronta.
algoritmo “olá mundo”
var
inicio
escreva(“Olá Mundo!”)
fimalgoritmo
11. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
O que é esse “escreva“?
O escreva é uma palavra reservada do portugol.
A sua função é escrever no ecrã o texto entre ” ” (aspas)
No visualg, ao digitar este código e apertar F9, o código será executado, verás que estará
escrito no ecrã apenas a frase: Olá Mundo!
E porque não hà nada no campo das variáveis?
Porque ainda não utilizamos nenhuma.
No algoritmo a seguir, vamos fazer o uso da função leia() e de variáveis.
algoritmo “leianumero”
var
num: inteiro
inicio
escreva(“Digite um número: “)
leia(num)
escreva(“O número digitado é: “, num)
fimalgoritmo
Entendendo o algoritmo…
Foi declarada a variável num, como inteiro. Ou seja, poderá receber e guardar qualquer
número não-fracionário (-2, -3, -20, 0, 1, 2, 40, 18…)
Em seguida, o algoritmo irá solicitar ao utilizador que digite um número, escrevendo no ecrã a
seguinte frase: Digite um número:
Se notarem, há um espaço após os : e antes da “, isso é necessário para que o cursor dê o
espaço desejado.
12. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
o leia(num) irá aguardar com o cursor no ecrã até que o utilizador digite um número inteiro e
tecle enter.
O num é a variável que declaramos no início do algoritmo, lembram?
E finalmente, o resultado. escreva(“O número digitado é: “, num)
É importante notar, que no escreva, tudo o que estiver entre aspas, vai ser tratado como um
texto qualquer, então para retornarmos o conteúdo de uma variável, fechamos primeiro as
aspas, colocamos uma vírgula e digitamos o nome da variável, para só então fechar o
parenteses. Testem o algoritmo acima no VisualG, e vejam o resultado.
Treinem mais um pouco…
1. Crie um algoritmo que leia 2 números e mostrem o resultado.
2. Crie um algoritmo que leia o nome e a idade de alguém, e mostre no ecrã o que foi
digitado.
Dica: no exercício 2, terá que ser declarado duas variáveis, uma do tipo inteiro e outra do tipo
caractere.
Atribuir um valor a uma variavel sem interacção do utilizador?
Utilizaremos este símbolo/sinal/setinha…, para atribuir um valor a uma variável: <-
Exemplo:
numero <- 10
id <- 18
…
também, podemos atribuir a uma variável, o valor de outra variável.
Por exemplo, eu tenho a variável x, que possui o valor 20, e também a variável id, que pode
conter, ou não algum valor.
Para atribuir a variável id, o valor da variável x seria…
13. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
id <- x
Resumindo…
Para atribuir um valor qualquer a uma variável, basta digitar o nome da variável, seguida de
uma seta para esquerda, seguido do valor …
Como fazer mais do que escrever e ler dados no meu algoritmo…
Nem tudo na vida, é sequencial. As vezes, é preciso haver condições para executar
determinada tarefa, assim como efectuar operações matemáticas, e outros…
Nesse caso, utilizaremos operações matemáticas, estruturas condicionais, ciclos de
repetições, etc.
Operadores aritméticos…
Para se realizar cálculos com variáveis, ou números definidos pelo programador, utilizaremos
alguns sinais já bastante conhecidos:
Para entender os operadores aritméticos, é importante ressaltar, antes de mais nada, que
como estamos “ensinando” algo para o computador, não podemos e não temos como passar
para ele do jeito que escrevemos…
Por exemplo, numa fórmula matemática, teríamos que passar tudo para uma linha apenas.
é o que chamamos de linearização visualizado na imagem abaixo:
14. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Cada um desses, serão explicados mais detalhadamente a medida em que iremos utilizando-
os…
Operadores relacionais…
Os operadores relacionais, servem para realizar a comparação entre duas expressões, e
resultam apenas num valor… Verdadeiro ou Falso.
Observem a tabela abaixo:
por exemplo:
2 + 2 < 5 ==> Verdadeiro
15. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
18 <> 18 ==> Falso
Operadores lógicos…
Temos ainda mais 3 operadores, o E, OU e o NAO, esses são chamados de operadores
lógicos, e também irão resultar apenas num valor, podendo ser Verdadeiro ou Falso.
Vamos ver a aplicação desses operadores numa tabela verdade.
As vezes é necessário juntar, dois ou mais operadores diferentes para conseguir um
resultado…
Por exemplo:
(2 + 2 < 5) e (18 <> 18) resulta FALSO, pois como podemos observar na tabela verdade acima,
Verdadeiro e Falso resulta Falso.
16. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Não é necessário decorar a tabela de verdade basta ter em atenção que:
No operador E: Será verdadeiro quando as duas expressões forem verdadeiras.
No operador Ou: Será verdadeiro quando qualquer uma das expressões forem
verdadeiras.
Logo,
Se houver UMA expressão falsa no operador E, o resultado sempre será FALSO.
No operador OU, será FALSO apenas quando as duas expressões forem FALSAS.
Que tal responder a alguns desafios? retornando o resultado da expressão, sendo ele,
Verdadeiro ou Falso.
1. ((3 + 5) / 2) > 0) :
2. (3 * 3 > 10) ou (2 + 2 < 10) :
3. (10 <> 5) ou (1 + 1 = 0) :
4. (2 + 3 >= 5) e (18 / 3 < 7) :
5. (1 + 1 = 0) e (0 – 1 > 0) :
Estruturas Condicionais…
Vejamos…
Se “o Benfica vencer” entao
…. “ele será campeão”
fimse
Sim, na vida, as vezes deparamos com situações na qual precisamos escolher algo se outra
coisa acontecer…
Chamamos isso de condição.
17. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Nos algoritmos, também utilizaremos estruturas condicionais. O que está a negrito, as palavras
se, entao, fimse.
então, poderia basicamente dizer que num algoritmo a sintaxe seria a seguinte:
se <condição> entao
…. <ações a serem realizadas se a condição for verdadeira> //pode ser uma ou mais
Fimse
Em pseudocódigo, seria mais ou menos o seguinte:
algoritmo “campeao”
var
vencedor: caractere
inicio
se (vencedor = “benfica”) entao
escreva(“Benfica será campeão!!!“)
fimse
fimalgoritmo
E se a condiçãofor falsa?
“Se não mandar o computador fazer nada, ele nada fará!”
Nesse caso, podemos fazer o algoritmo de duas maneiras:
1 – utilizar duas condicões SE.
Um exemplo bem didático e de fácil entendimento:
18. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
1. se dinheiro >= 30 entao
2. …. ir_ao_cinema <- verdadeiro
3. …. assistir_tv <- falso
4. fimse
5. se dinheiro < 30 entao
6. …. ir_ao_cinema <- falso
7. …. assistir_tv <- verdadeiro
8. fimse
e a segunda opção, que é bem melhor e de mais agradável leitura…
1. se dinheiro >= 30 entao
2. …. ir_ao_cinema <- verdadeiro
3. …. assistir_tv <- falso
4. senao
5. …. ir_ao_cinema <- falso
6. …. assistir_tv <- verdadeiro
7. fimse
Observem que apareceu uma nova palavra… O senao…Paraqueserve osenao?
O senao, será executado sempre que o resultado do “se” for falso.
No exemplo acima, o interpretador fez uma pergunta, “o dinheiro é maior ou igual a 30?”
Caso fosse, a variavel “ir_ao_cinema” receberia o valor verdadeiro, e a variável “assistir_tv”
receberia o valor falso. Senão fosse verdadeiro receberia outros valores
Agora, um algoritmo fácil, para verem, como funciona a estrutura condicional se.
19. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Como desafio de hoje…Tentem entender o algoritmo acima sem copia-lo no VisualG.
E mais dois desafios extras…
1. Faça um algoritmo que receba um número e mostre uma mensagem caso este número
seja maior que 10.
2. Faça um algoritmo que receba um número, e informe se este número está no intervalo
de 100 a 200.
3. Exercício de Fixação
4. 1) Para os valores (a=5) (b=7) e (c=9), assinale com X a seqüência de
execução dos algoritmos abaixo
a) Se (a=5) e (b=7) entao
c := c+1
senao
c := c-1
fim_se
b) Se (a=5) e (b<6) entao
c := 1
senao
Se (c=8) entao
c := 2
senao
c := 3
fim_se
fim_se
5. 2) Com base nas tabelas-verdade , assinale com V ou F, indicando
quais valores
20. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
6. são verdadeiros e quais valores são falsos. Utilize os valores:
X=1 A=3 B=5 C=8 D=7 E=6
a) nao (x>3) ( )
b) (x<1) e nao (b>d) ( )
c) nao (D<0) e (C> 5) ( )
d) nao (X>3) ou (C< 7) ( )
e) (A > B) ou (C> B) ( )
f) (X>=2) ( )
g) (X< 1) e (B>=D) ( )
h) (D >3) ou (C> 5) ( )
i) nao (D>3) ou nao (B<7) ( )
j) (A>B) ou nao (C>B) ( )
3) Indique a saída dos trechos de programa em português estruturado,
mostrado abaixo. Para as saídas,
considere os seguintes valores: A=2, B=3, C=5, D=9 e E=6.
a)
se nao (D > 5) entao
X (A + B) * D
senão
X (A - B) / c
Fim_se
escrever X
Resposta: ____
b)
se (A > 2) e (B < 7) entao
X (A + 2) * (B - 2)
senao
X (A + B) / D * (C + D)
fim_se
escrever X
Resposta: ____
21. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
c)
se (A = 2) ou ( B < 7) entao
X (A + 2) * (B - 2)
senao
X (A + B) / D * (C + D)
fim_se
escrever X
Resposta: ____
d)
se (A >= 2) ou (C <=1) entao
X (A + D)/2
senao
X D * C
fim_se
escrever X
Resposta: ____
e)
se nao (A > 2) ou nao (B < 7) entao
XA + E
senao
X A / E
fim_se
escrever X
Resposta: ____
f)
se nao (A > 3) e não (B < 5) entao
X A + D
senão
X D / B
fim_se
escrever X
22. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Resposta: ____
g)
se (C >=2) e (B <= 7) entao
X (A + D)/2
senão
X D * C
fim_se
escrever X
Resposta: ____
h)
se (A > 2) ou nao (B < 7) entao
X A + B - 2
senão
X A - B
fim_se
escrever X
Resposta: ____
Quando e como utilizar o operador SE-ENTAO-SENAO, depende da ocasião, quando há
muitas escolhas diferentes, o código pode ficar grande, e de difícil leitura…
Nesse caso, entra mais uma função condicional, a :
ESCOLHA… CASO… CASO… OUTROCASO…
Ela é tão simples quanto o SE,a seguir temos um algoritmo, sobre a classificação de atletas
pela sua faixa etária, este exemplo, poderia ter sido feito utilizando a estrutura condicional se –
então, mas aqui utilizarei o escolha – caso, para que vocês entendam como funciona o
mesmo.
23. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Mas antes do algoritmo…
Vamos saber o que são comentários?
os comentários são bocados no código em que podemos escrever algo sem que o
interpretador ache que isso é uma linha de código.
Em portugol, os comentários são tudo aquilo precedido por // (duas barras)
Os comentários num código, servem para facilitar o entendimento por outros programadores..
Algoritmo
algoritmo “Classificação de Atletas”
var
nome, categoria: caractere
idade: inteiro
inicio
escreva(“Digite o nome do atleta: “)
leia(nome)
escreva(“Informe a idade do atleta: “)
leia(idade)
// Até aqui tudo bem, ele pede o nome e idade, lê os valores e coloca nas respectivas variáveis
escolha idade
// A função escolha irá interpretar os casos abaixo em cima da variável idade
caso 5,6,7,8,9,10
24. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
// Caso a variável idade receba os valores de 5 a 10, irá atribuir na variável categoria o valor:
infantil
…. categoria <- “infantil”
caso 11,12,13,14,15
// Caso a variável idade receba os valores de 11 a 15, irá atribuir na variável categoria o valor:
juvenil
…. categoria <- “juvenil”
caso 16,17,18,19,20
// Caso a variável idade receba os valores de 16 a 20, irá atribuir na variável categoria o valor:
junior
…. categoria <- “junior”
caso 21,22,23,24,25
// Caso a variável idade receba os valores de 21 a 25, irá atribuir na variável categoria o valor:
profissional
…. categoria <- “profissional”
outrocaso
// E se a variável idade não receber nenhum dos valores acima mencionados, vamos atribuir a
variável categoria o valor: inválido
…. categoria <- “INVALIDO”
fimescolha
// O fimescolha finaliza a função que abrimos anteriormente
escreva(“Categoria: “,categoria)
// E este último escreva, serve para que possamos mostrar o resultado ao utilizador
fimalgoritmo
REVISÃO ESTRUTURAS CONDICIONAIS FAÇA UM ALGORITMO QUE receba o
número do mês e mostre o mês correspondente. Valide mês inválido
25. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Estruturas de repetição (cíclicas) o que é isso?
Bom, até o momento, sempre fizemos algoritmos lineares, ou seja, o algoritmo possui um
começo, meio e fim, e segue essa ordem…
As estruturas de repetição, irão repetir determinados comandos, até que uma comparação
lógica se torne verdadeira ou falsa.
O Algoritmo abaixo, lê o nome e a nota de três provas de três alunos diferentes…
Algoritmo "MediaHarmonica"
var
a, b, c, MH: real
nome: caractere
inicio
escreva ("Entre com o nome do aluno: ")
leia (nome)
escreval ("Entre com as notas das três provas")
escreva ("Digite a primeira nota: ")
leia (a)
escreva ("Digite a segunda nota: ")
leia (b)
escreva ("Digite a terceira nota: ")
leia (c)
MH <- 3/(1/a + 1/b +1/c)
escreval ("A média harmônica do aluno: ", NOME, " é ", MH)
26. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
escreva ("Entre com o nome do aluno: ")
leia (nome)
escreval ("Entre com as notas das três provas")
escreva ("Digite a primeira nota: ")
leia (a)
escreva ("Digite a segunda nota: ")
leia (b)
escreva ("Digite a terceira nota: ")
leia (c)
MH <- 3/(1/a + 1/b +1/c)
escreval ("A média harmônica do aluno: ", NOME, " é ", MH)
escreva ("Entre com o nome do aluno: ")
leia (nome)
escreval ("Entre com as notas das três provas")
escreva ("Digite a primeira nota: ")
leia (a)
escreva ("Digite a segunda nota: ")
leia (b)
escreva ("Digite a terceira nota: ")
leia (c)
MH <- 3/(1/a + 1/b +1/c)
escreval ("A média harmônica do aluno: ", NOME, " é ", MH)
fimalgoritmo
Grande não?
Ainda bem que só tínhamos três alunos… E se fosse uma turma de 40 alunos?
Para isso vamos utilizar estruturas de repetição
Repita … até
Na estrutura repita – ate, todos os comandos serão executados e, no final, haverá uma
expressão lógica, para que avalie a repetição, esta que só irá terminar quando essa expressão
for verdadeira.
27. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
// sintaxe da estrutura de repetição
repita
<comandos>
ate <expressão lógica/relacional>
Agora um exemplo didático…
algoritmo "DemonstraRepeticao"
var
i: inteiro
inicio
i <- 1
repita
escreva(i)
i <- i + 1
ate i > 10
fimalgoritmo
Este algoritmo irá retornar no ecrã do utilizador os números: 1 2 3 4 5 6 7 8 9 10
28. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Mas porquê?
Primeiramente foi declarado a variável i como inteiro, logo em seguida utilizamos uma estrutura
de repetição, o repita-ate, pedimos para escrever o valor de i e acrescentamos ao seu valor
mais uma unidade, ou seja, i + 1.
e até quando isso será repetido?
Até que o valor de i seja maior que 10…
Então quando o valor de i chegou a 11, ele perguntou se i era maior que 10, como a resposta
foi verdadeira, ele encerrou a repetição e foi para o próximo comando…
Como não temos mais nada, encerramos nosso algoritmo.
Agora o algoritmo da media dos alunos…
Só que dessa vez, nós teremos 40 alunos em nossa classe!
Vamos digitar um por um?
Não! Agora que já sabemos utilizar uma estrutura de repetição, vamos poupar trabalho e
resumir o algoritmo!
Enquanto…Faça…
Diferentemente do repita-ate, onde todos os comandos são interpretados, para só então haver
uma expressão lógica verificando se deve ou não continuar a repetição, o enquanto-faca irá
avaliar uma expressão lógica e, enquanto esta for verdadeira, irá executar os comandos…
29. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Sintaxe do enquanto faca
1
2
3
enquanto <expressão lógica ou relacional> faca
<comandos>
fimenquanto
Exemplo 1
Neste exemplo, vou criar um algoritmo utilizando o repita-ate e depois o mesmo algoritmo, só
que dessa vez utilizando a estrutura enquanto – faca, explicando passo-a-passo a vocês, para
que possam entender a diferença entre ambos.
- Faça um algoritmo que solicite que o utilizador digite um número, e informe se este
número é maior que 10 ou menor que 10. O programa só pode parar de solicitar o
número quando este for igual a 0 (zero)
Utilizando a estrutura de repetição repita .. ate
1
2
3
4
5
6
7
8
9
10
11
12
13
14
algoritmo "exemplo 1"
var
numero: inteiro
inicio
repita
escreva("Digite um número: ")
leia(numero)
limpatela // Limpa a tela =P
se (numero > 10) entao
escreval("O número é maior que 10")
senao
30. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
15
16
17
18
19
20
escreval("O número é menor que 10")
fimse
ate (numero = 0)
fimalgoritmo
E agora o mesmo algoritmo, porém utilizando a estrutura de repetição enquanto .. faca
1
2
3
4
5
6
7
8
9
10
11
12
13
14
algoritmo "exemplo 2"
var
numero: inteiro
inicio
numero <- 1
enquanto numero <> 0 faca
escreva("Digite um número: ")
leia(numero)
limpatela
se (numero > 10) entao
escreval("O número ",numero," é maior que 10")
31. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
15
16
17
18
19
20
21
senao
escreval("O número ",numero," é menor que 10")
fimse
fimenquanto
fimalgoritmo
Nesse exemplo, começamos nosso algoritmo atribuindo o valor 1 a variável número, para que
possamos começar a utilizar a estrutura de repetição, conforme podem ver na linha 9;
E na linha 10, a condição para que o ciclo continue a ser executado, ou seja, enquanto a
variável numero for diferente de 0 (zero), continuaremos executando o programa, e o utilizador
digitar números para descobrir se é maior ou menor que zero…
1. Crie dois algoritmos, um utilizando a estrutura de repetição repita .. ate e outro
utilizando o enquanto .. faca.
2. Uma loja está vendendo três modelos de carro, o algoritmo deve ler o nome e o valor
(euros) dos seguinte automóveis: FERRARI, PORCHE, AUDI
3. Ao final, informar quantos carros de cada modelo foram vendidos
4. O programa só pode encerrar quando o valor do veículo for igual a zero.
Para…Faca
5. A sintaxe geral da estrutura de repetição para .. faca é a seguinte:
1
2
3
para X de N ate M [passo Y] faca
<comandos>
fimpara
Explicando…
32. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
6. O X é a variável que deve ser previamente declarada, o N é o número que começará a
contagem, M até onde vai essa contagem, e o passo Y só será necessário se você
não quiser que seja de 1 em 1…
7. Sei que não entenderam nada, então vou mostrar um exemplo de uma estrutura de
repetição utilizando enquanto .. faca e após, um utilizando o para .. faca, você verá
que irá ficar bem mais simples!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
algoritmo "repetição 1"
var
num: inteiro
inicio
num <- 1
enquanto num <= 10 faca
escreva(num)
num <- num + 1
fimenquanto
fimalgoritmo
8. Nesse algoritmo, foi utilizado a estrutura de repetição enquanto .. faca, como vocês
podem notar, foi declarado a variável num para servir como condição para execução
do ciclo, e ao mesmo tempo, imprimimos o valor da mesma no ecrã através do
comando escreva.
9. Essa estrutura vai imprimir o seguinte resultado no ecrã do utilizador: 1 2 3 4 5 6 7 8 9
Agora, a mesma estrutura, agora utilizando o para .. ate…faca.
1
2
3
4
5
algoritmo "repetição 2"
var
num: inteiro
33. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
6
7
8
9
10
11
12
inicio
para num de 1 ate 10 faca
escreva(num)
fimpara
fimalgoritmo
Este algoritmo, tem a mesma função do algoritmo acima, porém dessa vez utilizando a
estrutura para .. faca.
Vamos entender o algoritmo…
10. Declaração de variáveis, nós já aprendemos, então vamos direto ao ciclo de repetição:
11. para num de 1 ate 10 faca
12. Neste comando, estamos dizendo ao interpretador VisualG que a variável num
receberá o valor 1 e a cada iteração, ou seja, toda vez que os comandos dentro do
para .. faca forem executados, a variável num receberá +1 no valor por padrão, e
assim sucessivamente, até que o valor de num seja 10.
13. escreva(num) // já abordado anteriormente.
14. e o fimpara, que serve para indicar o fim do ciclo.
Comando passo N:
Imprimir no ecrã todos os números pares de 2 até 200
34. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
1
2
3
4
5
6
7
8
9
10
11
12
algoritmo "numeros pares"
var
num: inteiro
inicio
para num de 2 ate 200 passo 2 faca
escreva(num)
fimpara
fimalgoritmo
Passo 2…
15. Vocês devem estar se perguntando de onde surgiu esse passo 2 agora…
16. Lembram que na sintaxe do para .. faca expliquei que ele não é obrigatório, mas
poderia surgir?
17. então! por padrão no portugol, ele sempre acrescentará +1 a variável que a gente está
utilizando no ciclo, mas nesse exemplo, eu preciso pegar apenas os números pares, ou
seja, de 2 em 2.
18. Bingo!
19. Está explicado então, o porquê do passo 2, assim em cada iteração, ele acrescentará
+2 na variável num, esta que sempre será um valor par, que é o que queremos nesse
exemplo.
35. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Como fazer o inverso de 100 até 1?
Para isso, mais uma vez utilizaremos o passo N.
1
2
3
para num de 100 ate 1 passo -1 faca
escreva(num)
fimpara
20. Sim, também podemos utilizar passo -N, ou seja, um passo negativo.
21. Porque?
22. Porque se o padrão do para .. faca é acrescentar mais 1 na variável, o objetivo do
passo N é justamente te dar o poder de escolher qual o valor que você quer
acrescentar ou reduzir no ciclo.
Revisões estruturas de decisão condicionais
Se….então…senão
Escolha….caso…outrocaso
36. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
- Faça um algoritmo que calcule o valor da conta de luz de uma pessoa. Sabe-se que o cálculo da
conta de luz segue a tabela abaixo:
Tipo de Cliente Valor do KW/h
1 (Residência) 0,60
2 (Comércio) 0,48
3 (Indústria) 1,29
Revisões estruturas de decisão cíclicas
Repita…ate
Enquanto…..faca
Para…ate…faca
-Escreva um algoritmo para calcular a soma de qualquer numero fornecido
pelo utilizador até ser inserido um zero.
-Escreva um algoritmo para calcular a soma de dez números quaisquer
fornecidos pelo utilizador.
- Alterar o algoritmo da venda de carros adicionando o calculo total do
valor da venda de cada marca de carros
37. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
VECTORES
Até então, aprendemos o que é uma variável e como declarar variáveis em portugol, e fizemos
isso inúmeras vezes.
O nosso problema começa, quando temos que declarar inúmeras variáveis para atender a um
fim.
Imagine que você tem que receber o nome e a nota de 50 alunos de uma escola, e depois listar
o nome de cada um e a média final de cada aluno e a média da turma.
Agora imagine você na declaração de variáveis, declarando uma a uma, as 50 variáveis para o
nome, depois as 50 variáveis para as notas…
1
2
3
var
aluno1, aluno2, aluno3, ........., aluno50: caractere
nota1, nota2, nota3, ............, nota50: real
Cansativo não? Acho que se fosse realmente assim, não haveria tantos programadores quanto
há hoje em dia…
É em casos como esse que entram os Vetores.
Vamos imaginar um vetor como sendo uma “caixa” com vários lugares separados para guardar
seus documentos, ou seja, uma variável onde se pode armazenar mais de um dado.
Vetor de 8 posições
38. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
No exemplo abaixo, temos um vetor com dados armazenados nas 5 primeiras posições.
Para poder acessar o conteúdo desse vetor usa-se índices. O índice define a posição da
variável dentro do vetor., vamos utilizar a sintaxe: nome[posição].
Ex: meuvetor[2]
- O retorno será a letra B.
Como posso então utilizar vectores nos
algoritmos?
Para usar os vectores, primeiro temos que declará-lo na seção de variáveis. Sim, vetor também
é uma variável!
A sintaxe para declaração do vetor é a seguinte:
var
nome-do-vetor: vetor[<posições>] de <tipo>
Exemplo:
Var
MeuVetor: vetor[1..5] de inteiro
Em todos os vetores tem o primeiro elemento na posição 0(zero). Assim, se
tomarmos "K" como sendo o tamanho do vetor a última posição é a de índice "K-1"
MeuVetor [0] <- 4; // Coloca 4 na primeira posição de " MeuVetor "
MeuVetor [4] <- 8; // Coloca 8 na última posição de " MeuVetor "
39. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Preenchimento de um vetor com um dado
Para i de 1 ate 10 faca
Vetor[i] <- 30
Colocar os números de 1 a 10 em Vetor
Para i de 1 ate 10 faca
Vetor[i] <- i
Colocar os números de 10 a 1 em Vetor
Para i de 1 ate 10 faca
Vetor[i] <- 10-i
1- Construa um algoritmo (pseudocódigo) para ler 10 números reais ,
armazena-los em um vetor e escreve-los de ordem inversa.
var
V : vetor[1..100] de real
i, numero : inteiro
Inicio
Escreval ("Algoritmo Reverso")
Escreva ("Nº de Elementos = ")
Leia (numero)
Para i de 1 ate numero faca
Escreva ("Elemento[", i, "] =")
Leia (V[i])
Fimpara
Escreva ("Números na Ordem Inversa")
Para i de 1 ate numero faca
Escreva (V[numero - i +1])
Fimpara
fimalgoritmo
40. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Construa um algoritmo (pseudocódigo) para ler cinco números reais,
armazena-los em um vetor e calcular a média entre eles.
var
numero : vetor[1..5] de real
i: inteiro
soma:real
Inicio
soma<-0.0
Para i de 1 ate 5 faca
Escreva ("Digite um numero = ")
Leia (numero[I])
SOMA <-SOMA + NUMERO[I]
Fimpara
Escreva ("media= ",SOMA/5)
Fimalgoritmo
Construa um algoritmo (pseudocódigo) para ler cinco números reais,
armazena-los em um vetor e calcular qual é o maior deles e em que posição
se encontra no vector.
var
x:inteiro
i,n ,posicao,programa: inteiro
maior: real
A: vetor[0..100] de real
sair: caractere
inicio
programa <- 1
enquanto programa = 1 faca
limpatela
Escreva("Numero de elementos?: ")
Leia(n)
Para i de 0 ate n-1 Faca // Ler elementos do vetor
Escreva("A[",i,"]=")
Leia(A[i])
FimPara
maior <- A[0] // Assumir 1o elemento o maior
posicao<-0
Para i de 1 ate n-1 Faca // Procurar maior do 2 elemento em diante
Se (A[i] > maior) Entao
maior <-A[i]
41. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
posicao<-posicao+1
FimSe
FimPara
Escreval("Maior elemento = ",maior," na posição", posicao)
escreva("Deseja finalizar? (S/N) ")
leia(sair)
se sair = "S" entao
programa <- 0
fimse
fimenquanto
fimalgoritmo
Construa um algoritmo (pseudocódigo) para somar dois vetores e
armazena-los em um vetor :
var
i: inteiro
A: Vetor[1..6] de real
B: Vetor[1..6] de real
R: Vetor[1..6] de real
Inicio
Para i de 1 ate 6 Faca
Escreva("entre com o valor para a posição ", i ," novetor A: ")
Leia(A[i])
Escreva ("entre com o valor para a posição ", i ,"no vetor B: ")
Leia (B[i])
R[i]<- A[i] + B[i]
Fimpara
Para i de 1 ate 6 faca
Escreval( i , " - " , R[ i ] )
Fimpara
Construa um Algoritmo. Dada uma classe de N >= 1 alunos, este algoritmo lê suas
notas, calcula a média da classe e imprime quais os alunos possuem nota acima
da média
var
42. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
soma, media: real
nota: vetor[1..100] de real
i, N : inteiro
Inicio
Escreva("Numero de alunos? ")
Leia(N)
Para i de 1 ate N Faca // Ler notas dos alunos
Escreva("Nota do aluno ",i,"? ")
Leia(nota[i])
FimPara
soma <- 0.0 // Calcular a média da classe
Para i de 1 ate N Faca
soma <- soma + nota[i]
FimPara
media <- soma / N
Escreval("Media = ",media)
Escreval("Alunos com nota acima da media")
Para i de 1 ate N Faca // Alunos com nota > media
Se (nota[i] > media) Entao
Escreval("Aluno ",i," Nota = ",nota[i])
senao
Escreval("não existem alunos com nota acima da média")
FimSe
FimPara
matriz?
Uma matriz, é nada mais, do que Vetores bi-dimensionais. Onde podemos aceder os dados ali
contidos através de dois valores. As “linhas” e as “colunas”.
Sintaxe…
1nome: vetor[<linhas>,<colunas>] de <tipo>
Exemplo:
1minhavar: vetor[1..3,1..3] de caractere
Onde o primeiro valor refere-se as linhas e o segundo as colunas. O exemplo acima, refere-se
a criação de uma matriz com 3 linhas e 3 colunas, conforme imagem abaixo:
43. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Como posso atribuir ou visualizar dados na minha matriz?
Para atribuir dados a uma determinada posição em uma Matriz, manteremos o mesmo padrão
para variáveis comuns ou vetores.
* Para atribuir um determinado valor:
melhorblog[1,2] <- "viseu online"
Atribui a palavra viseu online na posição (1,2) da matriz melhorblog.
* Para ler determinado valor:
escreva("O melhor blog é: ",melhorblog[1,2])
Lê o valor que se encontra na posição (1,2) da matriz melhorblog.
Construa um Algoritmo. Para preencher uma matriz 5x5 (25 elementos) com valores
de 1 até 25 automaticamente e depois o mesmo algoritmo inseridos pelo utilizador
var
m: vetor[1..5,1..5] de inteiro
i,j,contador : inteiro
inicio
contador<-1
Para i de 1 ate 5 Faca
44. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
Para j de 1 ate 5 Faca
m[i,j] <- contador
contador <- contador + 1
FimPara
FimPara
Para i de 1 ate 5 Faca
Para j de 1 ate 5 Faca
Escreval(m[i,j])
FimPara
FimPara
fimalgoritmo
E agora, um “pequeno” algoritmo, utilizando praticamente tudo o que vimos durante todas as
sessões:
Sistema de registo de alunos:
Fazer um programa de registo de alunos;
O programa deverá receber o nome, blog favorito e email de cada um dos alunos;
Após o cadastro, fornecer as seguintes opções:
1. Consultar alunos cadastrados
2. Consultar blogs favoritos por aluno
3. Lista de emails cadastrados
4. Lista completa, com todos os dados dos alunos cadastrados
5. Finalizar o programa
11,12,13
21 22 23
Observação: O Programa só poderá ser finalizado quando escolhida a opção nº 5
algoritmo " Matriz"
var
45. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
alunos: vetor[1..2,1..4] de caractere
x, opcao, programa: inteiro
inicio
// Seção de Comandos
para x de 1 ate 2 faca
escreval("============================")
escreval("==== Registo DE ALUNOS ====")
escreval("============================")
escreva("Digite um Nome: ")
leia(alunos[x,1])
escreva("Digite o site favorito: ")
leia(alunos[x,2]) // http://www.viseu.tv
escreva("Digite o email: ")
leia(alunos[x,3])
escreva("Digite o numero aluno: ")
leia(alunos[x,4])
limpatela
fimpara
limpatela
programa <- 1
enquanto programa = 1 faca
escreval("============================")
escreval("=========== MENU ===========")
escreval("============================")
escreval("Digite a opção desejada: ")
escreval("1 - Consulta Alunos Registados")
escreval("2 - Consulta Sites Favoritos por aluno")
escreval("3 - Lista de emails registados")
escreval("4 - Lista completa de alunos registados")
escreval("5 - Sair do Programa")
leia(opcao)
limpatela
escolha(opcao)
caso 1
escreval("---- Alunos Registados: ")
para x de 1 ate 2 faca
escreval("---- ",alunos[x,1])
fimpara
caso 2
escreval("---- Sites favoritos por aluno: ")
para x de 1 ate 2 faca
escreval("---- ",alunos[x,1]," ",alunos[x,2])
fimpara
caso 3
escreval("---- Lista de emails Registados: ")
para x de 1 ate 2 faca
46. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA
escreval("---- ",alunos[x,3])
fimpara
caso 4
escreval("---- Lista completa de alunos registados: ")
para x de 1 ate 2 faca
escreval("---- ",alunos[x,1]," ", alunos[x,2]," ", alunos[x,3]," ", alunos[x,4])
fimpara
caso 5
escreval("==== OBRIGADO POR UTILIZAR O PROGRAMA! ====")
programa <- 0
outrocaso
escreval("Opção Inválida...")
fimescolha
fimenquanto
fimalgoritmo
EXERCICIOS:
1.Crie um algoritimo que calcule quantos dias já viveu sabendo a sua idade o mês e o dia em que nasceu
algoritmo "semnome"
var
ano , mes , dia , a , b , r: inteiro
inicio
escreva("vamos calcular quantos dias já viveu: ")
escreva("______________________________")
escreva("")
escreva("QUANTOS ANOS VOCÊ TEM ?:")
leia(ano)
escreva("")
escreva("EM QUE MÊS VOCÊ NASCEU ?:")
leia(mes)
escreva("")
escreva("EM QUE DIA VOCÊ NASCEU ?:")
leia(dia)
escreva("")
a:=(ano*365)
b:=(mes*30)
r:=(a+b+dia)
escreva("VOCÊ JÁ VIVEU",r)
escreva("DIAS")
fimalgoritmo
47. Educação e Formação de Adultos – Tipologias de nível secundário
AALLGGOORRIITTMMOO EE LLÓÓGGIICCAA DDEE PPRROOGGRRAAMMAAÇÇÃÃOO FFOORRMMAADDOORR:: JJOOSSÉÉ BBAATTIISSTTAA