Este documento apresenta um livro-texto sobre algoritmos dividido em 8 capítulos. O sumário lista os títulos de cada capítulo e seus respectivos objetivos, como noções básicas sobre algoritmos, variáveis e operadores, estruturas de seleção e repetição, e vetores. O livro fornece exemplos e exercícios para ensinar conceitos básicos de programação e lógica de algoritmos.
Este documento apresenta um livro-texto sobre algoritmos dividido em 8 capítulos, com o objetivo de ensinar técnicas para a construção de algoritmos. O livro aborda noções básicas sobre algoritmos, variáveis, estruturas de seleção e repetição, e vetores. Cada capítulo contém exemplos e exercícios para que os alunos possam aprimorar sua lógica de programação.
O documento discute algoritmos, definindo-os como uma sequência de instruções ordenadas para produzir um resultado previsível. Ele explica como melhorar algoritmos para torná-los mais precisos e eficientes, e destaca a importância de algoritmos estruturados seguirem um padrão claro. Finalmente, discute técnicas para testar a correção de algoritmos, como o "Chinesinho".
Este documento fornece instruções passo a passo para montar um computador, começando com o reconhecimento dos componentes e ferramentas necessárias, seguido pelas etapas de instalação da placa-mãe, processador, memória, placa de vídeo e outros componentes. Também inclui dicas para arrumar os cabos e instalar periféricos como teclado e monitor para finalizar a montagem.
Este documento apresenta um resumo sobre algoritmos e introdução à programação utilizando a linguagem JavaScript. Nele, são explicados conceitos básicos como algoritmos, linguagens de programação, variáveis, operadores e estruturas de controle. Além disso, fornece exemplos práticos de como começar a programar utilizando apenas um navegador web.
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.
Este documento apresenta uma apostila sobre lógica de programação e algoritmos. A apostila discute conceitos importantes como constantes, variáveis, atribuição, operadores aritméticos e lógicos. Além disso, apresenta diferentes formas de representar algoritmos como diagramas de Nassi-Shneiderman, fluxogramas e português estruturado. A apostila também aborda estruturas de seleção e repetição para construção de algoritmos.
O documento descreve uma aula introdutória sobre lógica de programação. Ele aborda os tópicos a serem ensinados na aula, como estrutura do curso, lógica de programação, tomada de decisão e organização de instruções. O documento também fornece exemplos para ajudar os alunos a entenderem esses conceitos.
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.
Este documento apresenta um livro-texto sobre algoritmos dividido em 8 capítulos, com o objetivo de ensinar técnicas para a construção de algoritmos. O livro aborda noções básicas sobre algoritmos, variáveis, estruturas de seleção e repetição, e vetores. Cada capítulo contém exemplos e exercícios para que os alunos possam aprimorar sua lógica de programação.
O documento discute algoritmos, definindo-os como uma sequência de instruções ordenadas para produzir um resultado previsível. Ele explica como melhorar algoritmos para torná-los mais precisos e eficientes, e destaca a importância de algoritmos estruturados seguirem um padrão claro. Finalmente, discute técnicas para testar a correção de algoritmos, como o "Chinesinho".
Este documento fornece instruções passo a passo para montar um computador, começando com o reconhecimento dos componentes e ferramentas necessárias, seguido pelas etapas de instalação da placa-mãe, processador, memória, placa de vídeo e outros componentes. Também inclui dicas para arrumar os cabos e instalar periféricos como teclado e monitor para finalizar a montagem.
Este documento apresenta um resumo sobre algoritmos e introdução à programação utilizando a linguagem JavaScript. Nele, são explicados conceitos básicos como algoritmos, linguagens de programação, variáveis, operadores e estruturas de controle. Além disso, fornece exemplos práticos de como começar a programar utilizando apenas um navegador web.
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.
Este documento apresenta uma apostila sobre lógica de programação e algoritmos. A apostila discute conceitos importantes como constantes, variáveis, atribuição, operadores aritméticos e lógicos. Além disso, apresenta diferentes formas de representar algoritmos como diagramas de Nassi-Shneiderman, fluxogramas e português estruturado. A apostila também aborda estruturas de seleção e repetição para construção de algoritmos.
O documento descreve uma aula introdutória sobre lógica de programação. Ele aborda os tópicos a serem ensinados na aula, como estrutura do curso, lógica de programação, tomada de decisão e organização de instruções. O documento também fornece exemplos para ajudar os alunos a entenderem esses conceitos.
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.
Conceitos e técnicas de programação apostilha algoritmoRobson Ferreira
1) O documento apresenta uma introdução aos algoritmos, definindo o que são algoritmos computacionais e não computacionais e dando exemplos de cada um.
2) É explicada a estrutura básica de um algoritmo computacional, dividido em dados e código, e apresentados os operadores matemáticos, lógicos e relacionais utilizados no Português Estruturado.
3) São mostrados os conceitos de linearização de expressões, modularização com parênteses e prioridades entre os operadores, necessários para a construção de algoritmos que real
Apostila de Introdução aos Algoritmos - usando o VisualgRegis Magalhães
O Visualg é uma excelente ferramenta para o aprendizado de algoritmos, tendo sido criada por Cláudio Morgado de Souza da Apoio Informática Ltda.
As apostilas foram elaboradas por Bruno Tonet e Cristian Koliver do Núcleo de Apoio à Aprendizagem de Programação (NAPRO) da Universidade de Caxias do Sul (UCS).
O documento apresenta as etapas de um curso de lógica de programação, incluindo introdução à lógica, tomada de decisão, organização de instruções e exemplos de pseudocódigo. O curso terá 10 aulas com slides e apostila para exemplificar os conceitos, além de exercícios para garantir a aprendizagem dos alunos.
Este capítulo apresenta os conceitos fundamentais de algoritmos e como construí-los para que possam ser entendidos e executados por computadores. Inicialmente, exemplos da vida real são usados para explicar o que são algoritmos e como resolvê-los passo a passo. Em seguida, são apresentados os conceitos necessários para a construção de algoritmos computacionais, como variáveis, constantes, operadores e comandos. Por fim, são fornecidas instruções sobre como estruturar algoritmos para computadores.
Este documento apresenta um módulo sobre algoritmos e estruturas de dados para um curso técnico em informática. O módulo inclui tópicos como história dos computadores, lógica de programação, algoritmos, estruturas de dados básicas como vetores e matrizes, e desenvolvimento de programação em linguagem de alto nível.
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.
Caderno de Linguagem de Programação para Webgeysasz
Este documento fornece instruções sobre como configurar um ambiente de desenvolvimento local para PHP, incluindo:
1) A instalação de um servidor local como o XAMPP para executar aplicativos PHP no computador;
2) A configuração de um editor de código como o Sublime Text ou Eclipse para editar arquivos PHP;
3) Um exemplo "Olá Mundo" para testar a instalação.
O documento discute lógica de programação e algoritmos. Apresenta conceitos como lógica no dia a dia, definição de algoritmo e exemplos de algoritmos simples, como chupar uma bala. Explica que algoritmos são sequências lógicas de passos para resolver problemas e que programas de computador implementam algoritmos em linguagens de programação.
3.0018.01.01 manual dicas_tecnicasavancadasdesenvolvimentosoftwareclpThiago A. Rondão
O documento fornece dicas e técnicas avançadas para programação de controladores lógicos programáveis (CLPs), incluindo boas práticas como usar nomes descritivos para sinais, versionamento de código e registro de histórico de alterações. Também apresenta técnicas avançadas como proteção do núcleo do código, intertravamento por alarmes e estrutura de sequenciador automático.
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.
1. O documento apresenta um manual para instrutores sobre como ministrar treinamentos sobre a Norma Regulamentadora no 20 para trabalhadores de postos de combustíveis. 2. O manual descreve os requisitos para os instrutores, como estrutura necessária, conteúdo dos treinamentos, preparação do instrutor e detalhes sobre a apostila e slides a serem utilizados. 3. O objetivo é padronizar os treinamentos e garantir que os instrutores estejam preparados para ensinar os trabalhadores de forma efetiva sobre saúde e segurança no trabalho com
O documento fornece dicas e técnicas avançadas para programação de controladores lógicos programáveis (CLP), incluindo o uso de nomes descritivos para sinais, versionamento de código, registro de histórico de alterações e proteção do núcleo do código para facilitar manutenção. Também apresenta exemplos de implementação de alarmes, sequenciadores automáticos e estrutura de programação para máquinas industriais.
O documento apresenta conceitos básicos sobre algoritmos e lógica de programação. Discutem-se tópicos como definição de algoritmos, características, formas de representação e estruturas chaves para construção. Apresentam-se também exemplos de jogos lógicos como exercícios práticos e site com jogos adicionais.
Este documento apresenta um curso sobre inteligência e contrainteligência para organizações. O curso objetiva ensinar sobre os riscos do ambiente competitivo atual e como enfrentá-los utilizando atividades de inteligência e contrainteligência. O programa inclui tópicos como conceitos de inteligência e contrainteligência, análise SWOT, gestão de riscos e segurança corporativa.
O documento descreve um manual produzido pelo Exército Brasileiro em 2009 que classifica praticamente toda a população não militar como "inimigos" ou "forças adversas", incluindo movimentos sociais, ONGs, órgãos governamentais e estrangeiros. O manual também recomenda técnicas de espionagem e infiltração desses grupos, em claro desrespeito à Constituição. Sua existência demonstra que a mentalidade da ditadura ainda persiste em parte das Forças Armadas.
Esta apresentação, fundamentada nos mais modernos estudos sobre o assunto, enfatiza a necessidade do uso das atividades de inteligência e contrainteligência para a segurança e desenvolvimento competitivo das organizações. Os participantes terão oportunidade de aprender sobre os riscos do atual ambiente competitivo, complexo e volátil, que podem ameaçar seus negócios e como enfrenta-los adequadamente.
Solicitação de cursos: mratreinamento@gmail.com
1) O documento discute conceitos e medidas de segurança que as empresas devem adotar para proteger pessoas e patrimônio, incluindo a localização e minimização de riscos.
2) É abordada a diferença entre segurança, que é a metodologia aplicada, e vigilância, que é a execução dos conceitos de segurança.
3) Também são discutidos os conceitos de situação versus estado no que diz respeito à segurança de uma empresa.
O documento discute o gerenciamento de crises pela polícia, definindo crise e apresentando o processo de gerenciamento de crises. Apresenta as fases deste processo: pré-confrontação, confrontação e pós-confrontação. Também descreve alternativas táticas como negociação, uso de snipers e invasão tática.
Este documento discute os dilemas e desafios do uso progressivo da força pelas organizações policiais. Apresenta artigos que abordam a importância da formação policial para mudar paradigmas, a criação de protocolos de engajamento e o debate sobre variáveis associadas ao uso da força em diferentes contextos. Por fim, resume as propostas discutidas no seminário, como a adoção de treinamentos qualificados e protocolos de ação para diminuir a letalidade policial e privilegiar ações preventivas.
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.
O documento discute a segurança patrimonial e física de instalações. Apresenta conceitos de segurança pessoal, patrimonial e física. Discute a importância da segurança para proteger os interesses vitais de uma empresa contra danos, interferências e perturbações.
Conceitos e técnicas de programação apostilha algoritmoRobson Ferreira
1) O documento apresenta uma introdução aos algoritmos, definindo o que são algoritmos computacionais e não computacionais e dando exemplos de cada um.
2) É explicada a estrutura básica de um algoritmo computacional, dividido em dados e código, e apresentados os operadores matemáticos, lógicos e relacionais utilizados no Português Estruturado.
3) São mostrados os conceitos de linearização de expressões, modularização com parênteses e prioridades entre os operadores, necessários para a construção de algoritmos que real
Apostila de Introdução aos Algoritmos - usando o VisualgRegis Magalhães
O Visualg é uma excelente ferramenta para o aprendizado de algoritmos, tendo sido criada por Cláudio Morgado de Souza da Apoio Informática Ltda.
As apostilas foram elaboradas por Bruno Tonet e Cristian Koliver do Núcleo de Apoio à Aprendizagem de Programação (NAPRO) da Universidade de Caxias do Sul (UCS).
O documento apresenta as etapas de um curso de lógica de programação, incluindo introdução à lógica, tomada de decisão, organização de instruções e exemplos de pseudocódigo. O curso terá 10 aulas com slides e apostila para exemplificar os conceitos, além de exercícios para garantir a aprendizagem dos alunos.
Este capítulo apresenta os conceitos fundamentais de algoritmos e como construí-los para que possam ser entendidos e executados por computadores. Inicialmente, exemplos da vida real são usados para explicar o que são algoritmos e como resolvê-los passo a passo. Em seguida, são apresentados os conceitos necessários para a construção de algoritmos computacionais, como variáveis, constantes, operadores e comandos. Por fim, são fornecidas instruções sobre como estruturar algoritmos para computadores.
Este documento apresenta um módulo sobre algoritmos e estruturas de dados para um curso técnico em informática. O módulo inclui tópicos como história dos computadores, lógica de programação, algoritmos, estruturas de dados básicas como vetores e matrizes, e desenvolvimento de programação em linguagem de alto nível.
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.
Caderno de Linguagem de Programação para Webgeysasz
Este documento fornece instruções sobre como configurar um ambiente de desenvolvimento local para PHP, incluindo:
1) A instalação de um servidor local como o XAMPP para executar aplicativos PHP no computador;
2) A configuração de um editor de código como o Sublime Text ou Eclipse para editar arquivos PHP;
3) Um exemplo "Olá Mundo" para testar a instalação.
O documento discute lógica de programação e algoritmos. Apresenta conceitos como lógica no dia a dia, definição de algoritmo e exemplos de algoritmos simples, como chupar uma bala. Explica que algoritmos são sequências lógicas de passos para resolver problemas e que programas de computador implementam algoritmos em linguagens de programação.
3.0018.01.01 manual dicas_tecnicasavancadasdesenvolvimentosoftwareclpThiago A. Rondão
O documento fornece dicas e técnicas avançadas para programação de controladores lógicos programáveis (CLPs), incluindo boas práticas como usar nomes descritivos para sinais, versionamento de código e registro de histórico de alterações. Também apresenta técnicas avançadas como proteção do núcleo do código, intertravamento por alarmes e estrutura de sequenciador automático.
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.
1. O documento apresenta um manual para instrutores sobre como ministrar treinamentos sobre a Norma Regulamentadora no 20 para trabalhadores de postos de combustíveis. 2. O manual descreve os requisitos para os instrutores, como estrutura necessária, conteúdo dos treinamentos, preparação do instrutor e detalhes sobre a apostila e slides a serem utilizados. 3. O objetivo é padronizar os treinamentos e garantir que os instrutores estejam preparados para ensinar os trabalhadores de forma efetiva sobre saúde e segurança no trabalho com
O documento fornece dicas e técnicas avançadas para programação de controladores lógicos programáveis (CLP), incluindo o uso de nomes descritivos para sinais, versionamento de código, registro de histórico de alterações e proteção do núcleo do código para facilitar manutenção. Também apresenta exemplos de implementação de alarmes, sequenciadores automáticos e estrutura de programação para máquinas industriais.
O documento apresenta conceitos básicos sobre algoritmos e lógica de programação. Discutem-se tópicos como definição de algoritmos, características, formas de representação e estruturas chaves para construção. Apresentam-se também exemplos de jogos lógicos como exercícios práticos e site com jogos adicionais.
Este documento apresenta um curso sobre inteligência e contrainteligência para organizações. O curso objetiva ensinar sobre os riscos do ambiente competitivo atual e como enfrentá-los utilizando atividades de inteligência e contrainteligência. O programa inclui tópicos como conceitos de inteligência e contrainteligência, análise SWOT, gestão de riscos e segurança corporativa.
O documento descreve um manual produzido pelo Exército Brasileiro em 2009 que classifica praticamente toda a população não militar como "inimigos" ou "forças adversas", incluindo movimentos sociais, ONGs, órgãos governamentais e estrangeiros. O manual também recomenda técnicas de espionagem e infiltração desses grupos, em claro desrespeito à Constituição. Sua existência demonstra que a mentalidade da ditadura ainda persiste em parte das Forças Armadas.
Esta apresentação, fundamentada nos mais modernos estudos sobre o assunto, enfatiza a necessidade do uso das atividades de inteligência e contrainteligência para a segurança e desenvolvimento competitivo das organizações. Os participantes terão oportunidade de aprender sobre os riscos do atual ambiente competitivo, complexo e volátil, que podem ameaçar seus negócios e como enfrenta-los adequadamente.
Solicitação de cursos: mratreinamento@gmail.com
1) O documento discute conceitos e medidas de segurança que as empresas devem adotar para proteger pessoas e patrimônio, incluindo a localização e minimização de riscos.
2) É abordada a diferença entre segurança, que é a metodologia aplicada, e vigilância, que é a execução dos conceitos de segurança.
3) Também são discutidos os conceitos de situação versus estado no que diz respeito à segurança de uma empresa.
O documento discute o gerenciamento de crises pela polícia, definindo crise e apresentando o processo de gerenciamento de crises. Apresenta as fases deste processo: pré-confrontação, confrontação e pós-confrontação. Também descreve alternativas táticas como negociação, uso de snipers e invasão tática.
Este documento discute os dilemas e desafios do uso progressivo da força pelas organizações policiais. Apresenta artigos que abordam a importância da formação policial para mudar paradigmas, a criação de protocolos de engajamento e o debate sobre variáveis associadas ao uso da força em diferentes contextos. Por fim, resume as propostas discutidas no seminário, como a adoção de treinamentos qualificados e protocolos de ação para diminuir a letalidade policial e privilegiar ações preventivas.
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.
O documento discute a segurança patrimonial e física de instalações. Apresenta conceitos de segurança pessoal, patrimonial e física. Discute a importância da segurança para proteger os interesses vitais de uma empresa contra danos, interferências e perturbações.
1. O documento apresenta uma introdução aos algoritmos computacionais, definindo o que são algoritmos de forma geral e algoritmos computacionais especificamente.
2. São descritos os elementos básicos de um algoritmo computacional, como dados, código, variáveis, operadores aritméticos e lógicos.
3. São apresentadas as estruturas básicas de um algoritmo no Português Estruturado, como a declaração de variáveis e lista de comandos. O documento também contém exercícios de fixação dos principais conceitos.
1. O documento apresenta uma introdução aos algoritmos, definindo-os e distinguindo algoritmos computacionais e não computacionais.
2. É apresentada a estrutura geral de um algoritmo computacional e os elementos básicos da linguagem Portugol, como variáveis, operadores e estruturas de controle.
3. O documento contém vários exemplos e exercícios para treinar a aplicação dos conceitos apresentados.
O documento apresenta uma introdução aos algoritmos computacionais, definindo o que são algoritmos não computacionais e computacionais, e descrevendo os elementos básicos para construção de algoritmos, como variáveis, estruturas condicionais e de repetição, e exercícios de aplicação desses conceitos.
1. O documento apresenta uma introdução sobre algoritmos computacionais, definindo-os como uma sequência de instruções para resolver um problema usando uma linguagem de programação, permitindo que um computador processe dados.
2. É explicado que um algoritmo computacional contém dados e código, onde dados são os valores manipulados e código são as instruções para manipular os dados.
3. São apresentados os elementos básicos do Português Estruturado, como uma linguagem simplificada para descrever algoritmos, incluindo variáveis, estruturas de fluxo
O documento apresenta uma introdução aos algoritmos, definindo o que são algoritmos computacionais e não computacionais, e descrevendo elementos básicos como variáveis, estruturas de decisão e repetição, e tipos de dados. O texto também explica a linguagem Portugol e fornece exemplos de expressões matemáticas, lógicas e algoritmos."
O documento apresenta uma introdução aos algoritmos, definindo o que são algoritmos não computacionais e algoritmos computacionais. Também explica a linearização de expressões matemáticas para construção de algoritmos computacionais e apresenta os principais comandos e estruturas da linguagem Portugol para programação. Por fim, lista exercícios para praticar os diferentes conceitos introduzidos.
TREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdfssuser059c2c1
1) O documento apresenta os principais conceitos de lógica de programação, como algoritmos, fluxogramas, variáveis, constantes, tipos de dados, estruturas de decisão e repetição.
2) Inclui também capítulos sobre vetores, matrizes, estruturas de dados, subrotinas e validação de dados.
3) Fornece exemplos de algoritmos, representações gráficas e comparações entre compiladores e interpretadores.
Este documento apresenta os principais conceitos de algoritmos e lógica de programação. Descreve três formas de representar algoritmos: diagrama de Nassi-Shneiderman, fluxograma e português estruturado. Também explica conceitos como variáveis, atribuição, operadores aritméticos e lógicos, e estruturas de repetição e seleção para construção de algoritmos.
O documento apresenta um guia sobre introdução a algoritmos, abordando tópicos como: 1) algoritmos não computacionais e exemplos; 2) algoritmos computacionais; 3) linearização de expressões matemáticas; 4) forma geral de um algoritmo; 5) variáveis e outros conceitos. O guia também inclui exemplos de exercícios para fixar os conceitos apresentados.
O documento apresenta os conceitos básicos de algoritmos, dividindo-os em algoritmos não computacionais e computacionais. Detalha os elementos que compõem um algoritmo computacional, como dados e código, e introduz a linguagem Português Estruturado, ensinando sua sintaxe através de exemplos de expressões aritméticas, lógicas e relacionais. Por fim, explica a estrutura geral de um algoritmo nesta linguagem.
O documento apresenta os conceitos básicos de algoritmos, incluindo algoritmos não computacionais e computacionais. Detalha a estrutura geral de um algoritmo em Português Estruturado, incluindo variáveis, operadores aritméticos, relacionais e lógicos. Fornece exemplos de expressões matemáticas linearizadas e explica a prioridade dos operadores. Por fim, lista os capítulos e exercícios propostos.
O documento apresenta os conceitos básicos de algoritmos, incluindo algoritmos não computacionais e computacionais. Detalha a estrutura geral de um algoritmo computacional e introduz os principais elementos da linguagem Portugol, como variáveis, operadores aritméticos, lógicos e relacionais, estruturas condicionais e de repetição. Inclui também vários exemplos e exercícios para treinar o desenvolvimento de algoritmos.
O documento apresenta os conceitos básicos de algoritmos, incluindo algoritmos não computacionais e computacionais. Detalha a estrutura geral de um algoritmo em Portugol, incluindo declaração de variáveis, comandos e estruturas de controle. Fornece exemplos de algoritmos e expressões matemáticas linearizadas em Portugol, além de operadores aritméticos, relacionais e lógicos.
O documento apresenta um guia sobre introdução a algoritmos, abordando tópicos como: 1) algoritmos não computacionais e exemplos; 2) algoritmos computacionais; 3) linearização de expressões matemáticas; 4) forma geral de um algoritmo; 5) variáveis e outros conceitos. O guia também inclui exemplos de exercícios para fixar os conceitos apresentados.
O documento apresenta um guia sobre introdução a algoritmos, abordando tópicos como: 1) algoritmos não computacionais e exemplos; 2) algoritmos computacionais; 3) linearização de expressões matemáticas; 4) forma geral de um algoritmo; 5) variáveis e outros conceitos. O guia também inclui exemplos de algoritmos, operadores matemáticos e lógicos, e capítulos com exercícios sobre os tópicos apresentados.
O documento apresenta os conceitos básicos de algoritmos, incluindo algoritmos não computacionais e computacionais. Detalha os elementos essenciais para construção de algoritmos computacionais, como variáveis, operadores matemáticos e lógicos, estruturas condicionais e de repetição. Apresenta também exemplos de algoritmos e exercícios para treinar os conceitos.
O documento apresenta um guia sobre algoritmos e programação, abordando tópicos como: 1) definição de algoritmos computacionais e não computacionais; 2) elementos básicos de um algoritmo como dados e código; 3) linearização de expressões matemáticas; e 4) operadores aritméticos, relacionais e lógicos em Português Estruturado. O guia também fornece exemplos de algoritmos para tarefas como fritar um ovo e utilizar um telefone público.
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.
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.
Este documento apresenta um livro didático sobre Lógica de Programação com sete aulas. O livro introduz conceitos básicos de lógica de programação, linguagens de programação, algoritmos, variáveis, estruturas condicionais e de repetição.
O documento discute a quebra operacional e erros administrativos no varejo brasileiro, que juntos somaram perdas de R$1,2 bilhão em 2010. A quebra operacional é a principal causa dessas perdas, seguida por erros administrativos. O texto sugere medidas como monitoramento e prevenção dessas perdas para aumentar a lucratividade das empresas.
Este documento descreve uma monografia sobre a prevenção de perdas em organizações supermercadistas no Distrito Federal. A monografia analisa os processos de gerenciamento de prevenção de perdas e identifica possíveis falhas e pontos de melhoria. A autora Adenilda Almeida da Costa apresenta o trabalho para obtenção do título de bacharel em Administração pela Universidade de Brasília.
Este documento discute a aplicação do gerenciamento de riscos operacionais em uma empresa varejista brasileira, com foco na prevenção de perdas de mercadorias. O resumo descreve como a empresa mapeou seus processos operacionais, identificou as principais causas de perdas e usou a metodologia FMEA para analisar riscos e vulnerabilidades em cada etapa. Um mapa de correlação de perdas foi criado para vincular os tipos de perda a cada processo e avaliar riscos. Os resultados iniciais sugerem que essa abordagem
1. O documento descreve as funcionalidades de um sistema de monitoramento SIGMA versão 9.7.1.0, incluindo administração de centrais, relatórios, configurações e menus. 2. São detalhadas seções como cadastro e configurações de centrais, relatórios fixos, gerenciamento de pessoas, localidades e protocolos. 3. O sistema permite gestão completa de estações de monitoramento, incluindo cadastro de eventos, usuários, zonas, contatos e câmeras.
O documento fornece uma introdução sobre sistemas de Circuito Fechado de TV (CFTV), definindo o que é CFTV e descrevendo suas principais partes e aplicações. Detalha os componentes básicos de um sistema CFTV, incluindo câmeras, monitores, cabos e fontes de energia. Também discute conceitos como sensibilidade da câmera, resolução, compensação de luz de fundo, dispositivos CCD e CMOS, tipos de lentes e suas funções.
O documento discute conceitos e princípios básicos de segurança patrimonial, incluindo definições de segurança, riscos e equipamentos de segurança como câmeras, alarmes e cercas. Ele fornece detalhes sobre como analisar riscos e implementar um sistema de segurança eletrônica eficaz.
O documento descreve os componentes e instalação de sistemas de alarmes convencionais, incluindo centrais de alarme, sensores, discadores e sirenes. Detalha os principais componentes como centrais, sensores com e sem fio, periféricos de saída e elementos de acionamento. Explica conceitos como setores de alarme, ligação série, tempos de entrada e saída. Fornece exemplos de instalação com uma central Starttron Code 300 e seus periféricos.
Este documento anuncia um concurso público para o cargo de Técnico Judiciário da área administrativa com especialidade em segurança no Tribunal Regional do Trabalho da 4a Região - RS. O documento fornece detalhes sobre o edital do concurso, incluindo informações sobre as matérias cobradas e o conteúdo programático.
Este trabalho apresenta o perfil do agente de segurança de dignitários e os métodos adequados para este tipo de segurança. O documento discute conceitos de segurança, serviços de segurança e estratégias de planejamento para segurança de dignitários. O perfil ideal de um agente de segurança de dignitários inclui conhecimentos técnicos e especializados em segurança, bem como treinamento específico para a função.
Este documento é uma demonstração de 138 páginas de uma apostila completa de segurança pública com 271 páginas. A apostila aborda técnicas operacionais de segurança, segurança física e patrimonial, prevenção e combate a incêndio, defesa pessoal e outros tópicos. Inclui também questões de concursos públicos sobre os temas da apostila.
Este trabalho apresenta o perfil do agente de segurança de dignitários e os métodos adequados para este tipo de segurança. O documento discute conceitos de segurança, serviços de segurança e estratégias de planejamento para a segurança de dignitários. O perfil ideal para um agente de segurança de dignitários requer conhecimentos técnicos e especializados na área de segurança.
O documento fornece recomendações de segurança pessoal para evitar situações de risco como seqüestros. Algumas dicas incluem manter a casa trancada e iluminada, não dar informações pessoais para estranhos, variar rotinas de trabalho e escola e estar atento a veículos e pessoas suspeitas. Também recomenda não aceitar ajuda de estranhos quando dirigindo e estacionando em locais seguros e iluminados.
O documento fornece informações sobre o treinamento de porteiros de condomínio. Ele descreve as principais atividades e responsabilidades de um porteiro, como receber visitantes, controlar a entrada e saída de veículos, manter a segurança do local e ter uma boa postura profissional. O documento também lista números de emergência e dicas para evitar furtos e assaltos no condomínio.
Este documento fornece informações sobre gestão de segurança bancária e transporte de valores. Ele discute conceitos de agências bancárias e instituições financeiras, equipamentos de segurança usados e a constituição de empresas de transporte de valores.
O documento descreve o Certificado de Vistoria de Carro-Forte, um documento válido por um ano que autoriza empresas de transporte de valores a utilizarem veículos especiais. Ele lista os documentos necessários para obter o certificado, como comprovante de propriedade do veículo, certificado de conformidade e documentação de trânsito.
As classes de modelagem podem ser comparadas a moldes ou
formas que definem as características e os comportamentos dos
objetos criados a partir delas. Vale traçar um paralelo com o projeto de
um automóvel. Os engenheiros definem as medidas, a quantidade de
portas, a potência do motor, a localização do estepe, dentre outras
descrições necessárias para a fabricação de um veículo
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...Faga1939
Este artigo tem por objetivo apresentar como ocorreu a evolução do consumo e da produção de energia desde a pré-história até os tempos atuais, bem como propor o futuro da energia requerido para o mundo. Da pré-história até o século XVIII predominou o uso de fontes renováveis de energia como a madeira, o vento e a energia hidráulica. Do século XVIII até a era contemporânea, os combustíveis fósseis predominaram com o carvão e o petróleo, mas seu uso chegará ao fim provavelmente a partir do século XXI para evitar a mudança climática catastrófica global resultante de sua utilização ao emitir gases do efeito estufa responsáveis pelo aquecimento global. Com o fim da era dos combustíveis fósseis virá a era das fontes renováveis de energia quando prevalecerá a utilização da energia hidrelétrica, energia solar, energia eólica, energia das marés, energia das ondas, energia geotérmica, energia da biomassa e energia do hidrogênio. Não existem dúvidas de que as atividades humanas sobre a Terra provocam alterações no meio ambiente em que vivemos. Muitos destes impactos ambientais são provenientes da geração, manuseio e uso da energia com o uso de combustíveis fósseis. A principal razão para a existência desses impactos ambientais reside no fato de que o consumo mundial de energia primária proveniente de fontes não renováveis (petróleo, carvão, gás natural e nuclear) corresponde a aproximadamente 88% do total, cabendo apenas 12% às fontes renováveis. Independentemente das várias soluções que venham a ser adotadas para eliminar ou mitigar as causas do efeito estufa, a mais importante ação é, sem dúvidas, a adoção de medidas que contribuam para a eliminação ou redução do consumo de combustíveis fósseis na produção de energia, bem como para seu uso mais eficiente nos transportes, na indústria, na agropecuária e nas cidades (residências e comércio), haja vista que o uso e a produção de energia são responsáveis por 57% dos gases de estufa emitidos pela atividade humana. Neste sentido, é imprescindível a implantação de um sistema de energia sustentável no mundo. Em um sistema de energia sustentável, a matriz energética mundial só deveria contar com fontes de energia limpa e renováveis (hidroelétrica, solar, eólica, hidrogênio, geotérmica, das marés, das ondas e biomassa), não devendo contar, portanto, com o uso dos combustíveis fósseis (petróleo, carvão e gás natural).
Em um mundo cada vez mais digital, a segurança da informação tornou-se essencial para proteger dados pessoais e empresariais contra ameaças cibernéticas. Nesta apresentação, abordaremos os principais conceitos e práticas de segurança digital, incluindo o reconhecimento de ameaças comuns, como malware e phishing, e a implementação de medidas de proteção e mitigação para vazamento de senhas.
Este certificado confirma que Gabriel de Mattos Faustino concluiu com sucesso um curso de 42 horas de Gestão Estratégica de TI - ITIL na Escola Virtual entre 19 de fevereiro de 2014 a 20 de fevereiro de 2014.
1. ALGORITMOS
EDIÇÃO Nº 1 - 2007
PROF. CLÁUDIA WERLICH
_________________________________________________________________
Apoio Gestão e Execução Conteúdo e Tecnologia
3. SOCIESC–Sociedade Educacional de Santa Catarina 3
Apresentação
Este livro-texto contém a disciplina de Algoritmos.
Este material disponibiliza aos alunos do EAD técnicas para a construção de
algoritmos, pois criar algoritmos é essencial para o desenvolvimento e aperfeiçoa-
mento da lógica do programador.
Para sua melhor compreensão, o livro está estruturado em 8 capítulos, com
vários exemplos e exercícios.
Lembre-se de que a sua passagem por esta disciplina será também acompa-
nhado pelo Sistema de Ensino Tupy Virtual, seja por correio postal, fax, telefone, e-
mail ou Ambiente Virtual de Aprendizagem.
de.
Sempre entre em contato conosco quando surgir alguma dúvida ou dificulda-
Toda a equipe terá a maior alegria em atendê-lo, pois a sua aquisição de co-
nhecimento nessa jornada é o nosso maior objetivo.
Acredite no seu sucesso e bons momentos de estudo!
Equipe Tupy Virtual.
Algoritmos
4. SOCIESC–Sociedade Educacional de Santa Catarina 4
Carta do Professor
“O grande amor nasce, do grande conhecimento da coisa ama-
da”. (Leonardo Da Vinci)
Caro aluno,
No decorrer dos capítulos, você aprenderá a criar algoritmos.
Nesta disciplina, as principais estruturas básicas utilizadas na programação
de computadores serão demonstradas, visando sempre ao aperfeiçoamento de sua
lógica de programação, que é essencial à sua qualificação profissional.
Iniciantes no mundo da programação devem resolver algoritmos. Alguns alu-
nos conseguem resolver os problemas rapidamente. Outros, porém, podem ter mais
dificuldades e se este for o seu caso, tenho uma sugestão: repita, repita e repita os
exemplos e exercícios.
Todos os algoritmos apresentados neste livro possuem uma versão na lin-
guagem de programação C++, para que você possa digitar e testar. Dessa forma,
você conseguirá aprimorar a sua lógica, facilitando o aprendizado das próximas dis-
ciplinas.
Vamos agora para um novo desafio: a programação de computadores!
Professora Cláudia Werlich
Algoritmos
5. SOCIESC–Sociedade Educacional de Santa Catarina 5
Cronograma de Estudo
Acompanhe no cronograma os conteúdos das aulas e atualize as possíveis
datas de realização de aprendizagem e avaliações.
Semana Carga horária Aula Data/ Avaliação
1 1
Noções Básicas de
Algoritmos
_/_ a _/_
2
Variáveis, Operadoes e
Constantes
_/_ a _/_
2 Algorimo Seqüencial
_/_ a _/_
2
2
Algoritmo Seleção
Simples _/_ a _/_
2
Algoritmo Seleção
Composta _/_ a _/_
2
Algoritmo Seleção Múl-
tipla Escolha
_/_ a _/_
3
2
Algortimo de Repetição
Para..Faça _/_
2
Algortimo de Repetição
Repita ... Até _/_
2
Algortimo de Repetição
Enquanto...Faça _/_
3 Algortimo com Vetores
_/_
Algoritmos
6. SOCIESC–Sociedade Educacional de Santa Catarina 6
Plano de Estudo
Ementa
Objetivos da Disciplina
Geral
Utilizar ambientes de programação com edição, compilação, testes e geração de
códigos integrados, inclusive aqueles que acompanham programas aplicativos, a
partir de especificações.
Específicos
Desenvolver programas e a lógica; definir algoritmos, estabelecendo natureza, ori-
gem e estrutura de dados; utilizar ambientes de programação com edição, compila-
ção, testes e geração de códigos integrados, inclusive aqueles que acompanham
programas aplicativos, a partir de especificações; atender à necessidade do usuário
em sua estação de trabalho.
.
Carga Horária: 40 horas/aula.
Algoritmos
7. SOCIESC–Sociedade Educacional de Santa Catarina 7
Aula 1
NOÇÕES BÁSICAS SOBRE
ALGORITMOS
Objetivos da aula
Ao final desta aula, você deverá ser capaz de:
Estabelecer a relação entre algoritmo e linguagem de programação, conhe-
cendo os prinicpais conceitos sobre o assunto;
Conhecer a estrutura básica do algoritmo.
Conteúdos da aula
Acompanhe os assuntos desta aula, se preferir, após o
término, assinale o conteúdo já estudado.
Definição de algoritmo;
Conceitos básicos do ambiente de programação;
Estrutura básica do algoritmo;
Linguagem de programação;
Exercícios propostos.
Prezado aluno, seja bem vindo a nossa primeira aula!
Iremos dar início a disciplina de algoritmos começando
pelas noções básicas sobre algoritmos.
Boa aula!
Algoritmos
8. SOCIESC–Sociedade Educacional de Santa Catarina 8
1. NOÇÕES BÁSICAS SOBRE ALGORITMOS
Segundo Forbellone (2000, p.03), algoritmo pode ser definido como uma se-
qüência de passos que visam atingir um objetivo bem definido. Quando elaboramos
um algoritmo, devemos especificar ações claras e precisas que possam resultar na
solução de um problema proposto.
Podemos criar algoritmos de qualquer situação. Uma receita de bolo é um e-
xemplo muito claro de algoritmo. Primeiramente separamos os ingredientes e após
devemos, passo-a-passo, juntar os ingredientes. No caso do bolo, a seqüência de
passos é fundamental. Imagine: se primeiro misturarmos o leite com o fermento. A-
pós, colocamos o trigo, ovos e por último o açúcar. Qual seria o resultado dessa mis-
tura? Um bolo fofinho com certeza não seria! O sucesso do bolo está justamente na
seqüência de passos corretos. Surge então uma palavra chave: lógica.
A lógica está na correta seqüência de passos, que deve ser seguida para ter
um objetivo específico. No exemplo do bolo, a lógica é inserir o fermento por último,
senão o bolo não irá crescer.
Outro exemplo que pode ser analisado: fazer um ovo frito. Os passos a se-
rem feitos poderiam ser:
Aquecer a frigideira;
Adicionar óleo para fritar o ovo;
Quebrar o ovo;
Colocar o ovo na frigideira;
Esperar fritar;
Virar o ovo para fritar do outro lado;
Servir o ovo frito.
Os itens listados para fritar o ovo, já dão uma idéia de todo o processo básico
de fritar um ovo. Porém, outra pessoa que fosse fazer a mesma atividade, poderia
acrescentar mais opções. Como por exemplo: verificar se existe um ovo para ser
frito, adicionar sal ou utilizar algum utensílio para virar o ovo. O grau de detalhamen-
to pode ou não ser indispensável no desenvolvimento de um algoritmo, tudo depen-
de da situação que deverá ser muito bem observada pelo programador.
Algoritmos
9. SOCIESC–Sociedade Educacional de Santa Catarina 9
A experiência do programador reflete diretamente em uma lógica mais apu-
rada, no desenvolvimento de um algoritmo. Para conseguir mais experiência e
uma lógica mais refinada só há um caminho: fazer algoritmos!
Um algoritmo, se digitado no computador, não irá funcionar. Cada pessoa po-
de elaborar o seu próprio algoritmo. Com a finalidade de padronizar, devemos utilizar
uma linguagem denominada pseudocódigo, que nada mais é do que utilizarmos re-
gras para a criação dos algoritmos. Regras essas, que não são rígidas, pois, con-
forme mencionado, o algoritmo servirá somente para o apoio no aprendizado e no
aperfeiçoamento da lógica dos programadores.
Os algoritmos criados com o pseudocódigo devem ser independentes da lin-
guagem de programação. Para isso, devemos converter o algoritmo para uma lin-
guagem de programação. O objetivo de criarmos algoritmos é a base de conheci-
mento de outras linguagens de programação. Será a nossa referência para apren-
dermos outras linguagens de computadores.
O algoritmo é flexível e, dessa forma, estaremos utilizando algumas regras
voltadas à linguagem de programação C++, sem perder as principais características
de sua finalidade, que é a prática da programação.
1.1CONCEITOS BÁSICOS
Alguns termos serão freqüentemente utilizados nesse livro-texto e nos outros
que estarão por vir, para isso é fundamental que alguns conceitos estejam bem cla-
ros em nossas mentes, são eles:
Linguagem de Programação: comandos específicos utilizados para o ser
humano programar o computador, para que seja executada alguma tarefa es-
pecífica. As linguagens de programação podem ser divididas em duas catego-
rias: Linguagens de Baixo Nível e Linguagens de Alto Nível.
Linguagem de Baixo Nível: são linguagens voltadas para a máquina, são
escritas usando as instruções do microprocessador do computator.
Linguagem de Alto Nível: utilizam uma sintaxe, ou seja, comandos que são
facilmente interpretados pelos humanos. Para que o computador as compre-
enda, precisamos utilizar: os compiladores ou interpretadores.
Compiladores: fazem a tradução de todas as instruções do programa-fonte,
criando um programa executável.
Algoritmos
10. SOCIESC–Sociedade Educacional de Santa Catarina 10
Interpretadores: fazem a tradução de cada instrução do programa-fonte,
executando-a dentro de um ambiente de programação.
Programa-fonte: é a passagem ou a tradução do algoritmo para uma lingua-
gem que o computador compreenda. Existem diversas linguagens de progra-
mação como: C, C++, Delphi, Cobol, Java, etc... Cada linguagem possui ca-
racterísticas particulares, como símbolos e palavras específicos que devem
ser rigorosamente respeitados.
Compilação: Após a passagem do algoritmo para o programa-fonte, deve-
mos compilar o programa (usando os compiladores – no nosso caso estare-
mos utilizando a linguagem Turbo C++). O programa irá verificar se você co-
meteu erros ao transformar o algoritmo em um programa-fonte. Nessa fase, é
muito comum a ocorrência de erros, por isso é essencial muita atenção na di-
gitação. A maioria dos erros são comandos digitados errados.
Programa objeto: após a compilação, realizada pelo computador, é gerado
um código que somente o computador entende: a linguagem de máquina.
Nessa fase, o computador transforma todos os códigos digitados para uma
linguagem binária (composta de 1 e 0), que é a linguagem que o computador
entende.
Programa executável: após a realização do programa objeto, será criado um
programa executável e este é o programa que você terá como resultado de
seu algoritmo. Um programa executável não depende da linguagem de pro-
gramação. Isso significa que o programa poderá funcionar independente de
termos ou não o software que utilizamos para criar o programa fonte.
Há muitos outros termos que aparecerão no decorrer do livro e todos se-
rão abordados no momento oportuno.
Dica: Os programas-fonte são fáceis de serem identificados. Sempre que você
salvar o programa digitado, ele terá a extensão .CPP, assim que for feita a com-
pilação, o programa passará a ter a extensão .EXE .
Algoritmos
11. SOCIESC–Sociedade Educacional de Santa Catarina 11
1.2 ESTRUTURA BÁSICA DO ALGORITMO
O que pretendemos neste livro-texto é criar algoritmos e fazer a conversão
para uma linguagem de programação.
Para atingirmos tal objetivo, observe, na figura 1, o primeiro exemplo de um
algoritmo – no Algoritmo Soma_de_dois_numeros. A proposta é pedir dois núme-
ros para que possam ser somados e, após, imprimir o resultado dessa operação.
Algoritmo Soma_de_dois_numeros;
Variáveis numero1,numero2,soma: inteiro;
Inicio
Escreva (“ Informe um número: “);
Leia (numero1);
Escreva (“ Informe outro número: “);
Leia (numero2);
soma = numero1 + numero2;
Escreva (“ O resultado da soma dos números informados é :” , soma);
Fim.
Figura 1 - Algoritmo Soma_de-dois_numeros
No exemplo do Algoritmo Soma_de_dois_numeros, podemos observar os seguintes
itens que aparecem em todos os algoritmos:
Sempre iniciam com a palavra Algoritmo. O nome do algoritmo, que no exem-
plo é Soma_de_dois_numeros, deve sempre começar com uma letra e nunca
ter espaços entre as palavras e jamais deverá começar com número;
O nome do algoritmo deverá ter um significado de acordo com o objetivo do
algoritmo, no caso do exemplo, como o objetivo é somar dois números, o no-
me mais apropriado é: Soma_de_dois_numeros;
Ao final, as frases deverão sempre terminar com porto e vírgula, com exce-
ções que futuramente serão discutidas;
Todo algoritmo tem um início e um fim, que deve terminar com um ponto final;
O comando Escreva (), irá imprimir na tela do computador tudo do que estiver
entre as aspas.
O comando Leia (), serve para que o computador receba um valor, que deve-
rá ser inserido numa variável;
Algoritmos
12. SOCIESC–Sociedade Educacional de Santa Catarina 12
Todo programa possui variáveis que devem ser declaradas, no caso do e-
xemplo, foram criadas três variáveis que armazenaram valores.
Uma dica importante: antes de começar a fazer um algoritmo, você deve ana-
lisar o que deverá ser feito. A leitura e a compreensão do enunciado é o ponto inicial
da resolução do algoritmo. O ideal é a separar por partes. No caso da nossa propos-
ta inicial, que é: pedir dois números para que possamos somá-los e depois, imprimir
o resultado da operação. Separando por partes:
Primeiro, devemos pedir para que os dois números sejam informados;
Segundo, devemos calcular a soma dos dois números e guardar o resultado;
Terceiro, imprimir o resultado.
Separar e escrever por tópicos o que deve ser feito num programa ajudará na
solução. O ideal é escrever num papel esses tópicos, mas com prática você irá fazer
isso mentalmente com muita facilidade.
1.3 LINGUAGEM DE PROGRAMAÇÃO C++
Os algoritmos elaborados neste livro serão implementados, ou seja, converti-
dos para a linguagem de programação C++ (fala-se C plus plus ). Utilizaremos para
isso o software TC++ 3.0 da Borland, que está na biblioteca.
A linguagem de programação C++ originou-se da linguagem C, inventada por
Dennis Ritchie. Essa linguagem, a C, ficou muito conhecida por se tratar de uma lin-
guagem para programadores profissionais. Segundo Cordeiro (1998, p.10), por volta
de 1985, Bjarne Stroustrup começou a desenvolver algumas extensões à linguagem
C com o objetivo de prover suporte ao paradigma de orientação a objetos. Esse con-
junto de extensões determinou o surgimento da linguagem C++, em 1986. O nome
"C++" advém do fato de que esta linguagem é tida como uma extensão da lingua-
gem C, onde o primeiro "+" representa as melhorias realizadas na linguagem C, e o
segundo "+" representa o acréscimo de funcionalidades para suportar o paradigma
de orientação a objetos.
Algoritmos
13. SOCIESC–Sociedade Educacional de Santa Catarina 13
Exercícios propostos
1) Defina algoritmo.
2) Qual a diferença entre um programa-fonte e um executável?
3) Defina linguagem de Programação.
4) Pesquise e descubra o nome de no mínimo cinco linguagens de programação
para computadores.
Algoritmos
14. SOCIESC–Sociedade Educacional de Santa Catarina 14
Aula 2
VARIÁVEIS, OPERADORES E
CONSTANTES
Objetivos da aula
Ao final desta aula, você deverá ser capaz de:
Conhecer a importância da declaração das variáveis nos algoritmos e pro-
gramas, bem como a definição de um tipo para cada tipo de variável;
Diferenciar os operadores: aritméticos, lógicos e relacionais;
Estabelecer a importância da constante em algoritmos.
Conteúdos da aula
Acompanhe os assuntos desta aula, se preferir, após o seu término, assinale
o conteúdo já estudado.
Definição de variáveis e de seus tipos básicos;
Utilização de operadores em expressões;
Exemplificação de constantes;
Exercícios propostos.
Seja bem vindo a nossa segunda aula!
Iremos dar início ao assunto variáveis, operadores e
constantes.
Boa aula!
Algoritmos
15. SOCIESC–Sociedade Educacional de Santa Catarina 15
2. VARIÁVEIS, OPERADORES E CONSTANTES
O sucesso de um algorimto ou programa depende da correta declaração de
variáveis e constantes. A utilização de operadores é fundamental, se utilizados erro-
neamente, o programa pode apresentar o famoso: erro de lógica.
Erro de lógica significa: o programa não tem erro nos comandos, porém
apresenta um resultado inesperado ou errado. A grande possibilidade do erro
estará no uso errado dos operadores. Ressaltando assim a importância dessa aula.
2.1 VARIÁVEIS
Segundo ASCENCIO (1999, p.10), quando fazemos um programa, este rece-
be os dados que devem ser armazenados no computador para que possam ser utili-
zados no processamento e armazenado na memória do computador.
Um dado é classificado como variável quando tem a possibilidade de ser alte-
rado em algum determinando momento do programa, conforme Forbellone (2000,
p.17). Toda variável deverá ser declarada antes de ser utilizada. Na sua declara-
ção, informaremos um tipo para ela. Um tipo significa “informar” ao computador o
que essa variável poderá receber e armazenar na memória do computador.
Muitos são os tipos de variáveis. Neste livro utilizaremos principalmente os tipos:
Inteiros - para valores inteiros (números positivos ou negativos - sem vírgu-
las);
Caracter - para valores que receberão somente um caracter (letra ou número
de 0 a 9 ou um sinal);
Real - para valores decimais (números com vírgulas);
Lógico - para retornar os valores Falso ou Verdadeiro e, no caso de C++, re-
tornar 1 ou 0.
Algoritmos
16. SOCIESC–Sociedade Educacional de Santa Catarina 16
Algumas regras na criação das variáveis:
Utilize nomes significativos para as variáveis, de preferência nomes curtos;
Nunca utlize nomes para variáveis começando com números, exemplo:
1numero, o certo é numero1 – sem espaços e nem acento. Não utilize carac-
teres especiais como: * , @ ou {, etc...
Em C++, letras maiúsculas são diferentes de letras minúsculas, ou seja, A é
diferente de a. Portanto, nos programas, evite utilizar nomes de variáveis com
letras maiúsculas, isso só irá atrapalhar você.
2.2 TIPOS DE OPERADORES
Os operadores são utilizados nas expressões matemáticas, lógicas e relacio-
nais. A maioria dos operadores soa igual nas linguagens de programação. Em C++,
a linguagem que utilizaremos possui algumas diferenças. Observe com atenção as
tabelas nos próximos tópicos. Você, com certeza, irá utilizar os operadores em todos
os programas.
2.2.1 OPERADORES ARITMÉTICOS
Segundo Forbellone (2000, p.20), chamamos de operadores aritméticos o conjunto
de símbolos que representa as operações básicas da matemática. Confira na Tabela
1, os operadores aritméticos.
Tabela 1 – Operadores Aritméticos
Algoritmo C++ Função
+ + Adição
- - Subtração
* * Mutiplicação
/ / Divisão
mod % Resto da divisão
div / Quociente da divisão
Algoritmos
17. SOCIESC–Sociedade Educacional de Santa Catarina 17
A utilização do operador MOD (em algoritmo) ou % (em C++) será da seguinte for-
ma:
15 MOD 2, resulta em 1 – o MOD sempre irá retornar o resto da divisão que,
no caso do exemplo: 15 dividido por 2, o resto desta divisão é 1 – ignorando
assim o resultado da divisão que é 7,5.
O mesmo exemplo é aplicado ao operador % em C++. Nas linguagens de pro-
gramação, deveremos utilizar o % somente para variáveis do tipo inteiro (isso
será devidamente explicado no tópico sobre variáveis).
2.2.2 OPERADORES RELACIONAIS
Toda vez que precisamos comparar valores, utilizaremos os operadores rela-
cionais, que estão na Tabela 2:
Tabela 2 – Operadores Relacionais
Algoritmo C++ Função
> > Maior que
< < Menor que
>= >= Maior ou igual a
<= <= Menor ou igual a
<> != Diferente de
= == Igual a
Os operadores relacionais serão utilizados praticamente em todos os progra-
mas. Exemplicando, observe o resultado: Verdadeiro ou Falso e poderemos ter as
respostas se atribuirmos valores para X e Y. O X receberá o valor de 2 e Y receberá
o valor de 10.
Então teremos: X=2 e Y=10.
Agora observe as comparações abaixo:
Algoritmos
18. SOCIESC–Sociedade Educacional de Santa Catarina 18
X > Y, resposta: falso
X >= Y, resposta: falso
X < Y, resposta: verdadeiro
X <=Y, resposta: verdadeiro
X = Y, resposta: falso
X<>Y, resposta: verdadeiro
2.2.3 OPERADORES LÓGICOS
Segundo Mizrahi (1994, p.53), operadores lógicos fazem comparações. A
diferença entre comparações lógicas e relacionais está na forma como os operado-
res avaliam seus operandos, esta avaliação resulta em verdadeiro ou falso, confor-
me poderá ser visto na Tabela 3.
Tabela 3 – Operadores Lógicos
Algoritmo C++ Função
E && Será verdadeiro o resultado somente se na comparação
todos os valores forem verdadeiros
OR || Será verdadeiro o resultado se um dos valores na com-
paração for verdadeiro
Não ! Será verdadeiro somente se a expressão for falsa
Da mesma forma que os operadores relacionais, os lógicos serão intensa-
mente utilizados nos algoritmos de seleção.
2.3 CONSTANTES
A utilização de constantes nos programas é muito útil. Imagine uma situação
onde você precisaria informar a todo o momento um valor específico como:
45,12453698. Este número imenso, a todo o momento deve ser digitado, facilitando
a ocorrência de erro. Uma vez definida a variável como sendo uma constante, o seu
valor não poderá ser modificado. Exemplos de variáveis:
Algoritmos
19. SOCIESC–Sociedade Educacional de Santa Catarina 19
Nome = “Claudia Werlich”
Pi= 3,14
Dica:
Quando houver uma expressão aritmética com parênteses. Sempre terão precedên-
cia os parênteses de dentro para fora.
Observe a expressão:
(9 + ( ( 10 * 2 ) + (14 -10 ) ) o resultado será igual a 33
Exercícios propostos
1. Analise as expressões aritméticas e dê o resultado:
a) X = ( 10 * ( (100 -90) -10) ) – o valor de X é:_______
b) W = ( 14 + ( 13 * (13 – 8) ) – o valor de W é
2. O valor de X é igual a 15 e o valor de W é igual a 23, agora analise expres-
sões abaixo e informe se a expressão é falsa ou verdadeira.
1. ( X < Y ) a expressão é:
2. ( Y > X ) a expressão é:
3. ( X = Y ) a expressão é:
3. Indique o tipo da variável “Valor”, conforme o valor que a variável receber.
Você deverá informar se a variável será do tipo: inteiro, real, caracter ou lógi-
co.
a) Valor =” A “ o tipo será:
b) Valor = 15,65 o tipo será:
c) Valor = 47 o tipo será:
d) Valor = 3 o tipo será:
Algoritmos
20. SOCIESC–Sociedade Educacional de Santa Catarina 20
Aula 3
ALGORITMO SEQÜENCIAL
Objetivo da aula
Ao final desta aula, você deverá ser capaz de:
Criar algoritmos seqüenciais e convertê-los para a linguagem de programação
C++.
Conteúdos da aula
Acompanhe os assuntos desta aula, se preferir, após o
seu término, assinale o conteúdo já estudado.
Exemplicando a estrutura do algoritmo;
Conversão do algoritmo para a linguagem C++;
Exercícios propostos.
Prezado aluno!
Chegamos na terceira aula. Agora você irá aprender
como desenvolver algoritmos seqüenciais e converte-los
para a linguagem C++.
Boa aula!
Algoritmos
21. SOCIESC–Sociedade Educacional de Santa Catarina 21
3. ALGORITMO SEQÜENCIAL
Relembrando: alguns princípios básicos sobre o algorimto já foram passados
na primeira aula.
Vamos observar na figura 2, o algoritmo 2 - Soma_de_ Dois_Numeros
Algoritmo Soma_de_dois_numeros;
Variáveis numero1, numero2, soma: inteiro;
Inicio
Escreva (“ Informe um número: “);
Leia (numero1);
Escreva (“ Informe outro número: “);
Leia (numero2);
soma = numero1 + numero2;
Escreva (“O resultado da soma dos números informados é :” , soma);
Fim.
Figura 2 - Algoritmo 2 - Soma_de-dois_numeros
Comentários fundamentais:
Primeiramente você deve fazer uma releitura do item 1.3, da pág. .
Os nomes das variáveis, se precisarem de números, devem ser usados sem
espaços, como no caso: numero1 e numero2.
Observe que, na hora de somar os numero1 e numero2, utilizamos o sinal de
igual, que não representa igualdade. Representa a atribuição, ou seja, a
variável soma “recebe” o valor da soma de numero1 e numero2.
Definimos três variáveis: soma, numero1 e numero2. Todas são do tipo intei-
ro, pois somente queremos utilizar números sem a parte decimal, sem vírgu-
las.
No último comando Escreva (), observe que o que está dentro das aspas: “ O
resultado da soma dos números informados é: “ – obseve que agora vem a
vírgula para separar o que será escrito na tela do computador e a variável.
Se, porventura você esquecer e deixar as aspas em toda a frase, nenhum va-
lor será impresso, aparecerá na tela a palavra soma. Se isso acontecer, você
já sabe: errou algo importante: o lugar das aspas.
Algoritmos
22. SOCIESC–Sociedade Educacional de Santa Catarina 22
Num terceiro algoritmo estaremos utilizando tipos de variáveis diferentes, conforme
demontra a figura 3.
Algoritmo Variáveis_diferentes;
Variáveis idade: inteiro;
nome: caracter;
nota1, nota2, media: real;
Inicio
Escreva (“ Informe o seu nome: “);
Leia (nome);
Escreva (“ Informe a sua idade: “);
Leia (idade);
Escreva (“ Informe a sua primeira nota: “);
Leia (nota1);
Escreva (“ Informe a sua segunda nota: “);
Leia (nota2);
media = nota1 + nota2;
Escreva ( Nome,” Você tem: “ , idade, “ anos e sua média é: “ , media);
Fim.
Figura 3 – Algoritmo 3 - Variáveis_diferentes
Comentários importantes sobre o Algoritmo:
Variáveis do mesmo tipo podem ser declaradas juntas somente se forem se-
paradas por vírgula, como no caso: nota1, nota2, média: real; o ponto e vírgu-
la deve sempre estar no final.
Nunca utilize a mesma linha para declarar variáveis de tipos diferentes. Isso
evitará futuros problemas. Mas, se forem do mesmo tipo não há problemas,
desde que separados por vírgulas.
Observe o último comando Escreva (), dentro dos parênteses toda a vez que
você deseja imprimir o conteúdo da variável, as aspas não podem ser usadas.
E a variável deve estar entre vígulas, um exemplo seria a variável idade, que
está entre as vírgulas.
Algoritmos
23. SOCIESC–Sociedade Educacional de Santa Catarina 23
3.1 CONVERSÃO DO ALGORITMO PARA O C++
Transformar o algoritmo para uma linguagem de programação requer muita
atenção de sua parte. Os detalhes são muitos. E, pior, qualquer engano ou esque-
cimento o programa simplesmente não irá funcionar.
Na biblioteca você irá encontrar o programa TC ++, junto haverá um roteiro
para utilizar a ferramenta adequadamente. Alguns detalhes sempre devem ser muito
observados:
Na hora que você for salvar o programa, salve-o com somente um nome e
com a extensão .CPP que indicará que o programa é do C++. Por exemplo:
programa1.cpp ou exemplo.cpp ou teste.cpp .
Quando for realizada a compilação, podem aparecer diversas mensagens. Se
apareceu uma ou mais mensagens, isso ocorreu porque há erros. O progra-
ma somente irá funcionar se todos os erros forem corrigidos.
Praticamente, a maioria dos erros na compilação é devido a erros de digita-
ção. Tenha muito cuidado durante a digitação, qualquer deslize provocará er-
ros no programa.
Antes de compilar e testar o programa, tenha o hábito de salvá-lo. Ocorrem
muitos erros durante o teste do programa que podem travar o TC ++ e, com
isso, você poderá perder o programa que fez, pois não salvou. Acredite isso
ocorre com muita freqüência.
Um exemplo de programa em C++ pode ser observado no programa Exem-
plo.cpp, conforme mostra a figura 4.
// Exemplo.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
int numero1, numero2, soma;
cout<< “ n Informe o primeiro número:” ;
cin>> numero1;
cout<< “ n Informe o segundo número:” ;
Algoritmos
24. SOCIESC–Sociedade Educacional de Santa Catarina 24
cin>> numero2;
soma = numero1 + numero2;
cout<< ” A soma dos dois números é: “ << soma;
getch( );
}
Figura 4 - Programa Exemplo.cpp
Comentários sobre o primeiro programa em C++:
Todos os comandos da sintaxe devem ser digitados em letras minúsculas.
Após cada comando, deverá ser usado o ponto e vírgula. Ele indica que o
comando terminou e o computador deve ler o próximo comando.
Utilizamos bibliotecas, que possuem diversas funções já definidas. Para cha-
marmos uma biblioteca devemos utilizar: #include <nome da biblioteca> .
Todos os programas que faremos terão as duas bibliotecas: #include
<iostream.h> e #include <conio.h> . A primeira possui as funções básicas de
leitura e escrita e a segunda possui recursos de tratamento de tela. Num progra-
ma, poderemos utilizar muitas bibliotecas.
O comando cout << (lemos: c out) é equivalente ao comando Escreva () do
algoritmo, ao invés de parênteses, precisamos utilizar o << , assim como no
algoritmo, as aspas devem ser utilizadas quando queremos escrever algo na
tela do computador. Sempre que desejar imprimir uma variável, você deve fa-
zer como no exemplo: cout<< ”A soma dos dois números é: “ << soma;
No comando cout<< entre as aspas utilizamos o n isso significa: pular a li-
nha. Se você não utilizar o n tudo na tela irá ficar amontoado. Podemos utili-
zar vários n, pulando assim várias linhas, a única ressalva é que devem ser
usadas no cout e entre aspas.
O comando cin>> (lemos: c in) é equivalente ao comando Leia() do algoritmo.
Poderemos ler várias variáveis, veja: cin>> n1 >> n2 >> n3;
A função main () marca o ponto inicial do programa. Só poderá haver uma
função main () no programa. O tipo void, indica que não haverá retorno de
valor para a função main (). Lembre-se: escreva sempre com letra minúscula.
As chaves indicam o Início e o Fim.
A função getch() serve para o programa esperar algo a ser digitado. Se não
houver uma parada, o programa é executado de forma tão rápida que você
Algoritmos
25. SOCIESC–Sociedade Educacional de Santa Catarina 25
nem irá ver o resultado. Usando o getch(), você fará com que o programa
pare até você digitar algo.
Para a declaração das variáveis, no C++, o tipo sempre é colocado no início,
sem os dois pontos, exemplo: int numero1.
Para comentar algum item, demos usar: // e tudo que for escrito após // será
ignorado pelo compilador.
Na tabela 4, podemos encontrar uma comparação das variáveis e de coman-
dos entre algorimtos e C++. Observe que há alguns tipos de variáveis que serão u-
sados mais adiantes.
Tabela 4 – Comparação de Comandos
Algoritmo C++ Função
Leia ( ) cin >> Leitura de valores
Escreva ( ) cout << Impressão na tela
inteiro int Variáveis do tipo inteiro
real float Variáveis do tipo decimal
caracter char Variáveis do tipo caracters
Início Fim { } Inicia e termina um bloco
3.2 EXEMPLIFICANDO ALGORITMOS SEQÜENCIAIS
A característica básica desses programas é que eles começam e terminam
sem permitir desvio ou possibilidade do usuário poder escolher algum caminho.
É importante fazer uma análise prévia antes de começarmos a fazer o algo-
ritmo. Nesta análise devemos ler com cuidado o que é pedido no enunciado. Deve-
mos ter claramente os itens abaixo:
Definição do resultado: O que realmente precisamos fazer no pro-
grama?
Os dados de saída: Qual será o resultado do programa? Quais os da-
dos de saída que serão impressos na tela?
Os dados de entrada: quais são as informações que precisamos soli-
citar para chegar ao resultado de saída?
Algoritmos
26. SOCIESC–Sociedade Educacional de Santa Catarina 26
Dica:
Nos primeiros programas, você deve escrever essa análise antes do algoritmo. Fa-
zendo isso, você rapidamente, conseguirá ler e enteder o enunciado do programa
que deverá ser feito.
3.2.1 ANÁLISE – PASSOS PARA A RESOLUÇÃO DE UM ENUNCIADO
1º Passo: Ler o enunciado
Crie um programa que peça um número inteiro e imprima na tela: o número informa-
do, o dobro do número informado, o tripo do número informado.
2º Passo: Análise do enunciado
Definição do resultado: calcular o dobro e o triplo do número informado.
Dados de saída: devemos imprimir o dobro e o triplo; ambos do tipo inteiro.
Dados de entrada: devemos pedir um número, que no caso deve ser inteiro.
3º Passo: Criação do Algoritmo
Algoritmo Calculando_o_Dobro_e_Triplo;
Variáveis numero, dobro, triplo: inteiro;
Inicio
Escreva (“ Programa que Calcula o Dobro e o Triplo de um Número “);
Escreva (“ Informe um número: “);
Leia (numero);
dobro = numero * 2;
triplo = numero * 3;
Escreva (“ O dobro de:”, numero,” é :”, dobro, “ e o Triplo é:”, triplo);
Fim.
Algoritmo Calculando_o_Dobro_e_Triplo
Algoritmos
27. SOCIESC–Sociedade Educacional de Santa Catarina 27
4º Passo: Criação do Programa em C++
// Programa dobro_triplo.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
int numero, dobro, triplo;
cout<< “ n que Calcula o Dobro e o Triplo de um Número” ;
cout<< “ n Informe um número:” ;
cin>> numero;
dobro = numero * 2;
triplo = numero * 3;
cout<< ”n O dobro de:”<< numero<<” é :” << dobro<< “ e o Triplo é:”<<triplo;
getch( );
}
Programa dobro_triplo.cpp
Algoritmos
28. SOCIESC–Sociedade Educacional de Santa Catarina 28
Exercícios Propostos
1. Encontre os erros do algoritmo abaixo e reescreva o que está errado:
Algoritmo Procurando Erros;
Variáveis numero 1 e numero 2: inteiro;
soma: caracter;
Inicio
Escreva (“ Digite o valor do Primeiro Número: “);
Leia (numero1);
Escreva ( Digite o valor do Segundo Número:);
Leia ( numero 2);
soma = numero1 + numero2;
Escreva (“ O Número 1: “ , numero1, “ e o Número 2: “ , numero2, “ é : , soma “ );
Fim.
2. Crie um programa em algoritmo e em C++, que leia dois números inteiros. O pro-
grama deverá imprimir: a soma dos dois números, a multiplicação dos dois números.
O programa deverá imprimir também o resultado do valor da soma, subtraído do va-
lor da multiplicação que foram calculados antes.
Algoritmos
29. SOCIESC–Sociedade Educacional de Santa Catarina 29
Aula 4
ESTRUTURA DE SELEÇÃO
Objetivos da aula
Ao final desta aula, você deverá ser capaz de:
Criar algoritmos com estruturas de seleção simples;
Converter os algoritmos para a linguagem de programação C++.
Conteúdos da aula
Acompanhe os assuntos desta aula, se preferir, após o seu término, assinale
o conteúdo já estudado.
Exemplos de programas com estrutura de seleção.
Exercícios propostos.
Olá aluno!
Você está evoluindo bem. Vamos agora entrar na
estrutura de seleção. Preste muita atenção.
Boa aula!
Algoritmos
30. SOCIESC–Sociedade Educacional de Santa Catarina 30
4. SELEÇÃO SIMPLES
Segundo Mizrahi (1994, p.87), uma das tarefas fundamentais de qualquer pro-
grama é decidir o que deve ser executado a seguir. Os comandos de seleção permi-
tem determinar qual é a ação a ser tomada com base no resuldado de uma expres-
são condicional. Podemos, dessa forma, selecionar alternativas, dependendo de cri-
térios que foram estabelecidos no programa.
São três os tipos de seleção num programa:
Seleção simples
Seleção composta
Seleção de múltiplas escolhas.
É importante afirmar que podemos utilizar algum tipo de seleção ou todos
num mesmo programa.
A seleção simples serve para uma comparação simples. Com o comando:
Se < comandos>
então < opções>;
senão < opções> ;
Observe:
Se (valor1 > valor2 )
então Escreva (“ O valor1 é maior”) ;
senão Escreva (“ O valor1 não é maior”);
A comparação é feita e, Se for verdadeira, o comando então fará o que for
programado, no caso será: Escreva (“O valor1 é maior”). Se a comparação não for
verdadeira, o comando senão fará o que for determinado, no caso do exemplo, im-
primirá o comando: Escreva (“O valor1 não é maior”).
Podemos utilizar o comando Se sem utilizarmos a opção Senão.
Se (valor1 > valor2 )
então Escreva (“O valor1 é maior”);
Algoritmos
31. SOCIESC–Sociedade Educacional de Santa Catarina 31
Nesse caso, estaríamos somente analisando se o valor1 é maior que o va-
lor2, caso contrário não interessa e não faremos nada a respeito.
Dica:
Muita atenção nos ponto e vírgulas. Você só poderá utilizá-los atrás dos comandos
que estão logo após o então ou o senão.
4.1 PRIMEIRO EXEMPLO – SELEÇÃO SIMPLES
No algoritmo Selecao_Exemp1, temos o seguinte enunciado: Faça um pro-
grama que peça ao usuário dois números inteiros, você deverá somar os dois núme-
ros informados, se o valor for menor que 100, diminua 10 e imprima. Senão, imprima
o valor da soma dos números somente.
Passos para a resolução, analisando o enunciado:
Definição do resultado: calcular a soma dos 2 números informados. Ana-
lisar o resultado, para diminuir ou não antes de imprimir o resultado.
Dados de saída: imprimir o resultado da soma Se > 100 diminuir 10 Se-
não: somente imprimir o resultado da soma.
Dados de entrada: devemos pedir dois números inteiros.
O algoritmo:
Algoritmo Seleção_Exemp1;
Variáveis numero1, numero2, soma, resultado: inteiro;
Inicio
Escreva (“ Programa que Verifica a Soma de 2 Números “);
Escreva (“ Informe um número: “);
Leia (numero1);
Escreva (“ Informe outro número: “);
Leia (numero2);
soma= numero1 + numero2;
SE (soma > 100) ENTÃO
Inicio
resultado = soma – 100;
Escreva (“ O resultado é :”, resultado);
Fim;
Algoritmos
32. SOCIESC–Sociedade Educacional de Santa Catarina 32
SENÃO
Escreva (“ O resultado é :”, soma);
Fim.
Algoritmo Seleção_Exemp1
Comentários sobre o algoritmo Seleção_Exemp1:
No comando SE (soma > 100) se a comparação for verdadeira, se o valor da
soma for maior que 100 ENTÃO iremos subtrair 100 e após iremos imprimir o
resultado. Importante: como são duas ações: somar e imprimir; devemos co-
locar um comando Início antes dos comandos e o comando Fim após os co-
mandos.
No comando SE (soma > 100); se a comparação for falsa, o valor da soma se-
rá impresso. Como é um comando somente, no caso o Escreva (), não é ne-
cessário o Início e o Fim. Se preferir, poderá usar, isso não causará proble-
mas.
Sempre devemos usar os comandos Início e Fim se houver mais de um co-
mando no Então e ou no Senão.
A conversão do algortimo Seleção_Exemp1 para C++ :
// Programa Seleção_Exemp1.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
int numero1, numero2, soma, resultado;
cout<< “ n Programa que Verifica a Soma de 2 Números” ;
cout<< “ n Informe um número:” ;
cin>> numero1;
cout<< “ n Informe outro número:” ;
cin>> numero2;
soma= numero1 + numero2;
if (soma > 100) // Comentário: if é igual a Se
{
resultado = soma – 100;
Algoritmos
33. SOCIESC–Sociedade Educacional de Santa Catarina 33
cout<<“ O resultado é :”<< resultado;
}
else // Comentário : else é igual ao senão
cout<<“ O resultado é :”<< soma;
getch( );
}
Programa Seleção_Exemp1.cpp
Comentários sobre o programa Seleção_Exemp1.cpp:
Observou a diferença do comando SE do algoritmo do if do C++? No C++ não
temos o comando ENTÃO, simplesmente não precisamos colocar.
No C++, o comando fica assim: if (<condição> ) else
Toda vez que precisarmos inserir um comentário no programa, devemos utili-
zar as duas barras: // e tudo o que for digitado será ignorado.
A indentação do programa é muito importante. Indentação e a forma “arruma-
da” de arrumarmos o programa, com espaçamentos, respeitando os blocos de
cada comando.
Blocos de comandos são comandos com várias opções. No programa acima,
temos dois blocos. O primeiro bloco: é o próprio main ( ) que inicia e termina,
por isso precisa da abertura da chaves e de seu fechamento no final do pro-
grama – { }. O segundo bloco: é o comando if.
4.2 SEGUNDO EXEMPLO – SELEÇÃO SIMPLES
No algoritmo Selecao_Exemp2, temos o seguinte enunciado: Faça um pro-
grama que leia a idade de uma pessoa. Verifique se a pessoa pode ou não ter car-
teira de motorista. Escreva uma mensagem informativa ao usuário.
Passos para a resolução, analisando o enunciado:
Definição do resultado: verificar a idade, se maior que 18 anos pode diri-
gir, senão é proibido.
Dados de saída: imprimir mensagens, se a idade > 18 poderá dirigir, caso
contrário imprimir a mensagem negativa.
Dados de entrada: solicitar a idade da pessoa e deve ser do tipo inteiro.
Algoritmos
34. SOCIESC–Sociedade Educacional de Santa Catarina 34
O algoritmo:
Algoritmo Seleção_Exemp2;
Variáveis idade: inteiro;
Inicio
Escreva (“ Programa que Verifica Se Você Pode ou Não Dirigir“);
Escreva (“ Digite a sua idade: “);
Leia (idade);
SE (idade > = 18) ENTÃO
Inicio
Escreva (“ Sua idade é :”, idade);
Escreva (“ Você já pode dirigir, mas primeiro precisar tirar a carteira”);
Fim;
SENÃO
Inicio
Escreva (“ Sua idade é :”, idade);
Escreva (“ Você não pode dirigir, precisa andar de ônibus, aguarde os 18”);
Fim;
Fim.
Algoritmo Seleção_Exemp2
Atenção: Verifique que na comparação do SE (idade > = 18), utilizamos o sinal de
igual. Por quê? Simples: se você fez 18 anos, você já é considerado maior de idade.
Se deixássemos apenas (idade > 18), somente quando você informasse 19 seria
impresso a mensagem que poderia dirigir.
A conversão do algortimo Seleção_Exemp2 para C++
// Programa Seleção_Exemp2.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
int idade;
cout<< “ n Programa que Verifica Se Você Pode ou Não Dirigir” ;
cout<< “ n Digite a sua idade:” ;
cin>> idade;
if (idade >= 18)
Algoritmos
35. SOCIESC–Sociedade Educacional de Santa Catarina 35
{
}
else
{
}
cout<< “n Sua idade é :”<< idade;
cout<< “n Você já pode dirigir, mas primeiro precisar tirar a carteira”;
cout<<“ n Sua idade é :” << idade;
cout<<“ n Você não pode dirigir, precisa andar de ônibus, aguarde os 18”;
getch( );
}
Programa Seleção_Exemp2.cpp
4.3 TERCEIRO EXEMPLO – SELEÇÃO SIMPLES
No algoritmo Selecao_Exemp3, temos o seguinte enunciado: Faça um pro-
grama que peça ao usuário que informe uma letra referente ao seu sexo. Digitar F
para feminino ou M para masculino. Escreva uma mensagem informativa do sexo ao
usuário.
Passos para a resolução, analisando o enunciado:
Definição do resultado: verificar a letra informada referente ao sexo.
Dados de saída: imprimir mensagens conforme o sexo.
Dados de entrada: solicitar a idade da pessoa e deve ser do tipo inteiro.
O algoritmo:
Algoritmo Seleção_Exemp3;
Variáveis sexo: caracter;
Inicio
Escreva (“ Programa que Imprime a Letra Referente ao Sexo“);
Escreva (“ Digite a letra F para Feminino ou M para Masculino: “);
Leia (sexo);
SE ( (sexo = ‘F’) ou (sexo = ‘f’) ) ENTÃO
Inicio
Escreva (“ Sexo é FEMININO”);
Fim;
SE ( (sexo = ‘M’) OU (sexo = ‘m’) ) ENTÃO
Inicio
Escreva (“ Sexo é MASCULINO”);
Algoritmos
36. SOCIESC–Sociedade Educacional de Santa Catarina 36
Fim.
Fim;
Algoritmo Seleção_Exemp3
Comentários do algoritmo Seleção_Exemp3:
Primeiro, observe que o tipo da variável é caracter, para que possamos ler
uma letra.
Na comparação: sexo = ‘M’, o M está entre aspas simples (apóstrofo), preci-
samos utilizar aspa simples, senão precisaríamos declarar o M e o F. Esse
recurso só vale para um único caracter.
Estamos utilizando uma comparação mais completa. Verifique que na compa-
ração do SE ( (sexo = ‘M’) ou (sexo = ‘m’) ) utilizamos o operador OU. Con-
forme já mencionamos: letras maiúsculas são diferentes das letras minúscu-
las. Portanto, se o usuário digitar o F maiúsculo e o seu programa está tes-
tando o f minúsculo, não teremos o resultado correto sendo impresso.
A conversão do algortimo Selecao_Exemp2 para C++
// Programa Seleção_Exemp3.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
char sexo;
cout<< “ n Programa que Imprime a Letra Referente ao Sexo” ;
cout<< “ n Digite a letra F para Feminino ou M para Masculino:” ;
cin>> idade;
if ( (sexo = = ‘F’) || (sexo = =‘f’) )
{
cout<< “n Sexo é FEMININO”;
}
if ( (sexo = = ‘M’) || (sexo = =‘m’) )
{
cout<< “n Sexo é MASCULINO”;
}
Algoritmos
37. SOCIESC–Sociedade Educacional de Santa Catarina 37
getch( );
}
Programa Seleção_Exemp3.cpp
Importante observar que:
Na expressão: if ( (sexo = = ‘F’) || (sexo = =‘f’) ) nunca haverá ponto e vírugula
no fim do parênteses. O comando OU está representado pelo || . É fundamen-
tal ter um parêntese maior entre as condições de teste.
O sinal de igualdade no algoritmo é o simples igual e no C++ é o duplo: ==
É muito comum esquecer de abrir ou fechar uma chave. Preste muita aten-
ção: toda vez que houver mais de um comando após o if ou após o else de-
vemos colocar as chaves. Se você observar o exemplo, no comando if, só há
um comando e mesmo assim usei a chaves. Isso pode? Claro que sim, aliás,
tenho como hábito sempre colocar as chaves em meus if´s, por isso, a partir
de agora, você verá em todos os meus programas o uso das chaves.
Algoritmos
38. SOCIESC–Sociedade Educacional de Santa Catarina 38
Exercícios Propostos
1. Faça um programa em algortimo que deverá pedir a idade. Conforme a idade de-
verá ser impressa uma mensagem somente na tela, informando:
Se a pessoa for menor de 16 anos não pode votar ainda
Se a pessoa tiver entre 16 anos e 18 anos vota se quiser
Se a pessoa tiver mais de 18 anos por lei, a votar.
Algoritmos
39. SOCIESC–Sociedade Educacional de Santa Catarina 39
Aula 5
SELEÇÃO COMPOSTA
Objetivos da aula
Ao final desta aula, você deverá ser capaz de:
Criar programas com seleção composta, convertendo-os para a linguagem de
programação C++.
Conteúdos da aula
Acompanhe os assuntos desta aula, se preferir, após o seu término, assinale
o conteúdo já estudado.
Exemplo de programas com estruturas de seleção composta;
Exercícios propostos.
Caro aluno!
Muito bem. Para darmos continuidade, vamos agora entrar no assunto rela-
cionado a seleção composta.
Boa aula!
Algoritmos
40. SOCIESC–Sociedade Educacional de Santa Catarina 40
5. SELEÇÃO COMPOSTA
A seleção composta são conjuntos de seleções. Podemos inserir condições
dentro de condições. Isso é muito útil quando precisamos realizar vários testes. Ob-
serve a estrutura do comando:
SE <condição1>
Então Se a condição do teste no Se for verdadeira
Início
Se <condição2> Então
Início
Comando 1;
Comando 2;
Fim;
Fim;
Senão
Início
Se <condição3>
Então
Início
Comando 1;
Comando 2;
Fim;
Fim;
Dica:
Todo cuidado é pouco no comando de seleção composta. As múltiplas op-
ções podem trazer o famoso “erro de lógica”, que nada mais é do que um erro na
hora de construir as opções nas condições. Caso isso ocorra em um de seus pro-
gramas, a forma mais fácil de achar o erro é verificar condição por condição. Anali-
sando o valor de cada variável e verificando o teste para saber o resultado e assim
procurar descobrir o erro.
Algoritmos
41. SOCIESC–Sociedade Educacional de Santa Catarina 41
5.1 PRIMEIRO EXEMPLO – SELEÇÃO COMPOSTA
Iremos complementar o algoritmo Selecao_Exemp3. Nele temos o seguinte
enunciado: Faça um programa que peça ao usuário que informe uma letra referente
ao seu sexo. Digitar F para feminino ou M para masculino. Escreva uma mensagem
informativa do sexo ao usuário. Qualquer letra informada que não seja a letra F ou M
deverá ser impressa a mensagem: Favor digitar certo da próxima vez.
Passos para a resolução, analisando o enunciado:
Definição do resultado: verificar a letra informada referente ao sexo.
Dados de saída: imprimir mensagens conforme o sexo e mensagem de
erro, se digitado algo diferente de F ou M.
Dados de entrada: solicitar a idade da pessoa e deve ser do tipo inteiro.
O algoritmo:
Algoritmo Seleção_Composta_1;
Variáveis sexo: caracter;
Inicio
Escreva (“ Programa que Imprime a Letra Referente ao Sexo“);
Escreva (“ Digite a letra F para Feminino ou M para Masculino: “);
Leia (sexo);
SE ( (sexo = ‘F’) ou (sexo = ‘f’) ) ENTÃO
Inicio
Escreva (“ Sexo é FEMININO”);
Fim;
SENÃO
SE ( (sexo = ‘M’) OU (sexo = ‘m’) ) ENTÃO
Inicio
Escreva (“ Sexo é MASCULINO”);
Fim;
SENÃO
Início
Escreva (“ Letra Errada -- Favor Digitar Certo da Próxima Vez ”);
Fim;
Fim.
Algoritmo Seleção_Composta_1
Algoritmos
42. SOCIESC–Sociedade Educacional de Santa Catarina 42
Observe a seqüência dos testes, no algoritmo Seleção_Composta1:
Primeiro SE: verificamos se a letra digitada é F ou f
Se o primeiro teste não for verdade, O SENÃO entra em ação e no segundo
SE: verificamos se a letra digitada é M ou m
Se a letra informada também não for M ou m, isso significa que a pessoa digi-
tou outra coisa, portanto o outro SENÃO entra em ação e imprimimos a men-
sagem, que a pessoa digitou algo diferente de F ou M
A conversão do algortimo Seleção_Composta1 para C++, ficará assim:
// Programa Seleção_Composta1.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
char sexo;
cout<< “ n Programa que Imprime a Letra Referente ao Sexo” ;
cout<< “ n Digite a letra F para Feminino ou M para Masculino:” ;
cin>> sexo;
if ( (sexo = = ‘F’) || (sexo = =‘f’) )
{
}
else
cout<< “n Sexo é FEMININO”;
if ( (sexo = = ‘M’) || (sexo = =‘m’) )
{
cout<< “n Sexo é MASCULINO”;
}
else
{
cout<< “n Letra Errada -- Favor Digitar Certo da Próxima Vez”;
}
getch( );
}
Programa Seleção_Composta1.cpp
Algoritmos
43. SOCIESC–Sociedade Educacional de Santa Catarina 43
5.2PRIMEIRO EXEMPLO – SELEÇÃO COMPOSTA
No exemplo de Forbellone (2000, p.41), temos a seguinte situação: Dados
três valores A, B,C; verificar se eles podem ser os comprimentos dos lados de um
triângulo. Se forem, verificar o tipo de triângulo: eqüilátero, isósceles ou escaleno.
Caso os valores A, B e C não formarem um triângulo, uma mensagem deverá ser
informada. Detalhes:
a. É triângulo se: ( A < B + C ) e ( B < A + C) e ( C < A + B )
b. É eqüilátero se: ( A = B ) e ( B = C) dois lados iguais
c. É isósceles se: ( A = B ) ou ( A = C ) ou ( B = C) todos os lados i-
guais
d. É escaleno se: ( A <> B ) e ( B <>C ) todos os lados diferentes
Passos para a resolução do enunciado:
Definição do resultado: verificar se os valores informados podem formar
um triângulo. Determinar o tipo de triângulo:
Dados de saída: Uma mensagem informando se os valores de A, B e C
não formam um triângulo; ou uma mensagem informando qual o tipo de
triângulo: isósceles, escaleno ou eqüilátero.
Dados de entrada: pedir para informar três valores A, B e C.
O algoritmo:
Algoritmo Triangulo;
Variáveis A, B, C : inteiro;
Inicio
Escreva (“ Programa que Imprime o Tipo de Triângulo “);
Escreva (“ Digite o Primeiro Lado do Triângulo “);
Leia (A);
Escreva (“ Digite o Segundo Lado do Triângulo “);
Leia (B);
Escreva (“ Digite o Terceiro Lado do Triângulo “);
Leia (C);
SE ( (A < B + C ) e ( B < A + C) e ( C < A + B ) )
ENTÃO
Algoritmos
44. SOCIESC–Sociedade Educacional de Santa Catarina 44
SE ( ( A = B ) e ( B = C) )
ENTÃO
Escreva (“Triângulo Equilátero”);
SENÃO
SE ( ( A = B ) ou ( A = C ) ou ( B = C) )
ENTÃO
Escreva (“Triângulo Isóscele”);
SENÃO
Escreva (“Triângulo Isóscele”);
Fim.
SENÃO
Escreva (“Estes valores não formam um triângulo”);
Algoritmo Triangulo
A conversão do algortimo Seleção_Composta1 para C++, ficará assim:
// Programa Triangulo.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
int A, B, C;
cout<< “ n Programa que Imprime o Tipo de Triângulo” ;
cout<< “ n Digite o Primeiro Lado do Triângulo:” ;
cin>> A;
cout<< “ n Digite o Segundo Lado do Triângulo:” ;
cin>> B;
cout<< “ n Digite o Terceiro Lado do Triângulo:” ;
cin>> C;
if ( (A < B + C ) && ( B < A + C) && ( C < A + B ) )
{
if ( ( A == B ) && ( B == C) )
cout <<“n Triângulo Equilátero”;
else
if ( ( A ==B ) || ( A ==C ) || ( B == C) )
cout <<“n Triângulo Isóscele”;
else
cout <<“n Triângulo Isóscele”;
}
Algoritmos
45. SOCIESC–Sociedade Educacional de Santa Catarina 45
else
cout <<“n Estes valores não formam um triângulo”;
getch( );
}
Programa Triangulo.cpp
Comentários:
Na comparação: if ( (A < B + C ) && ( B < A + C) && ( C < A + B ) ) utiizamos
o operador && que é o E no algoritmo. Como usamos dois conjuntos de &&,
significa que, somente SE todas as condições forem verdadeiras, como resul-
tado, ao final formam um triângulo.
Na comparação: if ( ( A == B ) || ( A == C ) || ( B == C) ) Se qualquer uma das
condições for verdadeira, teremos um triângulo eqüilátero, que tem dois lados
iguais.
Na comparação: if ( ( A == B) && ( B == C) ), um erro que pode passar des-
percebido é trocar os dois sinais de igual por um sinal. Isso não irá provocar
um erro. O computador “pensará” que a variável A receberá o valor de B. Por
isso é fundamental muita atenção na digitação correta da igualdade.
Algoritmos
46. SOCIESC–Sociedade Educacional de Santa Catarina 46
Exercícios Propostos
1. Faça um algoritmo que peça dois valores: uma letra referente ao sexo e número
inteiro referente à idade. Imprima uma mensagem avisando se a pessoa poderá ou
não se aposentar. Para aposentadoria, os seguintes critérios deverão ser analisa-
dos:
Aposentadoria para homens somente depois dos 65 anos.
Aposentadoria para mulheres somente depois dos 60 anos.
Algoritmos
47. SOCIESC–Sociedade Educacional de Santa Catarina 47
Aula 6
SELEÇÃO MÚLTIPLA ESCOLHA
Objetivos da aula
Ao final desta aula, você deverá ser capaz de:
Conhecer e aplicar a seleção de múltipla escolha em programas;
Estabelecer a necessidade desse comando na construção de programas.
Conteúdos da aula
Acompanhe os assuntos desta aula, se preferir, após o seu término, assinale
o conteúdo já estudado.
Exemplificação de programas de múltipla escolha;
Exercícios propostos.
Prezado aluno!
Chegamos na etapa de estudarmos a seleção múltipla escolha.
Boa aula!
Algoritmos
48. SOCIESC–Sociedade Educacional de Santa Catarina 48
6. SELEÇÃO MÚLTIPLA ESCOLHA
Quando precisamos testar a mesma variável com uma série de valores, po-
demos utilizar a Seleção de Múltipla Escolha: Escolha. A variável do teste deve ser
sempre do tipo inteiro ou caracter. O comando Escolha é muito utilizado quando
oferecemos várias opções ao usuário, deixando que escolha um valor dentre vários.
A vantagem principal desse comando é que ele evita uma série de testes com o co-
mando SE. A desvantagem é que os testes somente irão funcionar para variáveis
inteiras ou do tipo caracter. A sintaxe do comando é:
Escolha < condição>
Início
caso 1: comandos;
caso 2: comandos;
senão comandos
Fim;
6.1 Primeiro Exemplo de Seleção de Múltipla Escolha
Observe o algoritmo Exemplo_Escolha, demonstrando o uso do comando:
Algoritmo Exemplo_Escolha;
Variáveis sexo: caracter;
Inicio
Escreva (“ Programa que Imprime a Letra Referente ao Sexo“);
Escreva (“ Digite a letra F para Feminino ou M para Masculino: “);
Leia (sexo);
Escolha (sexo)
Início
Caso ‘f’,’F’: Escreva (“ Sexo é FEMININO”);
Caso ‘m’,’M’: Escreva (“ Sexo é MASCULINO”);
Senão Escreva (“ Letra Errada -- Favor Digitar Certo da Próxima Vez ”);
Fim;
Fim.
Comentários:
Algoritmo Exemplo_Escolha
Algoritmos
49. SOCIESC–Sociedade Educacional de Santa Catarina 49
Observe que este programa é o mesmo da aula anterior, porém usamos o
comando Escolha. A diferença é visível pela diminuição do tamanho.
O comando Escolha avalia o conteúdo da variável sexo, caso seja F, imprimi-
rá a mensagem: “Sexo é FEMININO”. Se a resposta não for F e for M, a men-
sagem a ser impressa será: “Sexo é MASCULINO”. E, se este teste também
não for F ou não for M, a mensagem do Senão será impressa.
Podemos, separando por vírgulas as opções como no Caso ‘f’,’F’:
Atenção aos ponto e vírgulas: após o comando Escolha não há ponto e vírgu-
la. Em cada opção dos Comandos de cada Caso, sempre teremos o ponto e
vírgula.
Podemos colocar mais comandos após o Caso: basta colocar o comando iní-
cio e fim – fique atento ao próximo algoritmo.
Conversão para a linguagem C++:
// Programa Exemplo_Escolha.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
char sexo;
cout<< “ n Programa que Imprime a Letra Referente ao Sexo” ;
cout<< “ n Digite a letra F para Feminino ou M para Masculino:” ;
cin>> idade;
switch (sexo)
{
case ‘f’,’F’: {cout << “n Sexo é FEMININO”; break;}
case ‘m’,’M’: {cout << “n Sexo é MASCULINO”; break;}
else cout << “n Letra Errada -- Favor Digitar Certo da Próxima Vez”;
}
getch( );
}
Considerações:
Programa Exemplo_Escolha.cpp
No C++ o comando Escolha é o switch (). Após a condição, é necessário
o uso das chaves (que representam o início e o fim do comando)
Algoritmos
50. SOCIESC–Sociedade Educacional de Santa Catarina 50
Dica:
O algoritmo que verifica o tipo do triângulo: Algorimo Triangulo, não pode utilizar o
comando Escolha. Como no algoritmo Triangulo, há uma série de condições para
verificar os lados do triângulo. O comando Escolha é para um teste simples, com
várias possibilidades de resultado.
6.2 Segundo Exemplo de Seleção de Múltipla Escolha
No próximo exemplo, veremos um programa que solicita ao usuário dois nú-
meros inteiros. Em seguida o usuário deve escolher um caracter entre esses: + ou –
ou *, pois cada sinal irá representar o cálculo que deverá ser feito. Imprima o valor
resultante.
Algoritmo Mini_Calculadora;
Variáveis sinal: caracter;
num1, num2 : inteiro;
Inicio
Escreva (“ Programa Mini Calculadora“);
Escreva (“ Informe o Primeiro Número: “);
Leia (num1);
Escreva (“ Informe o Segundo Número: “);
Leia (num2);
Escreva (“ Informe um dos sinais: + - * “);
Leia (sinal);
Escolha (sinal)
Início
Caso ‘+’: Escreva (“ A soma dos números é : “, num1 + num2);
Caso ‘-’: Escreva (“ A subtração dos números é : “, num1- num2);
Caso ‘*’: Escreva (“ O produto dos números é : “, num1 * num2);
Senão Escreva (“ Sinal Errado -- Favor Digitar Certo da Próxima Vez ”);
Fim;
Fim.
Comentário:
Algoritmo Mini_Calculadora
No programa não foi criado uma variável para guardar o resultado das
operações de cálculo. Como simplesmente iremos somar os dois núme-
ros, podemos calcular diretamente no comando Escreva( ) desde que
Algoritmos
51. SOCIESC–Sociedade Educacional de Santa Catarina 51
não estejam entre as aspas. O computador imprime tudo que há entre as
aspas. Por essa razão todo cuidado é pouco!
Convertendo para C++, teremos o seguinte programa:
// Programa Mini_Calculadora.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
char sinal;
int num1,num2;
cout<< “ n Programa Mini Calculadora” ;
cout<< “ n Informe o Primeiro Número:” ;
cin>> num1;
cout<< “ n Informe o Segundo Número:” ;
cin>> num2;
cout<< “ n Informe um dos sinais: + - * ” ;
cin>> sinal;
switch (sinal)
{
case ‘+’: { cout<< “n “ A soma dos números é : “ << num1 + num2; break; }
case ‘-’: { cout<< “n “ A subtração dos números é : “ << num1- num2; break; }
case *’: { cout<< “n “ O produto dos números é : “<<num1 * num2; break; }
else { cout<< “n Letra Errada -- Favor Digitar Certo da Próxima Vez”; break; }
}
getch( );
}
Comentários:
Programa Mini_Calculadora.cpp
1. A variável sinal é do tipo char e é analisada no comando switch () – escolha
no algoritmo – conforme o valor da variável, o comando case será executado.
2. Em cada linha do comando switch(), usamos o case, <opção> e precisa-
mos utilizar o comando break, para forçar a saída no camando switch () se
não utilizarmos o break todas as opções do case serão testadas, mesmo se
algum comando case, já tenha sido usado antes.
Algoritmos
52. SOCIESC–Sociedade Educacional de Santa Catarina 52
Exercício Proposto
1. Faça um algoritmo que peça um número inteiro. Cada número representa um dia
da semana. Imprima o dia da semana por extenso, utilzando o comando Caso.
Algoritmos
53. SOCIESC–Sociedade Educacional de Santa Catarina 53
Aula 7
ESTRUTURAS DE REPETIÇÃO
Objetivos da aula
Ao final desta aula, você deverá ser capaz de:
Demonstrar o uso das vantagens da estrutura de repetição;
Utilizar as três estruturas de repetição.
Conteúdos da aula
Acompanhe os assuntos desta aula, se preferir, após o seu término, assinale
o conteúdo já estudado.
Comando de repetição com teste no início;
Comando de repetição com teste no fim;
Comando de repetição com variável de controle;
Exercícios propostos.
Olá Aluno!
Caso você já tenha compreendido o assunto até aqui, está evoluindo bem.
Agora iremos entrar em estruturas de repetição.
Boa aula!
Algoritmos
54. SOCIESC–Sociedade Educacional de Santa Catarina 54
7. ESTRUTURAS DE REPETIÇÃO
Todos os programas apresentados até agora não permitem que sejam execu-
tados mais de uma vez. Se quisermos repetir algum programa precisamos sair do
programa e executá-lo novamente. Isso é inviável. Precisamos permitir repetições.
Outra necessidade: imagine se precisássemos calcular a média das notas de 500
alunos sabendo-se que cada aluno tem 4 notas. Se fôssemos criar todas essas vari-
áveis perderíamos um tempo enorme só na declaração dessas variáveis.
Segundo Forbellone (2000, p.49), uma estrutura de repetição é uma estrutura
com controle de fluxo de execução, que permite repetir diversas vezes um mesmo
trecho do programa. Do mesmo jeito que na estrutura de decisão, a estrutura de re-
petição depende do teste de uma condição.
São três os tipos de estruturas de repetição:
Repetição com teste no início: Enquanto ... Faça
Repetição com teste no fim: Repita ... Até
Repetição com variável de controle Para ... Faça
Na tabela 5, Estruturas de Repetição, observe o funcionamento das estruturas de
repetição:
Tabela 5: Estruturas de Repetição
Algoritmo C++ Como funciona?
Enquanto < condição> Faça
Início
comandos;
Fim;
while (x>b)
{ comandos;
}
O comando Enquanto primeiro a con-
dição é analisada, se for verdadeira os
comandos serão executados.
Repita
Início
comandos;
Fim;
Até <condição>;
do
{
comandos;
}
while( x>b);
O comando Repita executa os coman-
dos e faz o teste na condição. Fica
repetindo até a condição ser verdadeira
para poder terminar.
Para variável = valor_inicial Até
valor_final Faça
Início
comandos; Fim;
for (cont=1; cont<=100;
cont++)
{
comandos;
}
O comando Para incrementa, a variável
de controle a partir do valor_inicial , até
que, esta atinja o valor_final. Aumen-
tando o valor da variável de controle até
que o valor final seja alcançado. Execu-
tando os comandos a cada passagem.
Algoritmos
55. SOCIESC–Sociedade Educacional de Santa Catarina 55
Dica:
Coloque sempre dentro do bloco de repetição os comandos: Início e Fim. Mesmo se
for somente um comando. Isso ajudará a prevenir uma série de problemas, pois difi-
cilmente teremos somente um comando nessas estruturas de repetições. E não es-
queça da identação, para facilitar a visualização do comando.
7.1 COMANDO DE REPETIÇÃO: Para....Faça
A estrutura de repetição Para Faça, deve ser usada quando sabemos o nú-
mero exato de repetições. Na estrutura de repetição Para Faça devemos usar uma
variável de controle. Essa variável deve ser sempre do tipo inteiro ou caracter. Ob-
serve o algoritmo abaixo, que tem como objetivo imprimir na tela do computador,
todos os números de 1 até 100.
Algoritmo Repetir_com_Para;
Variáveis cont: inteiro;
Inicio
Escreva (“ Programa que Imprime Todos os Números de 1 até 100 “);
Para cont= 1 Até 100 Faça
Início
Escreva ( “ “, cont);
Fim;
Fim.
Comentários:
Algoritmo Repetir_com_Para
No algoritmo Repetir_com_Para, não precisamos pedir nenhum valor. O pro-
grama irá imprimir todos os números de 1 até 100.
O funcionamento da variável cont dentro do Para Faça: primeiro ela, a variá-
vel, recebe o valor um e este valor é impresso na tela com o comando Escre-
va. Após o comando, internamente, é realizada a soma de mais um ao valor
da variável cont (agora ela ficará com o valor igual a dois) e imprimirá na tela
o dois, o comando ficará repitindo essa operação até o valor do cont chegar a
Algoritmos
56. SOCIESC–Sociedade Educacional de Santa Catarina 56
cem, que será impresso e o comando irá parar. Indo para o próximo coman-
do do algoritmo que, nesse algoritmo, é fim, mas poderia ser outro qualquer.
Observe o comando Escreva( ) dentro do Para: Escreva(“ “,cont) - colo-
camos entre aspas dois espaços em branco, isso impedirá que os números fi-
quem grudados ao aparecer na tela. Sem os espaços, a resposta na tela seria
assim: 12345678910....até chegar ao 100. Com os espaços, ficará assim: 1 2
3 4 5 6 7 8 9 10 11 12 ...até 100
Convertendo para C++, teremos o seguinte programa:
// Programa Repetir_For.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
int cont;
cout<< “ n Programa que Imprime Todos os Números de 1 até 100 ” ;
for (cont = 1; cont<=100;cont ++)
{
cout<< “ “ << cont;
}
getch( );
}
Comentário:
Programa Repetir_For.cpp
No C++ o comando Para Faça sofre algumas alterações. A primeira é que
somente escrevemos o for, a segunda é que a condição tem três partes, aon-
de: cont=1 serve para inicializar a variável cont; cont<=100 é a condição de
teste que determina o limite do for; cont++ (isso é o mesmo que cont= cont+
1) significa que cont incrementa mais um, ou seja, que o cont recebe mais um
a cada vez que o comando for é executado.
Outro exemplo do uso do comando de Repetição Para .. Faça. Enunciado:
Calcule a soma de todos os números pares de 2 até 1000. Um número par é encon-
Algoritmos
57. SOCIESC–Sociedade Educacional de Santa Catarina 57
trado quando o resto de sua divisão for igual a zero. Portanto utilize o operador
MOD.
Passos para a resolução do enunciado:
Definição do resultado: verificar se o número é par, se for par deveremos
acumular o valor da soma.
Dados de saída: o resultado da soma de todos os pares.
Dados de entrada: nada há para ser solicitado ao usuário.
Algoritmo:
Algoritmo Soma_dos Pares;
Variáveis cont,result: inteiro;
Inicio
result=0;
Escreva (“ Programa que Imprime a Soma de Todos os Números Pares de 2 até 1000 “);
Para cont = 1 Até 1000 Faça
Início
Se (cont MOD 2 = 0) Então
Início
result= result + cont;
Fim;
Fim;
Escreva ( “A Soma de Todos os Números Pares é: “, result);
Fim.
Algoritmo Soma_dos Pares
Convertendo para C++:
// Soma_Pares.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
int cont, result;
cout<< “ n Programa que Imprime a Soma de Todos os Números Pares de 2 até 1000 ” ;
for (cont = 1; cont<=100;cont ++)
{
if (cont % 2==0)
{
result= result+cont;
Algoritmos
58. SOCIESC–Sociedade Educacional de Santa Catarina 58
}
}
cout <<” n A Soma de Todos os Números Pares é: “ << result;
}
getch( );
}
Programa Soma_Pares.cpp
Comentários:
No comando for ( cont=1; cont <= 100 ; cont ++), utilizamos a variável cont
++, isso significa que a variável cont recebe cont + 1 ou seja, cont = cont +1.
O comando funciona da sequinte forma: primeiro o cont recebe o valor um;
por segundo o comando faz a comparação e enquanto o cont for menor até
100 o comando for será repetido. Por último, o cont ++ é executado aonde o
contador é incrementado com mais um.
7.2 COMANDO DE REPETIÇÃO: Enquanto..Faça
A estrutura de repetição Enquanto é utilizada para repetir um bloco de co-
mandos por várias vezes, sem sabermos ao certo a quantidade exata de vezes. Pa-
ra isso criamos uma condição de teste, que é testada já no início do bloco. O uso do
comando Enquanto é ideal, quando precisamos sair do comando de uma forma re-
pentina ou assim que atingir algum objetivo. A forma geral do comando é:
Enquanto ( condição ) Faça
Início
Comando1;
Comando2;
Fim;
No comando Enquanto primeiro a condição é avaliada e enquanto a condição
for verdadeira, o comando Enquanto é executado. No momento em que a condição
deixar de ser verdadeira, o comando pára. Observe o algoritmo Media_Idades que
tem como objetivo: ler várias idades, sem limite, assim que for digitada a idade igual
a zero o programa deverá encerrar a leitura e apresentar a média de todas as idades
informadas e a quantidade de idades informadas.
Passos para a resolução, analisando o enunciado:
Algoritmos
59. SOCIESC–Sociedade Educacional de Santa Catarina 59
Definição do resultado: calcular a média das idades de várias pessoas
– não sabemos o limite - precisamos acumular o valor de cada idade e
contar quantas pessoas participaram da pesquisa.
Dados de saída: imprimir o valor da média das idades informadas e a
quantidade de idades informadas.
Dados de entrada: solicitar a idade da pessoa e deve ser do tipo inteiro.
Informar que para saber o resultado, deve ser digitada a idade igual a ze-
ro.
O algoritmo:
Algoritmo Media_Idades;
Variáveis idade, acumulador, contador: inteiro;
media: real;
Início
media = 0;
acumulador = 0;
contador = 0;
Escreva ( “ Programa que Imprime a Média das Idades de Várias Pessoas”);
Escreva ( “ Informe Uma Idade – Digite [0] Para Parar”);
Leia ( idade);
Enquanto (idade<> 0 ) Faça
Início
contador = contador +1;
acumulador = acumulador + idade;
Escreva ( “ Informe Uma Idade – Digite [0] Para Parar”);
Leia (idade);
Fim;
media = acumulador / contador;
Escreva ( “ A Quantidade de Idades Informadas é: “ , contador);
Escreva ( “ A Média de Idades Informadas é: “ , media);
Fim.
Algoritmo Media_Idades
Comentários sobre o algoritmo:
A diferença entre as variáveis: contador e acumulador. Contador é uma vari-
ável que servirá para contar a quantidade de vezes que foram informadas as
idades. A cada passagem pelo comando, o contador receberá mais um. A-
cumulador é a variável que irá armazenar a soma das idades informadas.
Um detalhe importante: variáveis que recebem valores durante o programa
devem ser inicializadas com um valor. No caso do exemplo, elas foram inicia-
lizadas com o valor zero.
Algoritmos
60. SOCIESC–Sociedade Educacional de Santa Catarina 60
Convertendo o algoritmo para C++:
// Media_Idades.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
int idade, acumulador=0, contador=0;
float media=0;
cout << “ n Programa que Imprime a Média das Idades de Várias Pessoas” ;
cout << “ n Informe Uma Idade – Digite [0] Para Parar”;
cin>> idade;
while (idade<> 0 ) do
{
contador = contador +1;
acumulador = acumulador + idade;
cout << “ n Informe Uma Idade – Digite [0] Para Parar”;
cin>> idade;
}
media = acumulador / contador;
cout << “ n A Quantidade de Idades Informadas é: “ << contador;
cout << “ n A Média de Idades Informadas é: “ << media;
getch( );
}
Programa Media_Idades.cpp
7.3 COMANDO DE REPETIÇÃO: Repita ... Até
O comando Repita realiza o teste da condição no final do comando. Isso quer
dizer que ao menos uma vez o comando será executado. Esse comando é o oposto
do comando Enquanto, visto que, o Enquanto primeiro testa para entrar no bloco e
o Repita primeiro executa para depois testar a condição. A estrutura do comando é:
Repita
Início
Comando1;
Comando 2;
Comando 3;
Fim;
Até <condição>;
No algoritmo anterior: Media_Idades, não seria conveniente utilizar o coman-
do Repita, visto que o teste é no fim do comando. Imagine se alguém logo no primei-
ro teste forneça um valor de idade igual a zero. As variáveis: acumulador e contador
irão acumular e contar respectivamente. Tornando o resultado errado, pois estariam
permitindo a entrada de da idade iguala zero nos cálculos.
Algoritmos
61. SOCIESC–Sociedade Educacional de Santa Catarina 61
Aproveitando o algoritmo Mini_Calculadora, feito na Aula 6, o uso do coman-
do Repita será demonstrado. Esse programa irá pedir dois números e um sinal ( +
ou – ou *). Conforme o sinal, ele irá mostrar o resultado da operação e pronto. Se
desejar repetir com novos números para teste, não será possível. A não ser, é claro,
que você feche o programa e o compile novamente.
Para evitar esse transtorno, podemos facilmente utilizar o comando Repita,
perguntando ao usuário se ele deseja continuar a testar o programa, informando no-
vos valores.
Para isso, basta criar uma nova variável, que irá armazenar a resposta (sim
ou não).
Observe o algoritmo Mini_Calculadora2:
Algoritmo Mini_Calculadora2;
Variáveis sinal, resposta: caracter;
num1, num2 : inteiro;
Inicio
Repita
Início
Escreva (“ Programa Mini Calculadora“);
Escreva (“ Informe o Primeiro Número: “);
Leia (num1);
Escreva (“ Informe o Segundo Número: “);
Leia (num2);
Escreva (“ Informe um dos sinais: + - * “);
Leia (sinal);
Escolha (sinal)
Início
Caso ‘+’: Escreva (“ A soma dos números é : “, num1 + num2);
Caso ‘-’: Escreva (“ A subtração dos números é : “, num1- num2);
Caso ‘*’: Escreva (“ O produto dos números é : “, num1 * num2);
Senão Escreva (“ Sinal Errado -- Favor Digitar Certo da Próxima Vez ”);
Fim;
Escreva (“ Deseja Repetir o Programa? Digite S – para sim ou N para não “);
Leia (resposta);
Fim;
Até ( ( resposta = ’n’ ) OU (resposta = ’N’ ) );
Fim.
Algoritmo Mini_Calculadora2
Algoritmos
62. SOCIESC–Sociedade Educacional de Santa Catarina 62
Comentário:
Após o programa imprimir o resultado do cálculo, uma nova mensagem
irá surgir, perguntando: “Deseja Repetir o Programa? Digite S – para sim
ou N para não”. O comando Leia ( ) irá ler a resposta do usuário. Se for S
o programa irá repetir, mas se for N o programa irá encerrar. Resumindo:
o programa só termina quando for digitada a letra n ou N.
Convertendo para C++, teremos o seguinte programa:
// Programa Mini_Calculadora.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
char sinal, resposta;
int num1,num2;
do
{
cout<< “ n Programa Mini Calculadora” ;
cout<< “ n Informe o Primeiro Número:” ;
cin>> num1;
cout<< “ n Informe o Segundo Número:” ;
cin>> num2;
cout<< “ n Informe um dos sinais: + - * ” ;
cin>> sinal;
switch (sinal)
{
case ‘+’: { cout<< “n A soma dos números é : “ << num1 + num2; break; }
case ‘-’: { cout<< “n A subtração dos números é : “ << num1- num2; break; }
case *’: { cout<< “n O produto dos números é : “<<num1 * num2; break; }
else { cout<< “n Letra Errada -- Favor Digitar Certo da Próxima Vez”; break; }
}
cout<< “ n Deseja Repetir o Programa? Digite S – para sim ou N para não “ ;
cin>> resposta;
} while ( ( resposta == ’n’ ) || (resposta ==’N’ ) );
}
Programa Mini_Calculadora.cpp
Algoritmos
63. SOCIESC–Sociedade Educacional de Santa Catarina 63
Comentário:
Nesse programa, o comando getch() não é necessário. Assim que o progra-
ma receber a letra n ou N ele irá terminar e não precisa ficar esperando por
nada.
7.4 EXEMPLO COM AS TRÊS ESTRUTURAS DE REPETIÇÃO
Agora, um programa mais elaborado, com opções diferentes. O programa
consiste em imprimir a tabuada de um número inteiro, informado pelo usuário. O u-
suário poderá escolher que a tabuada seja calculada e impressa com o comando
Para ou com o comando Enquanto ou com o comando Repita.
Passos para a resolução do enunciado:
Definição do resultado: calcular a tabuada de um número inteiro, com o
comando de repetição escolhido:
Dados de saída: a tabuada de um número inteiro
Dados de entrada: pedir um número inteiro e a opção de escolha do co-
mando de repetição.
O algoritmo:
Algoritmo Tabuada;
Variáveis opcao: caracter;
numero, cont: inteiro;
Inicio
Escreva (“ Programa Tabuada de um Número Desejado“);
Escreva (“ Informe um Número para a Tabuada: “);
Leia (numero);
Escreva (“ Escolha uma das Estruturas: “);
Escreva (“ [ P ] – Digite P para Imprimir a Tabuada com o comando Para “);
Escreva (“ [ R ] – Digite R para Imprimir a Tabuada com o comando Repita “);
Escreva (“ [ E ] – Digite E para Imprimir a Tabuada com o comando Enquanto “);
Leia (opcao);
Escolha (opcao)
Início
Caso ‘P’,’p’: Início
Para cont =1 Até 10 Faça
Algoritmos
64. SOCIESC–Sociedade Educacional de Santa Catarina 64
Início
Escreva ( numero ,” x “, cont , “ = “ , numero * cont);
Fim;
Fim;
Caso ‘R’,’r’: Início
cont =1;
Repita
Início
Escreva ( numero ,” x “, cont , “ = “ , numero * cont);
cont = cont + 1;
Fim;
Até (cont =10);
Fim;
Caso ‘E’,’e’: Início
cont =1;
Enquanto (cont <=10 ) Faça
Início
Escreva ( numero ,” x “, cont , “ = “ , numero * cont);
cont = cont + 1;
Fim;
Fim;
Else
Fim;
Fim.
Escreva (“ Escolha Errada....”);
Algoritmo Tabuada
Convertendo para C++:
//Tabuada.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
char opcao;
int numero, cont;
cout<< “ n Programa Tabuada de um Número Desejado“;
cout<< “ n Informe um Número para a Tabuada: “;
cin>>numero;
cout<< “ n Escolha uma das Estruturas: “;
cout<< “ n [ P ] – Digite P para Imprimir a Tabuada com o comando Para “;
Algoritmos
65. SOCIESC–Sociedade Educacional de Santa Catarina 65
cout<< “ n [ R ] – Digite R para Imprimir a Tabuada com o comando Repita “;
cout<< “ n [ E ] – Digite E para Imprimir a Tabuada com o comando Enquanto “;
cin>>opcao;
switch (opcao)
{
case ‘P’,’p’: { for ( cont = 1; com<=10; cont = cont +1 )
{ cout<< “n” << numero << ” x “ << cont << “ = “ << numero * cont;
}
break;
}
case ‘R,’r’: { cont=1;
do { cout<< “n” << numero << ” x “ << cont << “ = “ << numero * cont;
cont= cont +1;
} while ( cont< = 10) ;
break;
}
case ‘E’,’e’: { cont =1;
while (cont<=10 ) do
{ cout<< “n” << numero << ” x “ << cont << “ = “ << numero * cont;
cont= cont +1;
}
break;
}
else { cout<< “n Letra Errada -- Favor Digitar Certo da Próxima Vez”; break; }
}
getch( );
}
Comentários:
Programa Tabuada.cpp
O programa somente parece complexo. Conforme o que for digitado na vari-
ável opcao (observe que não há acentos e nem o sinal da cedilha) será
escolhida uma opção com o comando switch () .
Muito cuidado com as chaves, uma a mais ou a menos o programa não irá
funcionar.
Algoritmos
66. SOCIESC–Sociedade Educacional de Santa Catarina 66
Exercícios Propostos
1. Altere o algoritmo Tabuada, para que, além do que ele já faz, possibilite ao usuá-
rio escolher se deseja ou não repetir o programa. Utilize a estrutura Repita ..Até.
2. Crie um programa em algoritmo utilizando a estrutura Para...Faça imprima todos
os números ímpares de 3 até 303.
3. Crie um programa em algoritmo que peça a altura de várias pessoas. Quando for
digitada a altura -1 o programa deverá encerrar e imprimir a média das alturas.
Algoritmos
67. SOCIESC–Sociedade Educacional de Santa Catarina 67
Aula 8
VETORES
Objetivos da aula
Ao final desta aula, você deverá ser capaz de:
Introdução a vetores
Declaração e exemplificação de Vetores
Exercícios Propostos
Conteúdos da aula
Acompanhe os assuntos desta aula, se preferir, após o seu término, assinale
o conteúdo já estudado.
Exemplificação de programas de utilizando vetores.
Exercícios propostos
Caro aluno!
Chegamos a etapa final do nosso estudo.
Preste muita atenção no assunto sobre vetores, pois também será muito usado nos
demais materiais.
Algoritmos
68. SOCIESC–Sociedade Educacional de Santa Catarina 68
8. VETORES
Chamamos de vetores os conjuntos de variáveis agrupadas do mesmo tipo.
Vamos a um exemplo prático da utilização de vetores. Imagine se você preci-
sasse armazenar as notas de 50 alunos. Na forma como vínhamos declarando as
variáveis, teríamos que declarar 50 variáveis, ficando assim: nota1, nota2, nota3,
nota4,......até nota50. Na forma de vetores, a declaração fica da seguinte maneira:
nota[50] : real. Isso é equivalente a criar 50 variáveis do tipo real.
Agora vamos criar uma variável do tipo vetor com 10 posições, mas cada e-
lemento do vetor deverá ser do tipo inteiro.
A declaração da variável ficaria assim:
Variáveis número [10]: inteiro; - criamos assim um vetor com dez elementos
inteiros.
Para acessar uma variável, podemos nos referir diretamente a ela: numero
[1], numero[2], assim, se quisermos atribuir um valor de 3000 ao elemento 8, do ve-
tor número, deveremos no referir à variável da seguinte forma: numero[8] = 3000.
No caso do numero [8], estamos nos referindo à variável de posição8. Observe a
figura 5. Os quadrados representam cada elemento da variável numero[10]. O núme-
ro que está dentro dos colchetes representa o índice do vetor ou a posição dele.
vetor:numero[10]
1 2 3 4 5 6 7 8 9 10
Figura 5 - Vetor 1
Índices do vetor
Trabalhar com vetor, significa trabalhar com estruturas de repetições. O moti-
vo é simples: trabalharemos com muitas variáveis e deixaremos o trabalho mais pe-
sado para a estrutura de repetição. A melhor estrutura de repetição para trabalhar
com vetores é o Para...Faça, pelo simples motivo de sempre termos o número exato
dos elementos do vetor.
Algoritmos
69. SOCIESC–Sociedade Educacional de Santa Catarina 69
Agora temos um detalhe muito importante: no algoritmo e em várias lingua-
gens, o índice do vetor começa sempre do 1. No C++, o índice começa do 0. Veja a
figura 6. Continuamos com dez elementos, porém o valor do índice começa do zero.
vetor:numero[10]
0 1 2 3 4 5 6 7 8 9
Figura 6 - Vetor 2
Índices do vetor
Um programa que demonstra o uso de vetores: Ler e guardar num vetor as
notas de 20 alunos. Após, verifique quantos alunos tiveram a nota menor que 7.
Calcule a média das notas dos alunos..
Passos para a resolução, analisando o enunciado:
Definição do resultado: verificar quantos alunos, entre 20, tiveram notas
menores que 7.Calcular a média das notas
Dados de saída: imprimir a quantidade de alunos que tiveram a nota me-
nor que 7 e a média geral das notas.
Dados de entrada: solicitar as notas de 20 alunos.
Algoritmo:
Algoritmo Vetor_de_Notas;
Variáveis cont, quant: inteiro;
notas[20]: real;
media, acum: real;
Inicio
quant = 0; media=0, cont=0;
Escreva (“ Programa que Imprime a Média das Notas de 20 alunos “);
Escreva (“ Imprime a Quantidade de Alunos que Tiveram Notas Menores de 7.0 “);
Para cont = 1 Até 20 Faça
Início
Escreva (“ Informe a nota do aluno nº: “, cont);
Algoritmos
70. SOCIESC–Sociedade Educacional de Santa Catarina 70
Leia ( notas [ cont ] );
acum = acum + notas [ cont ];
Se ( notas [cont] < 7) Então
quant =quant + 1;
Fim;
media= acum / 20;
Escreva ( “ A média das notas dos alunos é : “, media);
Escreva ( “ A quantidade de alunos que tiveram notas menos que 7,0 sâo: “, quant
Fim.
Comentários:
Algoritmo Vetor_de_Notas
Observe a declaração do vetor: notas [20] : real – isso cria uma variável com
vinte posições para guardar informações.
A leitura da variável: Leia (notas[ cont ]), dentro dos colchetes precisamos de
uma variável para controlar o índice do vetor. Quando o valor do cont for igual
a 1 estaremos nos referindo à nota 1, quando o valor do cont for igual a 2, es-
taremos nos referindo à nota 2 e assim sucessivamente.
Convertendo o programa para C++:
// Vetor_Notas.cpp
#include <iostream.h>
#include <conio.h>
#include <iomanip.h>
void main( )
{
int cont=0, quant=0;
float notas[20];
float acum=0, media=0;
cout<< “ n Programa Programa que Imprime a Média das Notas de 20 alunos” ;
cout<< “ n Imprime a Quantidade de Alunos que Tiveram Notas Menores de 7.0”;
cout << setprecision(2);
for (cont = 0; cont<20; cont ++)
{
cout<< “ n Informe a nota do aluno nº: “, cont+1
cin >> notas [ cont ];
acum = acum + notas [ cont ];
if ( notas [cont] < 7)
Algoritmos
71. SOCIESC–Sociedade Educacional de Santa Catarina 71
quant =quant + 1;
}
media= acum / 20;
cout<< “ n A média das notas dos alunos é : “ << media;
cout<< “ n A quantidade de alunos que tiveram notas menos que 7,0 são: “ << quant;
getch( );
}
Programa Vetor_Notas.cpp
Comentários:
Em C++, o tipo de variável real fica como float. Lembrando que o tipo da vari-
ável é inserido antes da variável. Observe que estamos declarando a variável
e ao mesmo tempo já estamos atribuindo valores, inicalizando as variáveis.
Utilizamos mais uma biblioteca: #include<iomanip.h> para podermos utilizar
a função setprecision(2), que tem como objetivo a impressão de 2 casas de-
cimais após a vírgula.
O comando for (Para..Faça) é essencial ao programa. É ele que faz o traba-
lho pesado do programa. É nele que são informadas as 20 notas, acumulando
os valores e testando cada nota para verificar se a nota é menor de 7.
Algoritmos
72. SOCIESC–Sociedade Educacional de Santa Catarina 72
Exercícios Propostos
1. Crie um programa que leia 15 números inteiros. Armazene-os num vetor. Some
todos os números e imprima a média dos números e a quantidade de números no
vetor que são menores do que a média dos números informados.
2. Crie um programa que leia um vetor de 30 caracteres. Verifique quantos desses
caracteres que foram informados no vetor, são vogais.
Algoritmos
73. SOCIESC–Sociedade Educacional de Santa Catarina 73
SOLUÇÕES DOS EXERCÍCIOS
AULA 1
1. Defina algoritmo.
Algoritmos são seqüências de passos que têm como objetivo atingir um determi-
nado objetivo.
2. Qual a diferença entre um programa fonte e um executável?
Programa Fonte: é a passagem, “tradução”, do algoritmo para uma determina lin-
guagem de programação. O programa fonte precisa ser compilado para funcionar.
Programa Executável: é o programa pronto, o programa fonte é compliado e após é
gerado um arquivo .exe, que funciona sem precisar abri-lo num software de pro-
gramação.
3. Defina linguagem de Programação.
São comandos específicos utilizados para programar o computador. Possuem uma
linguagem e sintaxe própria.
4. Pesquise e descubra o nome de no mínimo cinco linguagens de programação pa-
ra computadores.
Java, C, Pascal, Delphi, Visual Basic, C++, COBOL, Progress, PHP, .NET, C#
AULA 2
1. Analise as expressões aritméticas e dê o resultado:
a) X = ( 10 * ( (100 -90) -10) ) – o valor de X é: 700
b) W = ( 14 + ( 13 * (13 – 8) ) – o valor de W é: 79
Algoritmos
74. SOCIESC–Sociedade Educacional de Santa Catarina 74
2. O valor de X é igual a 15 e o valor de W é igual a 23, agora analise as expres-
sões abaixo e informe se a expressão é falsa ou verdadeira.
1. ( X < Y ) a expressão é: verdadeira
2. ( Y > X ) a expressão é: verdadeira
3. ( X = Y ) a expressão é: falsa
3. Indique o tipo que a variável “Valor”, conforme o valor que a variável receber. Vo-
cê deverá informar se a variável será do tipo: inteiro, real, caracter ou lógico.
e) Valor =” A “, o tipo será: caracter
f) Valor = 15,65 o tipo será: real
g) Valor = 47 o tipo será: inteiro
h) Valor = 3 o tipo será: inteiro
AULA 3
1. Encontre os erros do algoritmo abaixo e reescreva o que está errado:
Algoritmo Procurando Erros;
Variáveis numero 1 e numero 2: inteiro;
soma: caracter;
Inicio
Escreva (“ Digite o valor do Primeiro Número: “);
Leia (numero1);
Escreva ( Digite o valor do Segundo Número:);
Leia ( numero 2);
soma = numero1 + numero2;
Escreva (“ O Número 1: “ , numero1, “ e o Número 2: “ , numero2, “ é : , soma “ );
Fim.
Erros:
Algoritmo Procurando Erros
1. Algoritmo Procurando Erros;
Não pode haver espaço entre Procurando Erros
Forma correta: Algoritmo Procurando_Erros;
Algoritmos
75. SOCIESC–Sociedade Educacional de Santa Catarina 75
2. Variáveis numero 1 e numero 2: inteiro;
Não pode haver espaço entre o nome da variável e o número, muito menos utilizar
a letra e
Forma correta: Variáveis numero1, numero2: inteiro;
3. Escreva ( Digite o valor do Segundo Número:);
Não há aspas antes do texto.
Forma correta: Escreva (“ Digite o valor do Segundo Número:”);
4. Escreva (“ O Número 1: “ , numero1, “ e o Número 2: “ , numero2, “ é : , soma “ );
As aspas estão colocadas no lugar errado.
Forma correta; Escreva (“ O Número 1: “ , numero1, “ e o Número 2: “ , numero2, “
é : “, soma );
2. Crie um programa em algoritmo e em C++, que leia dois números inteiros. O pro-
grama deverá imprimir: a soma dos dois números, a multiplicação dos dois números.
O programa deverá imprimir também o resultado do valor da soma, subtraído do va-
lor da multiplicação que foram calculados antes.
Algoritmos
76. SOCIESC–Sociedade Educacional de Santa Catarina 76
PRIMEIRA SOLUÇÃO: criando várias variáveis.
Algoritmo Numeros_Inteiros;
Variáveis num1,num2 , soma, mult, result: inteiro;
Inicio
Escreva (“ Programa Exercício “);
Escreva (“ Informe dois números: “);
Leia (num1);
Leia (num2);
soma= num1+ num2;
mult = num1 * num2;
result = soma – mult;
Escreva (“ O Resultado é : “ , result);
Fim.
Algoritmo Numeros_Inteiros;
// Programa Numeros_Inteiros.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
int num1,num2 , soma, mult, result;
cout<< “ n Programa Exercício” ;
cout<< “ n Informe dois números:” ;
cin>> num1;
cin>> num2;
soma= num1+ num2;
mult = num1 * num2;
result = soma – mult;
cout<< ”n O O Resultado é : “ << result;
getch( );
}
Programa Numeros_Inteiros.cpp
Algoritmos
77. SOCIESC–Sociedade Educacional de Santa Catarina 77
SEGUNDA SOLUÇÃO: criando várias variáveis.
Algoritmo Numeros_Inteiros;
Variáveis num1,num2 : inteiro;
Inicio
Escreva (“ Programa Exercício “);
Escreva (“ Informe dois números: “);
Leia (num1);
Leia (num2);
Escreva (“ O Resultado é : “ , ( ( num1+ num2) - ( num1* num2) );
Fim.
Algoritmo Numeros_Inteiros
4º Passo: Criação do Programa em C++
// Programa Numeros_Inteiros.cpp
#include <iostream.h>
#include <conio.h>
void main( )
{
int num1,num2;
cout<< “ n Programa Exercício” ;
cout<< “ n Informe dois números:” ;
cin>> num1;
cin>> num2;
cout<< ”n O O Resultado é : “ << ( ( num1+ num2) - ( num1* num2) );
getch( );
}
Programa Numeros_Inteiros.cpp
Algoritmos
78. SOCIESC–Sociedade Educacional de Santa Catarina 78
AULA 4
1. Faça um programa em algortimo que deverá pedir a idade. Conforme a idade
deverá ser impressa uma mensagem somente na tela, informando:
Se a pessoa for menor de 16 anos não pode votar ainda
Se a pessoa tiver entre 16 anos e 18 anos vota se quiser
Se a pessoa tiver mais de 18 anos por lei, a votar.
Algoritmo Votar;
Variáveis idade: inteiro;
Inicio
Escreva (“ Programa que Verifica Se Você Pode ou Não Votar“);
Escreva (“ Digite a sua idade: “);
Leia (idade);
SE (idade< 16) ENTÃO
Inicio
Escreva (“ Você não pode votar!”);
Fim;
SENÃO
SE ( (idade >= 16) E ( idade <18) ) ENTÃO
Inicio
Escreva (“ Você vota se quiser!”);
Fim;
SE (idade > = 18) ENTÃO
Inicio
Escreva (“ Você deve votar!”);
Fim;
Fim.
Algoritmo Votar;
Algoritmos
79. SOCIESC–Sociedade Educacional de Santa Catarina 79
AULA 5
1. Faça um algoritmo que peça dois valores: uma letra referente ao sexo e número
inteiro referente à idade. Imprima uma mensagem avisando se a pessoa poderá ou
não se aposentar. Para aposentadoria, os seguintes critérios deverão ser analisa-
dos:
Aposentadoria para homens somente depois dos 65 anos.
Aposentadoria para mulheres somente depois dos 60 anos.
Algoritmo Aposentadoria;
Variáveis sexo: caracter;
idade: inteiro;
Inicio
Escreva (“ Programa que Imprime se Você Pode ou Não se Aposentar“);
Escreva (“ Digite a letra F para Feminino ou M para Masculino: “);
Leia (sexo);
Escreva (“ Digite a sua Idade: “);
Leia (idade);
SE ( ( (sexo = ‘F’) OU (sexo = ‘f’) ) E ( idade>=60) ) ENTÃO
Inicio
Escreva (“ Sexo é FEMININO e pode se aposentar”);
Fim;
SENÃO
SE ( ( (sexo = ‘M’) OU (sexo = ‘m’) ) E ( idade > = 65) ENTÃO
Inicio
Escreva (“ Sexo é MASCULINO e pode se aposentar”);
Fim;
Fim.
Algoritmo Aposentadoria;
Algoritmos
80. SOCIESC–Sociedade Educacional de Santa Catarina 80
AULA 6
1. Faça um algoritmo que peça um número inteiro. Cada número representa um dia
da semana. Imprima o dia da semana por extenso, utilzando o comando Caso.
Algoritmo Dia_Semana;
Variáveis dia: inteiro;
Início
Escreva (“ Programa que Imprime o Dia da Semana por Extenso“);
Leia (dia);
Escolha (dia)
Inicio
Caso 1: Escreva (“Domingo”);
Caso 2: Escreva (“Segunda”);
Caso 3: Escreva (“Terça”);
Caso 4: Escreva (“Quarta”);
Caso 5: Escreva (“Quinta”);
Caso 6: Escreva (“Sexta”);
Caso 7: Escreva (“Sábado”);
Senão Escreva (“ Número não é dia da Semana ”);
Fim;
Fim.
Algoritmo Dia_Semana;
Algoritmos
81. SOCIESC–Sociedade Educacional de Santa Catarina 81
AULA 7
1. Altere o algoritmo Tabuada, para que além do que ele já faz possibilide ao usuário
escolher se deseja ou não repetir o programa. Utilize a estrutura Repita ..Até.
Algoritmo Tabuada;
Variáveis opcao: caracter;
numero, cont: inteiro;
resp: caracter;
Início
REPITA
INÍCIO
Escreva (“ Programa Tabuada de um Número Desejado“);
Escreva (“ Informe um Número para a Tabuada: “);
Leia (numero);
Escreva (“ Escolha uma das Estruturas: “);
Escreva (“ [ P ] – Digite P para Imprimir a Tabuada com o comando Para “);
Escreva (“ [ R ] – Digite R para Imprimir a Tabuada com o comando Repita “);
Escreva (“ [ E ] – Digite E para Imprimir a Tabuada com o comando Enquanto “);
Leia (opcao);
Escolha (opcao)
Início
Caso ‘P’,’p’: Início
Para cont =1 Até 10 Faça
Início
Escreva ( numero ,” x “, cont , “ = “ , numero * cont);
Fim;
Fim;
Caso ‘R’,’r’: Início
cont =1;
Repita
Início
Escreva ( numero ,” x “, cont , “ = “ , numero * cont);
cont = cont + 1;
Fim;
Algoritmos
82. SOCIESC–Sociedade Educacional de Santa Catarina 82
Até (cont =10);
Fim;
Caso ‘E’,’e’: Início
cont =1;
Enquanto (cont <=10 ) Faça
Início
Escreva ( numero ,” x “, cont , “ = “ , numero * cont);
cont = cont + 1;
Fim;
Fim;
Else
Fim;
Escreva (“ Escolha Errada....”);
Escreva (“ Deseja Repetir o Programa? Digite S – para sim ou N para não “);
Leia (resp);
Fim;
Até ( ( resp = ’n’ ) OU (resp = ’N’ ) );
Fim.
Algoritmo Tabuada;
2. Crie um programa em algoritmo utilizando a estrutura Para...Faça imprima todos
os números ímpares de 3 até 303.
Algoritmo Números_impares;
Variáveis cont : inteiro;
Inicio
result=0;
Escreva (“ Programa que Imprime Todos os Números Ímpares de 3 até 303 “);
Para cont = 3 Até 303 Faça
Início
Se (cont MOD 2 <> 0) Então
Início
Escreva ( “ “, cont);
Fim;
Fim; Fim.
Algoritmo Números_impares
Algoritmos
83. SOCIESC–Sociedade Educacional de Santa Catarina 83
3. Crie um programa em algoritmo, peça a altura de várias pessoas. Quando for
digitada a altura -1 o programa deverá encerrar e imprimir a média das alturas.
Algorimo Media_Alturas;
Variáveis altura, acumulador, contador: inteiro;
media: real;
Início
media = 0;
acumulador = 0;
contador = 0;
Escreva ( “ Programa que Imprimi a Média das Alturas de Várias Pessoas”);
Escreva ( “ Informe Uma Altura – Digite [-1] Para Parar”);
Leia (altura);
Enquanto (altura<>-1 ) Faça
Início
contador = contador +1;
acumulador = acumulador + altura;
Escreva ( “ Informe Uma Altura – Digite [-1] Para Parar”);
Leia (altura);
Fim;
media = acumulador / contador;
Escreva ( “ A Quantidade de Alturas Informadas é: “ , contador);
Escreva ( “ A Média das Alturas Informadas é: “ , media);
Fim.
Algorimo Media_Alturas
Algoritmos
84. SOCIESC–Sociedade Educacional de Santa Catarina 84
AULA 8
1. Crie um programa que leia 15 números inteiros. Armazene-os num vetor. Some
todos os números e imprima a média dos números e a quantidade de números no
vetor que são menores do que a média dos números informados.
Algoritmo Vetor_de_Numeros;
Variáveis cont, quant: inteiro;
numeros[15]: real;
media, acum: real;
Inicio
quant = 0; media=0, cont=0;
Escreva (“ Programa que Imprime a Média dos 15 Números Informados “);
Escreva (“ Informe 15 números”);
Para cont = 1 Até 15 Faça
Início
Leia ( numeros [ cont ] );
acum = acum + numeros [ cont ];
Fim;
media= acum / 15;
Para cont = 1 Até 15 Faça
Início
Se ( numeros [cont] <media) Então
quant =quant + 1;
Fim;
Escreva ( “ A média dos números informados é: “, media);
Escreva ( “ A quantidade de números informado e que são menores do que a mé-
dia: “, quant);
Fim.
2. Crie um programa que leia um vetor de 30 caracteres. Verifique quantos desdes
caracteres são vogais.
Algoritmos