Você está na página 1de 26

Algoritmos I Variveis, Entrada e Sada de Dados

Carlos de Salles Soares Neto csalles@deinf.ufma.br Segundas e Quartas, 17h40 s 19h10

Variveis
rea de memria para o armazenamento de dados

Variveis em algoritmos so sutilmente diferentes do mesmo conceito em matemtica. O nome dado porque aqui seu valor pode variar com o tempo
2

Nomenclatura de Variveis
Os nomes de variveis devem comear com uma letra, seguida de outras letras, dgitos, ou sublinhado (_); Toda varivel possui um tipo associado; Os nomes de variveis devem ser autoexplicativos; Exemplos:
qtde_funcionarios idade h, gr, qtde (nomes ruins)

Historicamente, as letras i, j, k so usadas para contadores

Declarao de Variveis
A declarao de uma varivel serve para identific-la (dar um nome) e apresentar seu tipo; Sintaxe de uma declarao:
<varivel 1>, <varivel 2>, ... :<tipo>

Atribuindo valores a variveis Uma varivel sempre armazena apenas um nico valor;
4

Atribuindo valores a variveis


Uma varivel sempre armazena apenas um nico valor

Numa atribuio, o novo valor da varivel substitui o antigo 5

Atribuies
Atribuir valores de tipos diferentes um erro:
quantidade : inteiro; quantidade Carlos;

Comando de Entrada de Dados


Sintaxe do comando:
ler <varivel1>, <varivel2>,

O comando ler a forma mais rudimentar de entrada de dados por parte do usurio; A entrada de dados em portugus estruturado feita exclusivamente por meio deste comando.
7

Entrada de Dados Exemplos


clientes: inteiro; ler clientes; nome_cliente: cadeia; jdade_cliente: inteiro; ler nome_cliente, idade_cliente;

Sada de Dados
Sintaxe do comando
escrever <varivel1 ou expresso ou mensagem>,

O comando escrever a forma mais rudimentar de sada de dados; Em portugus estruturado, a sada de dados feita exclusivamente por meio deste comando.
9

Sada de Dados Exemplos


escrever Ol. Boa tarde!
Exibe na tela:

Ol. Boa tarde! nome_cliente: cadeia; idade_cliente: inteiro; nome_cliente Joo; idade_cliente 20; escrever O cliente , nome_cliente, tem , idade_cliente, anos de idade.;
Exibe na tela:

O cliente Joo tem 20 anos de idade.

10

Sintaxe Geral de Portugus Estruturado


Tipos <tiponovo1> = <tipo1>; <tiponovo2> = <tipo2>; Variveis <varivel1>, <varivel2>, : <tipo>; <varivel3>, <varivel4>, : <tipo>; //Isso um comentrio que ser ignorado Incio <comando1>; Fim. Mdulo <nomemdulo1>; [[ ]]; Mdulo

11

Problema 1 Equaes de Segundo Grau

Uma equao de segundo grau tem o seguinte formato:

Com base nisso, escreva um programa que l os valores a, b, c e exibe o resultado da equao de segundo grau.
12

Problema 1 - Soluo

13

Problema 2 rea de um retngulo A rea de um retngulo definida por: Faa um programa que receba do usurio a base a a altura de um retngulo e exiba a rea desse retngulo.

14

Problema 3 - Rendimentos
No Brasil, uma aplicao financeira paga 20% de imposto de renda sobre os rendimentos brutos. Faa um programa que leia do usurio seu saldo em uma aplicao financeira e os rendimentos em um ms da mesma. Exiba como resposta o saldo atualizado da aplicao excluindo o imposto de renda.
15

Problema 2 - Soluo

16

Problema 3 Soluo

17

Problema 4 Qual a senha?


Para entrar em um sistema de segurana o espio precisa informar sua senha de acesso. A senha abre-te sesamo. Faa um programa que pede para o usurio informar a senha e exibe VERDADEIRO caso a senha seja correta ou FALSO em caso contrrio.
18

Problema 4 Soluo

19

Problema 5 Mdia em uma disciplina


A mdia final de uma disciplina calculada da seguinte forma:

Faa um programa que leia as trs notas de um aluno em uma disciplina e exiba sua mdia. Alm disso, o programa exibe VERDADEIRO se o aluno tiver mdia sete ou mais e FALSO em caso contrrio.
20

Problema 5 Soluo

21

Problema 6 Pay per view


Em um sistema de TV por assinatura, alguns canais funcionam no sistema de pay per view e outros no. Os canais pay per view so mltiplos de 11 e os canais 56 a 62. Todos os demais canais so livres, ou seja, esto inclusos na assinatura mensal. Faa um programa que leia do usurio um nmero de canal e exiba na tela a mensagem Canal livre FALSO se o canal for pay per view ou Canal livre VERDADEIRO em caso contrrio.

22

Problema 6 Soluo

23

Etapas da Construo de um Algoritmo


Entender o problema Identificar as sadas Identificar as entradas do problema Analisar o processamento Manter separadas as etapas de entrada, processamento e sada Definir a sequencia de comandos Se necessrio, realizar a verificao manual de algoritmos (chins)
24

Modularizao de algoritmos
Equivale a dividir um problema maior em vrios subproblemas, mais simples de serem resolvidos Mtodo dividir para conquistar

25

Exemplo de modularizao (Problema 1)

26

Você também pode gostar