Diferenças entre edições de "Ler e apresentar dados"

De GNU Octave
Ir para: navegação, pesquisa
(Corrigir gralha)
(Menus)
Linha 47: Linha 47:
  
 
<syntaxhighlight>
 
<syntaxhighlight>
octave:5> menu("Sexo", "Masculino", "Feminino")
+
octave:5> sexo = menu("Sexo", "Masculino", "Feminino")
 
Sexo
 
Sexo
  
Linha 54: Linha 54:
  
 
pick a number, any number: 2
 
pick a number, any number: 2
ans =  2
+
sexo=  2
 +
</syntaxhighlight>
 +
 
 +
Um menu pode ter quantas opções desejar.
 +
 
 +
<syntaxhighlight>
 +
octave:1> dia = menu("Indique o dia da semana", "Domingo", "Segunda-feira", "Terça-feira", "Quarta-feira", "Quinta-feira", "Sexta-feira", "Sábado")
 +
Indique o dia da semana
 +
 
 +
  [ 1] Domingo
 +
  [ 2] Segunda-feira
 +
  [ 3] Terça-feira
 +
  [ 4] Quarta-feira
 +
  [ 5] Quinta-feira
 +
  [ 6] Sexta-feira
 +
  [ 7] Sábado
 +
 
 +
pick a number, any number: 6
 +
dia =  6
 
</syntaxhighlight>
 
</syntaxhighlight>
  

Revisão das 15h58min de 7 de janeiro de 2013

O Octave permite interagir com o utilizador através de funções de input (leitura de dados) e output (apresentação de dados).

Ler dados

A forma mais simples de ler dados do utilizador, é através da instruções input.

octave:8> numero = input ("Escolha um número entre 1 e 100! ")
Escolha um número entre 1 e 100! 25
numero =  25

A instrução input apresenta a mensagem e fica a aguardar que seja introduzido algo seguido de Enter.

O valor lido é atribuído à variável numero, como apresentado no exemplo.

Outros valores

Com a instrução input podem-se ler outros valores, como vetores ou matrizes.

octave:15> v = input("Introduza as temperaturas desta semana: ")
Introduza as temperaturas desta semana: [23 22 24 26 23 22 21]
v =
   23   22   24   26   23   22   21

O Octave tenta converter o valor lido para número, vetor ou matriz. Se quiser ler uma string, isto é, se quiser que a string seja atribuída à variável (e não o número que ela representa), acrescente o parâmetro "s". Ou seja,

octave:19> nome = input("Diga o seu nome ", "s")
Diga o seu nome Camilo Castelo Branco
nome = Camilo Castelo Branco

Exercícios

  1. Leia dois números e multiplique-os.
  2. Leia o ano de nascimento e calcule a idade
  3. Leia o nome de um filme e calcule o comprimento do mesmo.
  4. Leia um número e um vetor, e multiplique o número pelo vetor.
  5. Leia um vetor e uma matriz, e multiplique um pelo outro.

Menus

O Octave permite de uma forma muito simples apresentar um menu.

octave:5> sexo = menu("Sexo", "Masculino", "Feminino")
Sexo
 
  [ 1] Masculino
  [ 2] Feminino
 
pick a number, any number: 2
sexo=  2

Um menu pode ter quantas opções desejar.

octave:1> dia = menu("Indique o dia da semana", "Domingo", "Segunda-feira", "Terça-feira", "Quarta-feira", "Quinta-feira", "Sexta-feira", "Sábado")
Indique o dia da semana
 
  [ 1] Domingo
  [ 2] Segunda-feira
  [ 3] Terça-feira
  [ 4] Quarta-feira
  [ 5] Quinta-feira
  [ 6] Sexta-feira
  [ 7] Sábado
 
pick a number, any number: 6
dia =  6

Exercícios

  1. Apresente um menu para escolher entre graus ou radianos.
  2. Apresente um menu para escolher o dia da semana.

Apresentar dados formatados

Das várias formas de apresentar resultados em Octave, a instrução printf é aquela que nos dá mais flexibilidade.

A instrução printf recebe uma template, e os valores a apresentar. Exemplo:

octave:4> x = 18;
octave:5> printf("Eu tenho %d anos de idade.", x);
Eu tenho 18 anos de idade.octave:6>

No exemplo anterior, a template inclui a indicação %d onde será apresentado o valor (inteiro) da variável x.

Repare que o prompt do Octave octave:6> apareceu logo a seguir à mensagem. Se acrescentar na mensagem o carater especial \n está a acrescentar uma mudança de linha.

octave:6> printf("Eu tenho %d anos de idade.\n", x);
Eu tenho 18 anos de idade.
octave:7>

Na mesma instrução, podem-se apresentar vários dados. Exemplo:

octave:15> largura = 3;
octave:16> comprimento = 4;
octave:17> printf("A área de um rectângulo com %d de largura e %d de comprimento é %d.\n", largura, comprimento, largura*comprimento);
A área de um rectângulo com 3 de largura e 4 de comprimento é 12.

Além de %d para inteiros, usa-se frequentemente o %f para reais, %s para strings e %% para escrever o símbolo %.