Português estruturado O que é uma Linguagens de Programação Linguagem? “Conjunto de regras que estabelecem normas de comunicação”. Para haver um entendimento, ambas as partes devem falar a mesma língua. Caso as partes envolvidas na comunicação falem línguas diferentes, surge a necessidade de um tradutor (intermediário). O que é uma Linguagens de Programação Linguagem de Programação? O que é uma Linguagens de Programação Uma linguagem de programação deve ser extremamente formal e exata. Um determinado comando tem que ter o mesmo significado para todos os programadores que utilizam ele e para todos os compiladores da linguagem. O que é uma Linguagens de Programação Para garantir a formalidade e a sua exatidão toda LP possui: Sintaxe - é a forma de suas expressões, de suas instruções e de suas unidades de programa. Semântica - A semântica trata da análise do significado das expressões, das instruções e das unidades de programa Linguagens Compiladas Programas escritos em linguagens de alto nível devem ser traduzidos para linguagens de máquina. Um compilador implementa uma linguagem fonte traduzindo programas escritos nessa linguagem para a linguagem objeto da máquina alvo onde os programas vão ser executados. Linguagens Compiladas Dados Execução Resultados Linguagens Interpretadas Gera código intermediário que é executado, por um programa ou máquina virtual, sem gerar código de máquina. Um interpretador simula a execução de cada instrução ou comando de um programa, de forma que o seu efeito seja reproduzido corretamente, à medida que essa execução se torna necessária. Linguagens Interpretadas Variaveis, Constantes e Operações Básicas Tipos de informação Tudo aquilo que é manipulado por um programa de computadores. Dividido em duas categorias Dados Instruções Tipos de dados Inteiro: Números pertencentes ao conjunto dos números inteiros, números positivos ou negativos, não fracionados. Ex: 1, 0, -1, 230 Real: Números pertencentes ao conjunto dos números Reais, números positivos ou negativos, inclusive os fracionados. Ex: 1, 0, 1.2, -0,32... String: Também chamados caracteres ou alfanuméricos; contém sequências de caracteres como frases, endereços e outros, representados sempre entre aspas(“”). Ex: “Bom Dia!”, “Rua 45, quadra 07”, “35”. Lógicos ou booleanos: são valores verdadeiros ou falsos, sendo que esse tipo só aceita como entrada valores como Verdadeiro, Falso, V, F, S, N. Variáveis São os dados que serão alterados pelo programa. Devem ser previamente declaradas e identificadas. Devem ser especificadas por tipos para que o computador possa fazer o uso correto dos valores delas nos momentos oportunos. Variáveis: Regras de nomenclatura Os nomes podem ser atribuídos com um ou mais caracteres. O primeiro caractere não poderá ser um número. Não poderá possuir espaços em branco Não poderá ter por nome uma instrução do programa Não poderão ser utilizados outros caracteres que não sejam letras e números. Constantes São dados que não serão mudados pelos programas. Elas não são declaradas. Seu valor aparece como parte da expressão. Ex: Soma = dado + 12 Operadores ↑ = exponencial / = divisão de números reais Div = divisão de números inteiros Mod = Resto de divisão de números inteiros. * = multiplicação + = adição - = subtração ←= recebe Instruções primitivas Algoritmo “nome”: Marca o começo do código Declare (var): marca a declaração das variáveis Início: inicia o algoritmo Leia: espera a entrada de dados por um usuário ou outra forma Escreva: mostra na tela o resultado do algoritmo. Fim: finaliza o algoritmo. Exemplo de algoritmo algoritmo areacirculo declare area: real r: real início leia r area ← r*3,14159 escreva area fim. Exercícios Escreva um algoritmo que calcule a área de um triângulo. 2) Escreva um algoritmo que leia um nome e retorne uma mensagem usando aquele nome. 3) Escreva um algoritmo que calcule o quadrado de um numero. 4) Crie um algoritmo que some dois números a escolha do usuário, some-os, multiplique-os por 200 e depois divida-os por um terceiro numero também a escolha do usuário. 1) Desvio condicional Condição = Exigência, algo a ser cumprido. O desvio condicional é caminho alternativo, que o algoritmo deve seguir caso ele atenda a uma exigência imposta pelo programador. Operadores Relacionais São aqueles que expressam as relações entre as variáveis ou entre variáveis e uma constante. São eles: Operadores Lógicos .e. é o operador usado quando é necessário que uma condicional atenda obrigatoriamente mais de uma exigência .ou. operador usado caso seja necessário que uma condicional atenda opcionalmente uma ou mais exigências. .não. operador usado para negar uma exigência, ou seja para executar uma informação quando as exigências sejam descumpridas. Exemplos de usos de operadores lógicos Operador .e. Se (A>10) .e. (B>5) então X:= A+B (a soma só será executada caso A seja maior que 10 e B seja maior que 5) Operador .ou. Se (A>10) .ou. (B>5) então X:= A+B (a soma será executada caso A seja maior que 10 ou caso B seja maior que 5) Exemplos de usos de operadores lógicos Operador .não. Se .não. (A>10) então X:=A+B (neste caso a soma será executada se A não for maior que 10.) Desvio Condicional Simples É uma condicional de uma única instrução, que deverá ser realizada caso as variáveis atendam a condição especificada. Os comandos serão Se...Então...Fim_se EX: Algoritmo cond.simples Declare A:inteiro B:inteiro Inicio Leia A Leia B Se (A > B) então Escreva A Fim_se Fim Desvio Condicional Composto É um condicional com duas possibilidades, de forma que caso a condição não seja atendida, há uma alternativa à essa condição. O comando é: Se...Então...Senão... Fim_Se Algoritmo cond.simples Declare A:inteiro B:inteiro Inicio Leia A Leia B Se (A > B) então Escreva A Senão Escreva B Fim_se Fim Desvio condicional encadeado Como o próprio nome diz é um encadeamento de condições para que caso uma condição não seja aceita, novas condições são impostas a aquele algoritmo. Ex.: Algoritmo cond.simples Declare A:inteiro B:inteiro Inicio Leia A Leia B Se (A + B > 10) então Escreva “A soma dos valores é maior que 10” Senão Se (A+B > 3) então Escreva “ A soma dos valores é um numero entre 3 e 10” Senão Escreva “Tente denovo” Fim_se Fim Exercícios 1) Escreva um algoritmo que leia dois valores numéricos, some-os e apresente o resultado caso ele seja maior que 10. 2) Escreva um algoritmo que leia dois valores numéricos, some-os, e que para o caso do valor da soma ser maior que 10 apenas apresente o valor, no caso de o valor ser menor que 10 ele apresente o valor somado a 10. 3) Elaborar um programa que calcule o aumento de salário para os funcionários de uma empresa de acordo com o salário atual do funcionário. Se o salário for de até 500,00 reais o aumento será de 15%, se o salário estiver entre 500,00 e 1000,00 reais o aumento será de 10%, se for maior que 1000,00 reais o aumento será de 5%. Estruturas ou laços de repetição Muitas vezes, é necessário para um programa a repetição de uma parte do mesmo. Para isso existem algumas estruturas que possibilitam essa repetição, sem a necessidade de repetir toda a codificação. Essas estruturas são chamadas Estruturas de repetição ou Laços de repetição. Repetição com teste lógico no inicio do looping Nessa estrutura verifica-se antes da execução dos comandos se a condição para sua execução existe. A estrutura de looping nesse caso é chamada de Enquanto e é conseguida através da sequência de comandos: Enquanto ... <condição>... Faça ... <comandos> .... Fim_enquanto Exemplo de Repetição com Enquanto Algoritmo Enquanto Declare X: inteiro r: inteiro Cont: inteiro Inicio cont := 1 Enquanto cont <= 5 faca Leia X R:= x * 3 Escreva R Cont:= cont +1 fim_enquanto Fim Repetição com teste lógico no fim do looping Funciona basicamente como a estrutura do enquanto, no entanto o teste para o looping só é executado no final da estrutura dessa forma os comandos serão executados ao menos uma vez Essa estrutura é conhecida como repita e funciona com a sequência de comandos: Repita... <comandos>... Até que... <condição>. Exemplo de algoritmo com repita. Algoritmo Enquanto Declare X: inteiro r: inteiro Cont: inteiro Inicio cont := 1 Repita Leia X R:= x * 3 Escreva R Cont:= cont +1 Até que cont > 5 Fim Estrutura de repetição com variável de controle Essa estrutura existe para os casos em que é ideal o uso de contadores finitos, ou seja, para os caso em que se sabe ou se determina de antemão quantas vezes serão executados os comandos. Essa estrutura chamada de Para, é conseguida usando o seguinte conjunto de instruções: Para <variavel> de <valor inicial> até <valor final> faca .... <instruções>... fim_para. Exemplo de algoritmo com uso da estrutura de repetição “para” Algoritmo Enquanto Declare X: inteiro r: inteiro Cont: inteiro Inicio Para cont de 1 ate 5 faca Leia X R:= X * 3 Escreva R Fim_para Fim Exercicios com estruturas de Repetição Faça um algoritmo que apresente os 10 primeiros valores da série de Fibonacci. b) Escreva um algoritmo que calcule a soma e a média de 10 numeros a escolha do usuário. c) Escreva um algoritmo que calcule o fatorial de um numero qualquer. d) Escreva um algoritmo que leia n números e escreva o maior deles. a)