linguagem algor tmica portugol
play

Linguagem algor tmica: Portugol Jos e Romildo Malaquias - PowerPoint PPT Presentation

Programa c ao de Computadores I Aula 03 Linguagem algor tmica: Portugol Jos e Romildo Malaquias Departamento de Computa c ao Universidade Federal de Ouro Preto 2011-1 1/34 Introdu c ao I L ogica A l ogica e


  1. Programa¸ c˜ ao de Computadores I Aula 03 Linguagem algor´ ıtmica: Portugol Jos´ e Romildo Malaquias Departamento de Computa¸ c˜ ao Universidade Federal de Ouro Preto 2011-1 1/34

  2. Introdu¸ c˜ ao I L´ ogica A l´ ogica ´ e usada no dia a dia das pessoas que trabalham com ao para solucionar problemas de forma eficiente . computa¸ c˜ Algoritmo Um algoritmo representa de forma estruturada, uma seq¨ uˆ encia de a¸ c˜ oes, que levam a um resultado esperado. Resumindo: ◮ algoritmo: exerc´ ıcio de racioc´ ınio (definir o problema); ◮ t´ ecnicas de programa¸ c˜ ao: exerc´ ıcio da implementa¸ c˜ ao 2/34

  3. Introdu¸ c˜ ao II ◮ Exemplo: Seq¨ uˆ encia de a¸ c˜ oes para chegar ao trabalho/universidade pegar o onibus ˆ chegar tomar ou Acordar levantar os cafe destino pegar o carro 3/34

  4. Introdu¸ c˜ ao III ◮ Para cada a¸ c˜ ao acontecer, ´ e necess´ ario que a a¸ c˜ ao anterior tenha sido executada ◮ Cada a¸ c˜ ao pode conter outros eventos associados (outros algoritmos) 4/34

  5. Portugol I Portugol ´ E uma pseudolinguaguem que permite ao programador pensar no problema em si e n˜ ao no equipamento que ir´ a executar o algoritmo. 5/34

  6. Portugol II Estrutura de um algoritmo I n i c i o < d e c l a r a ¸ c ˜ o e s de v a r i ´ a v e i s > < comandos > Fim 6/34

  7. Portugol III ◮ Identificadores : elemento b´ asico da linguagem, a sua sintaxe ´ e definida por ◮ Exemplos: area, nota1, i, N1, . . . 7/34

  8. Portugol IV ◮ Vari´ avel ◮ Vari´ avel ´ e um local que armazena um tipo espec´ ıfico de conte´ udo ◮ Cont´ em um valor que se modifica durante a execu¸ c˜ ao de um programa. ◮ ´ E identificada por um nome (identificador), que pode ser representando: ◮ Declara¸ c˜ ao de vari´ aveis: 8/34

  9. Portugol V ◮ No Portugol existem quatro tipos b´ asicos de dados: INTEIRO, REAL, CARACTER e L´ OGICO 9/34

  10. Portugol VI ◮ Inteiro : qualquer n´ umero inteiro (negativo, nulo ou positivo) Exemplo: 100, 0, 1, 2, 1250 ◮ Real : qualquer n´ umero real (negativo, nulo ou positivo) Exemplo: -10, -1.5, 11.2, 0, 1, 2, 50 ◮ Caracter : caracteres alfanum´ ericos Exemplo: casa, Win31, 123 ◮ L´ ogico : valor l´ ogico verdadeiro ou falso Exemplo: x > y ? 10/34

  11. Portugol VII ◮ Exemplo: i n t e i r o : idade ; r e a l : nota1 , nota2 , media ; c a r a c t e r : nome aluno ; l o g i c o : maior ; 11/34

  12. Portugol VIII ◮ ´ E importante n˜ ao esquecer 1. N˜ ao ´ e poss´ ıvel definir vari´ aveis de diferentes tipos com o mesmo identificador. Exemplo: real A; inteiro A; causaria erro na programa¸ c˜ ao. 2. Tomar cuidado em rela¸ c˜ ao ` a sintaxe da linguagem. N˜ ao e poss´ ´ ıvel ter identificador como: c a r a c t e r nome − empregado ; r e a l v a l o r ∗ ; i n t e i r o 8x ; l o g i c o p o s i t i v o ? ; 3. Letras mai´ usculas e min´ usculas s˜ ao tratadas de forma diferente. Exemplo: Media ´ e diferente de media , como tamb´ em de MEDIA ; 12/34

  13. Portugol IX ◮ Constantes ◮ Uma constante ´ e um valor fixo que n˜ ao se modifica ao longo do tempo ◮ Em algoritmo representaremos constantes pelo tipo const ou #define (eventualmente alguns elementos da linguagem C podem ser escritos no algoritmo) const M 10; 13/34

  14. Portugol X ◮ Comandos b´ asicos : ◮ O comando de atribui¸ ao ´ e utilizado para atribuir um valor a c˜ uma vari´ avel. ◮ Para isso usamos o s´ ımbolo “ ← ” 14/34

  15. Portugol XI ◮ A nota¸ c˜ ao usada para express˜ oes ´ e basicamente uma forma linear comumente usada na matem´ atica, que pode conter operadores: ◮ Aritm´ eticos: +, − , ∗ , / , raiz(), ∧ , sen(), cos(), mod, div, . . . ◮ L´ ogicos: e, ou, n˜ ao ◮ Relacionais: =, � =, > , ≥ (ou > =), < , ≤ (ou < =) 15/34

  16. Portugol XII Exemplos: ◮ Atribui¸ c˜ ao de um valor constante i n t e i r o v a l o r ; v a l o r < − 10; ◮ Atribui¸ c˜ ao entre vari´ aveis i n t e i r o v a l o r ; i n t e i r o x ; x < − 10; v a l o r < − x ; ◮ Resultado de express˜ oes i n t e i r o v a l o r ; i n t e i r o x , y ; x < − 10; y < − 5; v a l o r < − x + y ∗ 2; 16/34

  17. Exerc´ ıcio 1 I Desenvolva um algoritmo em portugol para somar dois valores inteiros (10+5) I n i c i o i n t e i r o x , y , z ; // d e c l a r a t r ˆ e s v a r i ´ a v e i s i n t e i r a s x < − 10; // a t r i b u i 10 para x y < − 5; // a t r i b u i 5 para y z < − x + y ; // soma x e y , o r e s u l t a d o ´ e a t r i b u i d o a z Fim 17/34

  18. Entrada e Sa´ ıda de dados I ◮ Um algortimo pode receber um dado informado atrav´ es de um comando de leitura ◮ Tamb´ em pode ser necess´ ario conhecer o resultado de uma determinada opera¸ c˜ ao, nesse caso usaremos um comando de escrita 18/34

  19. Entrada e Sa´ ıda de dados II O comando de entrada ´ e leia O comando de sa´ ıda ´ e escreva 19/34

  20. Exerc´ ıcio 2 I Inserir dois n´ umeros inteiros e encontrar a soma I n i c i o i n t e i r o : x , y , soma ; l e i a ( x , y ) ; soma < − x + y ; e s c r e v a ( "A soma entre" , x , " e " , y , e " , soma ) ; " ´ Fim 20/34

  21. Regras para escrever algoritmos I ◮ Incluir coment´ arios ◮ Usar nomes significativos para as vari´ aveis que possam identificar o conte´ udo ◮ Identar os comandos facilita a legibilidade do algoritmo e reduz a possibilidade de erros 21/34

  22. Exerc´ ıcio 3 I Desenvolva um algoritmo que calcule o volume de uma esfera de ario. ( V = 4 / 3 π R 3 ) raio R , fornecido pelo usu´ 22/34

  23. Exerc´ ıcio 3 II I n i c i o const p i 3.14159; r e a l : R, volume ; e s c r e v a ( "Inserir raio da esfera" ) ; l e i a (R ) ; volume < − 4/3 ∗ p i ∗ (Rˆ 3 ) ; e s c r e v a ( "O volume da esfera: " , volume ) ; Fim 23/34

  24. Exerc´ ıcio 3 III Desenvolva um algoritmo para encontrar a m´ edia entre 4 valores fornecidos pelo usu´ ario 24/34

  25. Exerc´ ıcio 3 IV I n i c i o r e a l : nota1 , nota2 , nota3 , nota4 , media ; e s c r e v a ( "Inserir quatro notas" ) ; l e i a ( nota1 , nota2 , nota3 , nota4 ) ; media < − ( nota1 + nota2 + nota3 + nota4 ) / 4; e s c r e v a ( "Valor da media: " , media ) ; Fim 25/34

  26. Comandos de Controle I ◮ Permite ◮ alterar a dire¸ c˜ ao tomada por um programa, ou (desvio) ◮ fazer com que partes espec´ ıficas de um algoritmo sejam executadas mais de uma vez ( loop ) 26/34

  27. Comandos de Controle II ◮ Desvio condicional : muitas vezes ser´ a necess´ ario desviar a execu¸ c˜ ao do programa segundo uma condi¸ c˜ ao. ◮ Por exemplo, ir a universidade de carro ou de ˆ onibius? ◮ Para se testar condi¸ c˜ oes pode ser necess´ ario utilizar operadores l´ ogicos e relacionais 27/34

  28. Comandos de Controle III ◮ Desvio condicional simples se ( condi¸ c˜ ao ) ent˜ ao l i s t a de comandos f i m s e Inserir um n´ umero real, se ele for positivo imprimir o n´ umero 28/34

  29. Comandos de Controle IV I n i c i o i n t e i r o A; e s c r e v a ( "Inserir valor " ) ; l e i a (A) ; se A > 0 ent˜ ao e s c r e v a (A) ; f i m s e Fim 29/34

  30. Comandos de Controle V ◮ Desvio condicional composto ◮ As condi¸ c˜ oes, verdadeiras ou falsas, geram a¸ c˜ oes atrav´ es de um ´ unico comando de desvio condicional se ( condi¸ c˜ ao ) entao l i s t a de comandos sen˜ ao l i s t a de comandos f i m s e Inserir dois valores num´ ericos e encontrar o maior deles 30/34

  31. Comandos de Controle VI I n i c i o r e a l num1 , num2 ; e s c r e v a ( "Inserir dois valores" ) ; l e i a (num1 , num2 ) ; se num1 > num2 e s c r e v a ( "o maior ´ e " , num1 ) ; sen˜ ao e s c r e v a ( "o maior ´ e " , num2 ) ; f i m s e Fim 31/34

  32. Exerc´ ıcios em aula I 1. Desenvolva um algoritmo que lˆ e o nome de um aluno, as notas a , b e c de suas trˆ es provas, calcula e exibe a m´ edia harmˆ onica das provas, dada por 3 1 a + 1 b + 1 c . 2. Fa¸ ca um algoritmo para calcular a ´ area de um c´ ırculo, sendo fornecido o valor do raio, que deve ser positivo. 3. Escreva um algoritmo que leia um n´ umero inteiro. Se o n´ umero lido for positivo, escreva uma mensagem indicando se ele ´ e par ou ´ ımpar. Se o n´ umero for negativo, escreva a seguinte mensagem “Este n´ umero n˜ ao ´ e positivo”. 32/34

  33. Exerc´ ıcios propostos I 1. Crie um algoritmo que fa¸ ca a soma de dois valores inteiros obtidos atrav´ es de leitura e imprima o resultado dessa soma. Em seguida leia outro n´ umero inteiro e calcule e exiba a quociente da soma calculada anteriormente por este n´ umero. 2. Fa¸ ca um algoritmo que leia o nome de um piloto, uma distˆ ancia percorrida em km e o tempo que o piloto levou para percorrˆ e-la (em horas). O programa deve calcular a velocidade m´ edia Velocidade = Distˆ ancia Tempo em km/h, e exibir a seguinte frase: A velocidade m´ edia do < nome do piloto > foi < velocidade media calculada > km/h. 33/34

  34. FIM Cr´ editos: Baseado no material preparado pelo Prof. Guillermo C´ amara-Ch´ avez. 34/34

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend