Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Apostila de programação, Slides de Algoritmos e Programação

Apostila de programação. Linguagem de programação

Tipologia: Slides

2023

Compartilhado em 23/09/2023

raphaela-campos-3
raphaela-campos-3 🇧🇷

1 documento

1 / 14

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
ProgramaçãoParte 1
Prof.ª: Daniele Alcântara
Sumário
CONCEITOS SOBRE ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES ...................................................................... 1
UNIDADES DE MEDIDAS COMPUTACIONAIS ..................................................................................................................... 1
HARDWARE E SOFTWARE ................................................................................................................................................... 1
NOÇÕES BÁSICAS DE SISTEMAS OPERACIONAIS E SOFTWARES.......................................................................................... 2
SISTEMAS OPERACIONAIS..................................................................................................................................................... 2
TIPOS DE SISTEMAS OPERACIONAIS ................................................................................................................................... 3
OUTROS CONCEITOS .......................................................................................................................................................... 3
ALGORITMO .............................................................................................................................................................................. 3
MÉTODOS PARA CONSTRUÇÃO DE ALGORITMOS ........................................................................................................... 3
FORMAS REPRESENTAR O ALGORITMO ......................................................................................................................... 4
PRINCIPAIS SÍMBOLOS DO FLUXOGRAMA .......................................................................................................................... 5
CONCEITO DE VARIÁVEL ......................................................................................................................................................... 5
O USO DAS VARIÁVEIS ......................................................................................................................................................... 5
ESTRUTURA SEQUENCIAL EM ALGORITMO ............................................................................................................................ 6
DECLARAÇÃO DE VARIÁVEIS .............................................................................................................................................. 6
COMANDO DE ATRIBUIÇÃO .............................................................................................................................................. 6
ENTRADA EM ALGORITMOS ................................................................................................................................................ 6
SAÍDA EM ALGORITMOS ...................................................................................................................................................... 6
OPERAÇÕES ARITMÉTICAS +,-,*,/ ...................................................................................................................................... 6
OPERADORES RELACIONAIS ............................................................................................................................................... 7
OPERADORES LÓGICOS ...................................................................................................................................................... 7
EXEMPLOS: ESTRUTURA SIMPLES .............................................................................................................................................. 7
TESTE DE ALGORITMO ............................................................................................................................................................. 8
RESUMO E EXEMPLOS PASSO A PASSO .................................................................................................................................... 9
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe

Pré-visualização parcial do texto

Baixe Apostila de programação e outras Slides em PDF para Algoritmos e Programação, somente na Docsity!

Prof.ª: Daniele Alcântara

 - ProgramaçãoParte 
  • CONCEITOS SOBRE ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES...................................................................... Sumário
    • UNIDADES DE MEDIDAS COMPUTACIONAIS
    • HARDWARE E SOFTWARE
  • NOÇÕES BÁSICAS DE SISTEMAS OPERACIONAIS E SOFTWARES..........................................................................................
    • SISTEMAS OPERACIONAIS.....................................................................................................................................................
    • TIPOS DE SISTEMAS OPERACIONAIS
    • OUTROS CONCEITOS
  • ALGORITMO
    • MÉTODOS PARA CONSTRUÇÃO DE ALGORITMOS
      • FORMAS REPRESENTAR O ALGORITMO
    • PRINCIPAIS SÍMBOLOS DO FLUXOGRAMA
  • CONCEITO DE VARIÁVEL
    • O USO DAS VARIÁVEIS
  • ESTRUTURA SEQUENCIAL EM ALGORITMO
    • DECLARAÇÃO DE VARIÁVEIS
    • COMANDO DE ATRIBUIÇÃO
    • ENTRADA EM ALGORITMOS................................................................................................................................................
    • SAÍDA EM ALGORITMOS
    • OPERAÇÕES ARITMÉTICAS +,-,*,/
    • OPERADORES RELACIONAIS
    • OPERADORES LÓGICOS
  • EXEMPLOS: ESTRUTURA SIMPLES
  • TESTE DE ALGORITMO
  • RESUMO E EXEMPLOS PASSO A PASSO

Conceitos sobre arquitetura e organização de computadores

Computador é uma coleção de componentes interligados com o objetivo de efetuar operações aritméticas e lógicas de uma grande quantidade de dados. O computador recebe os dados de entrada e, de forma automática os processa de modo a obter dados de saída com base em um conjunto detalhado e instruções. A arquitetura de um computador representa a maneira na qual seus componentes estão organizados Independente do desempenho, a estrutura básica pode ser vista como:

Unidade de Entrada : responsável pela entrada de dados no computador. São representados por: teclado, mouse, câmeras, arquivos, sensores de movimento, comando de voz, entre outros componentes.

Unidade de Saída : responsável pela apresentação de dados ou informações que tenham sido processadas pela CPU. Exemplo: monitores, impressora, arquivos.

CPU : unidade central de processamento é responsável pelo controle das operações de entrada e saída.

Memória Principal : Encarrega e ler e armazenar os dados que estão sendo processados em determinado momento. É formada pelos componentes de memórias RAM e ROM.

-A memória RAM é utilizada pela CPU para manter temporariamente dados e instruções que são usados no processamento. É um tipo de operação rápido, porém volátil, ou seja, os dados são perdidos quando o computador é desligado.

-A Memória ROM é utilizada pela CPU para inicializar o computador. É definida pelo fabricante e não pode ser alterada.

Memória Secundária : são responsáveis por armazenar dados a longo prazo. Ex: HDs, pen drives, cartões de memória, etc.

Unidades de medidas computacionais A menor unidade de dado manipulada por um computador eletrônico chama-se bit. Um bit pode armazenar apenas um dígito “0 ” ou um dígito “1”. Os bits são agrupados em grupos de 8, formando 1 byte. Os bits são entendidos pelo computador em código binário, que é formado unicamente por zeros e uns. Por exemplo, a letra “A” ocupa um byte para o computador e é codificada com um grupo de 8 bits, que são: “11000001”. O volume de dados a ser processado numa memória principal ou armazenado numa memória secundária é medida em relação a quantidade de bytes manipulados.

Bit: conjunto de dois bits Byte: conjunto de 8 bits Kbyte (Kb): equivale a 1.024 bytes Mbyte(Mb): 1024 Kb Gbyte(GB): 1.024MB Tbyte(TB) 1.024 GB Pbyte (PB)1.024 TB Ebyte (EB)1.024 PB

Hardware e Software A parte física do computador é chamada de hardware. Já softwares são programas que executam tarefas utilizando o hardware de um computador.

Logo, software é uma sequência de instruções escritas para serem interpretadas por um computador com o objetivo de executar tarefas específicas. Também pode ser definido como programa(s) que comandam o funcionamento de um computador.

Os softwares podem ser classificados em três tipos:

Software de Aplicação : são programas de computadores que permitem ao usuário executar uma série de tarefas específicas em diversas áreas de atividade como arquitetura, contabilidade, educação, medicina, também os jogos, as bases de dados, os sistemas de automação industrial, etc.

outro sistema operacional. Assim, um programa executável (pronto para instalação) em Linux provavelmente não poderá ser executado em um sistema operacional Windows. Para que funcione, o código fonte (programa desenvolvido em determinada linguagem de alto nível) deverá ser compilado neste sistema operacional. Obs: o Java roda em qualquer sistema operacional que suporte a linguagem.

Tipos de Sistemas operacionais

Multitarefa: admite e gerencia várias tarefas em processamento concorrente. Exemplos: Windows, Linux , Mac, Android, dentre outros. Sistemas de tempo real: sua característica essencial é ter um comportamento temporal previsível (tempo de resposta deve ser conhecido no melhor e pior caso).Exemplos: Sistema controle avião, processos químicos, sistema reserva passagens, aquisição dados Sistemas embarcados: sistema é dedicado a tarefas específicas. Exemplos: piloto automático de um avião, injeção eletrônica de um carro.

Outros conceitos

Ferramentas : são aplicativos desenvolvidos para a realização de tarefas padronizadas, como processadores e texto, planilhas eletrônicas e editores gráficos. Aplicativos : são programas desenvolvidos em determinada linguagem de programação para resolverem tarefas com funções específicas Utilitários : são programas que auxiliam e facilitam o funcionamento de todo ambiente computacional. Exemplo: antivírus

Algoritmo

Chamamos de programa de computador um conjunto de instruções que será executado pelo processador em uma determinada sequência. Este programa leva o computador a executar uma tarefa. Um programa nada mais é que um tipo de algoritmo.

Segundo Cormen(2001), um algoritmo é um conjunto de procedimentos computacionais bem definidos que toma algum valor, ou conjunto de valores , como entrada e produz algum valor, ou conjunto de valores como saída.

Um algoritmo é um conjunto de ações bem definidas, limitadas, e bem ordenadas que possibilita expressar a solução adequada para um determinado problema.

Um algoritmo permite ao usuário simbolizar um determinado problema através da lógica de programação. Lógica é a arte de pensar correto, implicando na facilidade de estabelecer uma ordem de pensamento.

Assim, para se programar não é suficiente conhecer apenas uma linguagem de programação, é necessário conhecer as técnicas através do uso de algoritmos. E então adaptar o algoritmo para a respectiva linguagem.

Métodos para construção de algoritmos

Segundo Ascencio para a construção de qualquer tipo de algoritmo são necessários os passos a seguir:

1- Ler atentamente o enunciado, destacando os pontos mais importantes. Ou seja, identificar o que deve ser feito. 2- - Identificar quais são as entradas (O que é fornecido) 3- Definir o processamento, ou seja, quais cálculos serão efetuados e quais as restrições para estes cálculos. O processamento é responsável pela transformação dos dados de entrada em saída 4- Definir os dados de saída, ou seja, determinar quais dados serão gerados depois do processamento 5- Construir o algoritmo 6- Testar o algoritmo

Formas representar o algoritmo

Fluxograma : apresenta o algoritmo de forma gráfica utilizando símbolos predefinidos.

-Vantagens: facilidade de compreensão no funcionamento do algoritmo, mesmo para leigos. -Desvantagem: difícil representar algoritmos complexos e longos

Pseudocódigo (ou Pseudolinguagem): apresenta o algoritmo por meio de regras predefinidas. Não é uma linguagem de programação, porém é a forma de representação que mais se aproxima de uma.

-vantagens: pode ser traduzido de uma forma quase direta para uma gama de linguagens de programação

-desvantagem: é necessário seguir rigorosamente as regras.

Exemplos de algoritmos:

  1. Faça um algoritmo para mostrar a multiplicação de dois números

Algoritmo em descrição narrativa

Passo1 : Receber os dois números que serão multiplicados Passo2 : Multiplicar os números Passo3 : Mostrar o resultado obtido

Algoritmo em Fluxograma

Algoritmo em Pseudolinguagem

  1. Escrever um algoritmo para calcular a média aritmética de duas notas de um aluno e mostrar a situação do aluno: aprovado ou reprovado

Algoritmo em descrição narrativa

Passo 1: Receber as duas notas

Passo 2: Calcular a media: somar os valores e dividir por 2

Passo 3: Verificar se o aluno foi aprovado ou reprovado: se média maior ou igual a 7, aluno aprovado, caso contrario reprovado

Passo4: Mostrar o resultado

Algoritmo em fluxograma

Algoritmo em Pseudolinguagem

Exemplos de declarações:

DECLARE nota1, nota2 NUMERICO DECLARE nome LITERAL DECLARE endereço, bairro LITERAL DECLARE salario, soma, x, y NUMERICO

DECLARE teste LOGICO

Estrutura Sequencial em Algoritmo

As instruções de uma linguagem de programação são executadas em sequência. Um bloco apresenta o início e término do conjunto de instruções que serão executadas em sequência.

O bloco é construído como se segue:

ALGORITMO DECLARE Bloco de comandos FIM_ALGORITMO

Declaração de Variáveis  DECLARE nomevariavel TIPOVARIAVEL

As variáveis são declaradas após a palavra DECLARE. Coloca o nome da variável e tipo

DECLARE X NUMERICO DECLARE Y LITERAL DECLARE TESTE LOGICO

Comando de Atribuição  Usado para atribuir valores ou operações a variáveis

Já falamos onde os valores ficam armazenados, porém para que possamos manipulá-los é necessário primeiramente colocar um valor dentro da variável. O ato de colocar ou atribuir um valor a uma variável é chamado de atribuição.

Cada linguagem de programação possui uma instrução para atribuir valores a variáveis. Na Pseudolinguagem adotamos o símbolo .

Exemplo:

Altura  1. Soma  Soma+ Media  Nota1+Nota2 / PI  3.

Entrada em Algoritmos  LEIA O comando de entrada é utilizado para receber dados digitamos pelo usuário. Os dados recebidos são armazenados em variáveis. Este comando é representado pelo comando LEIA

Leia Nota O valor digitado pelo usuário será armazenado na variável Nota

Leia Y Um ou vários caracteres digitados pelo usuário serão armazenados na variável Y

Saída em Algoritmos  ESCREVA

A saída é feita pelo comando ESCREVA. É utilizado para mostrar os dados na tela, impressora, etc.

ESCREVA X Mostra o valor da variável X

ESCREVA “O conteúdo de Y=” Y Mostra a mensagem: “Conteúdo de Y = ” e em seguida o valor armazenado na variável Y

Operações Aritméticas +,-,,/ Adição C A+B Subtração C A-B Multiplicação C AB Divisão C A/B Divisao Inteira C A div B Resto C A mod B Troca Sinal C -B

Div: é o resultado inteiro de uma divisão Exemplos: 10 div 4 = 2 22 div 6 = 3 Mod: é o resto da divisão inteira de dois números inteiros 10 mod 4 = 2 22 mod 6 = 4

Operadores Relacionais

= igualdade < menor > maior <= menor igual >= maior igual <> diferente

Operadores Lógicos

Existem vários operadores lógicos chamados de conectivos. Eles são muito úteis para a construção de algoritmos. Estudaremos os operadores e , ou e não.

Representamos seu funcionamento através de tabelas verdade. Onde:

Operador e

e V F V V F F F F Logo: VeV=V , VeF=F, FeV=F, FeF=F

ou V F V V V F V F

NAO V F

F V

Precedência dos operadores lógicos

Precedência Descrição 1 Parenteses 2 não 3 e, ou

Qual o resultado das seguintes expressões lógicas

a) V e (V ou F) b) V e não (V ou F) c) (F ou V) e não (F) Resposta= a)V, b)F, c)V

Exemplos: estrutura simples

  1. Elaborar um programa que calcule a área de uma circunferência e apresente a medida da área calculada

Entendimento: Sabemos que 𝐴 = 𝜋𝑟^2

A = variável que conterá o resultado do cálculo, chamaremos esta variável de area. 𝝅 = tem valor constante que será atribuído a uma variável que chamaremos de PI. R = valor variável que representa o raio. Ela deverá ser lida (fornecida por um usuário). Chamaremos a variável de raio Passos para o algoritmo 1- Declarar as variáveis 2- Atribuir o valor 3.14 a variável PI 3- Ler o valor do raio 4- Efetuar o cálculo da área 5- Escrever o valor da variável “area”

ALGORITMO DECLARE area,PI, raio NUMERICO PI3, LEIA raio area  PI * raio^2 ESCREVA area FIM_ALGORITMO

OU

ALGORITMO

DECLARE area, raio NUMERICO LEIA (raio) area  3,1415 * raio^2 ESCREVA “A área é:” area FIM_ALGORITMO

  1. Calcular o número de vértices de um cubo. Sabe-se que a relação entre vértices, arestas e faces de um objeto geométrico é dada pela fórmula: vértices
  • faces = arestas + 2. Calcule o numero de vértices de um cubo (6 faces e 12 arestas)

ALGORITMO

DECLARE vertices, faces, arestas NUMERICO faces  6 arestas  12 vertices  arestas + 2 - faces ESCREVA “o número de vértices é:” vertices FIM_ALGORITMO

Resumo e Exemplos passo a passo

Estrutura

Algoritmo Onde: Declare NomedaVariavel TipodaVariável Declara as variáveis Bloco de comandos - Processamento Todos os códigos do Programa Fim_ algoritmo

Variáveis no Algoritmo

DECLARE NomedaVariavel NUMERICO Declaração para Números DECLARE NomedaVariavel CARECTERE ( também pode ser chamada de LITERAL)

Para Cadeia de caracteres

DECLARE NomedaVariavel LOGICO Valores verdadeiros ou falsos

Comando de Atribuição em Algoritmos

 Usado para atribuir valores ou operações a variáveis

X3 A variável X recebe o valor 3, logo X^ =^3 Y“Joao” A variável^ Y^ recebe o^ conteúdo Joao, logo Y=Joao Obs: variáveis do tipo caractere devem ter aspas

Faces6 A variável^ Faces^ recebe o valor^6 , logo Faces= MediaNota1+Nota2 /2 A variável^ Media^ recebe o resultado^ de^ Nota1+Nota2 /

Comandos de Entrada no Algoritmo

 Toda variável de entradas precisa ter um valor. Elas devem ser lidas para serem “carregadas” com os seus respectivos valores. Exemplo: Quero calcular a média de duas notas. As duas notas são variáveis de entrada, e devem ser informadas pelo usuário, cada uma destas notas precisa ter um valor para ser possível calcular a Media(a média é uma variável de saída)

 Media = (nota1+nota2)/2, (onde nota1 foi lido com o valor 8 e nota 2 foi lido com o valor 6) Valores das variáveis Valor de nota1 lido = 8 Valor de nota2 lido = 6 Valor de saída após a execução do algoritmo para Media = 7

 Comandos para receber os dados digitados pelo usuário do sistema, dados esses que são Armazenados nas variáveis. Sendo este o comando “Leia”

LEIA X A^ variável X agora possui o^ conteúdo^ do que foi lido para X. Por exemplo, se X for lido com o valor 5. X= 5 LEIA (X,Y) A^ variável X e Y agora possuem valores conforme digitados pelo usuário (lido) LEIA nota A variável nota possui valor conforme informado LEIA N1,N2,N3 As^ variáveis N1,N2,N3 possuem valores conforme informado

Comando de Saída em Algoritmos

É a saída do algoritmo, a resposta. É usado para mostrar dados na tela e podem apresentar mensagens (entre aspas) e variáveis.

No algoritmo Saída do Algoritmo ESCREVA Media A saída neste caso^ é o^ conteúdo^ da^ variável^ Media,^ por exemplo, 7. Logo a saída do algoritmo é : 7

ESCREVA “O valor da Média é: ” Media Neste caso a saída^ é uma mensagem e^ o^ conteúdo^ da variável Media. Observe que a mensagem está entre aspas, dentro destas aspas pode ser escrito o que desejar(acento, caracteres especiais,ets ). As aspas não aparecem na saída do algoritmo Saída: O valor da Média é 7 ESCREVA M A saída^ é o conteúdo da variável M.^ Valor supor que a variável M tenha o valor 4 Saída é : 4 Escreva “O valor da Média ponderada é: ” M Neste caso a saída^ é uma mensagem e^ o^ conteúdo^ da variável M (variável de saída responsável por armazenar o calculo da média ponderada). Observe que a mensagem está entre aspas, dentro destas aspas pode ser escrito o que desejar(acento, caracteres especiais,ets ). As aspas não aparecem na saída do algoritmo Saída: O valor da Média ponderada é 4

Algoritmo: Entrada ----- Processamento ------ Saída

  1. Faça um algoritmo que receba 4 números (que serão digitados pelo usuário), calcule e mostre a soma dos números.

Algoritmo DECLARE N1, N2, N3, N4, soma NUMERICO ESCREVA “Digite o 1º Número” LEIA N ESCREVA “Digite o 2º Número” LEIA N ESCREVA “Digite o 3º Número” LEIA N ESCREVA “Digite o 4º Número” LEIA N SOMA  N1 + N2 + N3 + N ESCREVA “O resultado da soma do quatro números é”, soma Fim_algoritmo

OU de forma reduzida (a pseudolinguagem pode ser feita de forma reduzida)

Algoritmo DECLARE N1, N2, N3, N4, soma NUMERICO ESCREVA “Digite os números” LEIA N1 ,N2,N3,N SOMA  N1 + N2 + N3 + N ESCREVA SOMA Fim_algoritmo

2) Faça um algoritmo que receba 3 (três) notas, calcule e mostre a média aritmética entre elas

Forma Reduzida

Algoritmo DECLARE nota1, nota2, nota3, peso1, peso2, peso3, media NUMERICO ESCREVA “Digite as notas e pesos” LEIA nota1, nota2, nota3, peso1, peso2, peso media  nota1peso1 + nota2peso2 + nota3*peso3/ (peso1+peso2+peso3) ESCREVA media Fim _Algoritmo

  1. Faça um algoritmo que receba o nome e o salário de um funcionário, calcule e mostre o nome do funcionário e seu novo salário, sabendo-se que este sofreu um aumento de 20%.

Algoritmo DECLARE salario, novoSalario NUMERICO DECLARE nome LITERAL ESCREVA “Digite o nome do funcionário e o salário” LEIA nome, salario novoSalario  salario + (salario*20/100) ESCREVA nome ESCREVA “O novo salario é : ”novoSalario Fim_Algoritmo

5) Faça um algoritmo que receba o nome, o salário de um funcionário e o percentual de aumento, calcule e mostre o nome e o novo salário. Algoritmo DECLARE salario, novoSalario, percentual NUMERICO DECLARE Nome LITERAL ESCREVA “Digite o nome do funcionário” LEIA Nome ESCREVA “Digite o Salário do funcionário” LEIA salario ESCREVA “Digite o percentual de aumento do funcionário” LEIA percentual novoSalario  salario + (salario * percentual /100) ESCREVA “O novo salario do funcionário ”, Nome, “com aumento de ”, percentual , “% é ”, novoSalario Fim Algoritmo

Forma Reduzida Algoritmo DECLARE salario, novoSalario, percentual NUMERICO DECLARE Nome literal ESCREVA “Digite o nome do funcionário, Salário e percentual de aumento” LEIA Nome, salario, percentual novoSalario  salario + (salario * percentual /100) ESCREVA Nome, novoSalario FimAlgoritmo

6) Faça um algoritmo que receba o Ano de Nascimento de uma pessoa e o ano atual, calcule e mostre: A idade Atual dessa pessoa e quantos anos essa pessoa terá em 2020.

Algoritmo DECLARE AnoNasc, AnoAtual, IdadeAtual, Idade2020 NUMERICO

ESCREVA “Digite o Ano de seu nascimento” LEIA AnoNasc ESCREVA “Digite o Ano atual” LEIA AnoAtual IdadeAtual  AnoAtual – AnoNasc ESCREVA “A sua idade é: ”, IdadeAtual Idade2020  2020- AnoNasc ESCREVA “A sua idade em 2020 ”, Idade FimAlgoritmo

7) Pedro Comprou um saco de Ração com peso em quilos. Pedro possui 2 (dois) gatos para os quais fornece a quantidade de ração em gramas. Faça um algoritmo que receba o peso do Saco de ração e a quantidade de ração fornecida para cada gato. Calcule e mostre quanto restará de ração no saco após 5 (cinco) dias