








Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Os melhores documentos à venda: Trabalhos de alunos formados
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Comunidade
Peça ajuda à comunidade e tire suas dúvidas relacionadas ao estudo
Descubra as melhores universidades em seu país de acordo com os usuários da Docsity
Guias grátis
Baixe gratuitamente nossos guias de estudo, métodos para diminuir a ansiedade, dicas de TCC preparadas pelos professores da Docsity
Apostila de programação. Linguagem de programação
Tipologia: Slides
1 / 14
Esta página não é visível na pré-visualização
Não perca as partes importantes!
- ProgramaçãoParte
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:
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
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
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
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 PI3, LEIA raio area PI * raio^2 ESCREVA area FIM_ALGORITMO
DECLARE area, raio NUMERICO LEIA (raio) area 3,1415 * raio^2 ESCREVA “A área é:” area FIM_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
X 3 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
Faces 6 A variável^ Faces^ recebe o valor^6 , logo Faces= Media Nota1+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
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
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