View
43
Download
5
Category
Preview:
DESCRIPTION
Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM Programação de Computadores I – BCC701 www.decom.ufop.br/moodle. Aula 01 Variáveis, Expressões , Atribuição, E/ S. Tópicos. Ambiente Scilab Variáveis , expressões, comando de atribuição - PowerPoint PPT Presentation
Citation preview
Aula 01
Variáveis, Expressões, Atribuição, E/S
1
Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM
Programação de Computadores I – BCC701www.decom.ufop.br/moodle
TópicosAmbiente ScilabVariáveis, expressões, comando de atribuição
Entrada e Saída básica
UFMG DCC001 2013-1 2
Scilab é um ambiente de programação voltado para cientistas e engenheiros
Foi criado em 1990, por pesquisadores do INRIA, sendo baseado no sistema MatLAB.
É gratuito: download www.scilab.org
3
Ambiente de Programação Scilab
4
Ambiente de Programação Scilab
console: janela de comandos
histórico de comandos
navegador de variáveisjanela de
arquivos
prompt de comandos
Variáveis e Atribuição
UFMG DCC001 2013-1
5
a é uma variável que passa a existir,recebe e guarda um
valor
Variáveis criadas
Histórico O Scilab “ecoa” o valor recebido pela
variável
UFMG DCC001 2013-1 6
Variáveis e Comandos de Atribuição - 2
O valor atribuído pode ser uma expressão aritmética com variáveis já conhecidas
^ denotaexponenciação
* denotamultiplicação
Literal
Painel Navegador de Variáveis
UFMG DCC001 2013-1 7
Variáveis São nomes para espaços de memória
gerenciados pelo Scilab O programador não precisa ter qualquer ideia
sobre como é feito esse gerenciamento Variáveis têm seus nomes escolhidos pelo
programador segundo algumas regras◦ O primeiro caractere do nome deve ser uma letra◦ Os outros podem ser letras ou dígitos, ou qualquer
caractere dentre '_', '#', '!', '$‘ e '?' ◦ O nome de uma variável em Scilab deve ter no máximo
24 caracteresUFMG DCC001 2013-1 8
Nomes de Variáveis Válidos:
◦ a, A, jose, total_de_alunos, funcionarios Não válidos
◦ 1Aluno (o primeiro caractere é um algarismo)◦ total de alunos (tem espaços)◦ José (é acentuado)
O mais importante é escolher nomes com significado claro para quem lê o programa
UFMG DCC001 2013-1
9
Comando de Atribuição
UFMG DCC001 2013-1 10
Forma:
<variável alvo> = <expressão> A <variável alvo>, se não existia, passa a existir Se existia, o valor anterior é perdido A <expressão> é calculada, e o resultado é atribuído
à <variável alvo>
O comando de atribuição é a construção básica de transformação de informação, em Scilab e em várias outras linguagens de programação.
11
Expressão – Variável - Atribuição
O Scilab usa uma variável default, ans, quando uma expressão é digitada no prompte não é atribuída a uma variável.
O segundo fator está ausente na expressão aritmética.
12
Expressão – Variável - Atribuição
As variáveis de um expressão, do lado direito de uma atribuição, devem estar definidas.
Não foi definido um valor para a variável lucro !
13
Expressão – Variável - Atribuição
Funções pré-definidas em Scilab podem ser usadas uma expressão.
Expressão do lado direito: o valor corrente de x é adicionado a 8, resultando
8.0000927; esse resultado é atribuído a x.
O valor da expressão do lado direito da atribuição, 22, é atribuído à variável x; o antigo valor é substituído na memória.
-->d = a+x !--error 4 Undefined variable: x
-->b = 1024-->b = 2*b b = 2048.
UFMG DCC001 2013-1 14
Variáveis e Atribuição - 2
Todas as variáveis em uma expressão devem estar definidas, ou o
Scilab reclamaA expressão pode conter a própria variável alvo.
-->a = %pi a = 3.1415927
-->b = 2*%pi; -->c = cos(a) + sqrt(b) c = 1.5066283
UFMG DCC001 2013-1 15
Variáveis e Atribuição – 3
“;” suprime o eco automático
Valor pré-definido como a melhor aproximação em ponto
flutuante de 64 bits de
O Scilab oferece um sem-número de funções pré-definidas como
cos e sqrt (square root).
A linguagem SciLab possui os operadores aritméticos:
16
Operadores Aritméticos
Operador AritméticoDenotação em
SciLabExemplo Resultado
Soma + 7 + 5 12
Subtração - 10 – 9 1
Multiplicação * 22 * 10 220
Divisão / 50 / 2 25
Menos Unário - -26 -26
Exponenciação (potenciação)
^ 8^2 64
Expressões Aritméticas Expressões podem ser arbitrariamente complicadas A ordem em que operadores são aplicados não é óbvia:Qual valor o comando x = 2^3*4 atribui a x,
ou ?
UFMG DCC001 2013-1 17
3248423 409622 1243
UFMG DCC001 2013-1 18
Precedência entre Operadores
Precedência Operação
1a Potenciação
2a Multiplicação, divisão
3a Adição, subtração
Parênteses podem alterar prioridades
Prioridades e Parênteses
UFMG DCC001 2013-1 19
-->2^3*4 ans = 32.-->2^(3*4) ans = 4096.-->2^3^4 ans = 2.418D+24-->2^(3^4) ans = 2.418D+24-->(2^3)^4 ans = 4096.-->2*3+4 ans = 10.-->2*(3+4) ans = 14.
Recomendação:use parênteses; é mais seguro
Notação Scilab (e Fortran, e C, e Java, e ...) para
2.418 x 1024
“ans” é o nome de uma variável que recebe
valores de expressões sem variável alvo
OBS: Nas funções trigonométricas os ângulos devem ser usados em
radianos.20
Algumas funções elementares
FunçãoDenotação em
SciLabExemplo Resultado
Resto da Divisão Inteira
modulo modulo(8, 3) 2
Raiz Quadrada sqrt sqrt(32) 5.6568542
Valor Absoluto abs abs(-8) 8
Coseno cos cos(30) 0.1542514
Tangente tan tan(7.3456) 1.7945721
Seno sin sin(%pi) 1.225D-16
21
Valores pré-definidosDenotação em Scilab Valor
%pi O número .
%inf Representa infinito .
%i
%e A base do logaritmo natural.
%t ou %T Representa o valor booleano verdadeiro.
%f ou %F Representa o valor booleano falso.
Help - Funções Elementares do Scilab
UFMG DCC001 2013-1 22
1. Calcule as expressões matemáticas
23
Exercícios
2. Calcule as expressões matemáticas
24
Exercícios
3. Calcule as expressões matemáticas, definindo
valores para a, b, c e d
25
Exercícios
SciNotesMeu primeiro programa
26
UFMG DCC001 2013-1 27
Cálculo da área de um círculo Área do círculo de raio r: A = π r2
Faça um programa para calcular a área de um círculo de raio = 5cm.
OBS: ◦ Podemos obter a solução diretamente no prompt do Scilab:
-->A = %pi * 5^2
◦ E se agora quisermos calcular a área de um círculo com 16cm de raio? Teremos que digitar tudo de novo:
-->A = %pi * 16^2
Para evitar isso, vamos escrever um programa que faz esse cálculo.
Programas Scilab Programas são arquivos texto, contendo
somente caracteres sem formatação, com a terminação .sce
Um arquivo-programa contém comandos Scilab
Um programa é construído usando o editor SciNotes
Sua execução equivale à digitação na console dos comandos no arquivo
UFMG DCC001 2013-1 28
Instruções bem definidas para resolver um problema
Em arquivo, para guardar e continuar/executar depois
Comentários tornam o programa mais claro para as pessoas, mas são ignorados pelo computador
29
Criando um Programa
Abrindo o SciNotes
UFMG DCC001 2013-1 30
Editor de Programas
31
Janela do SciNotes
32
Cálculo da área do círculo
comentário
comandos de atribuição que definem os valores de r e de A
33
Salvando e executando o programa
abrir salvar e executa
r
novo arquivo executar
salvar
Cálculo da área de um círculo
UFMG DCC001 2013-1 34
Para fazer o cálculo para um círculo de raio 16cm, bastaria mudar o valor de r no programa e executá-lo novamente.
Entretanto, o que gostaríamos é que o nosso programa pudesse ler o valor do raio do círculo e exibir o valor calculado para a área do círculo.
35
Cálculo da área de um círculo comentário
comando de leitrura
comando de escrita
36
Comando de Entrada de Dados
Sintaxe geral do comando input:
<variávelAlvo> = input( <frase> )Onde: <variávelAlvo> é uma variável que representa uma posição da memória que irá armazenar o valor digitado. <frase> é uma string que informa ao usuário qual o dado que ele deve digitar nesta interação. A string deve estar entre aspas duplas.
37
Comando de Entrada de Dados
Suponha que o usuário deseje armazenar o valor 50, referente à quantidade de alunos em uma sala de aula, na variável Q. Isso pode ser realizado pela instrução:
Q = input(“Digite a quantidade de alunos”)
38
Comando de Saída de Dados
Um valor ser armazenado em uma variável pode ser exibido na tela do computador, por meio do comando printf, o qual tem a seguinte sintaxe geral:printf(<frase>, <lista de expressões>)
Exemplo: printf(“Número de alunos = %g”, Q)
39
Comando de Saída de Dados
<frase> é a sentença que se quer imprimir na tela, e que pode estar entremeada por códigos de formato como %g. %g é um código de formato geral para expressões com valores numéricos. existem vários outros códigos de formato como %d, %f ou %s, que vamos explorar em exercícios e em outros exemplos, futuramente.
40
Comando de Saída de Dados
<lista de expressões> é uma lista de expressões separadas por vírgulas, que são calculadas no momento da execução do comando. As expressões na lista são mapeadas, uma a uma, nos códigos de formato, na mesma sequência em que aparecem na <frase>, e a sentença que é impressa é obtida pela substituição do valor de cada expressão na posição marcada pelo código de formato.
41
Comando de Saída de Dados
Exemplo: Suponha: X = 30; Y = 60;
O que é impresso pelo comando a seguir?
printf(“PRIMEIRO:%g SEGUNDO :%g”, X, Y)
Como você escreveria um comando para imprimir os valores das raízes no seu programa da Equação de 2º grau?
Exercícios
42
Codifique os programas a seguir em Scilab. Utilize comentários e mensagens textuais para o usuário
1. O programa deve ler dois valores, calcular a soma desses valores, armazenando-a em uma variável e imprimir o resultado.
2. O programa deve ler dois valores, calcular o resultado da divisão do primeiro pelo segundo e imprimir o resultado.
43
Exercícios
3. O programa deve imprimir o valor da hipotenusa de um triangulo retângulo, calculada de acordo com os valores lidos de seus catetos.
4. O programa deve ler um valor de temperatura em graus Celsius (°C) e calcular e imprimir a temperatura correspondente, em graus Farenheit (°F) e em graus Kelvin (°K).
OBS.: °F = °C × 1.8 + 32°K = °C + 273.15
44
Exercícios
Recommended