10
Aula 02 _____________________________________________________________________ Sistemas Lineares Introdução { x 1 x 2 x 3 = 1 x 1 x 2 x 3 = 1 2x 1 3x 2 4x 3 = 9

Aula02_IntroducaoSL_Algoritmos

Embed Size (px)

DESCRIPTION

Show.

Citation preview

Page 1: Aula02_IntroducaoSL_Algoritmos

Aula 02_____________________________________________________________________

Sistemas LinearesIntrodução

{x1 x 2 x3 = 1x1− x 2− x3 = 1

2x13x2−4x3 = 9

Page 2: Aula02_IntroducaoSL_Algoritmos
Page 3: Aula02_IntroducaoSL_Algoritmos

Exemplo 1 – Classificar os sistemas lineares a seguir:

a) {x1x2=1x1−x2=0 b) { x1 x2=1

2x14x2=2 c) {2x1− x2=14x1−2x2=5

Page 4: Aula02_IntroducaoSL_Algoritmos

Métodos Numéricos para resolução de Sistemas Lineares

Introdução

Definição 1: Dois sistemas lineares são equivalentes quando admitem a mesma solução.

Definição 2: Uma matriz triangular inferior é uma matriz quadrada C = (cij ) tal que cij = 0 para i < j.

Do mesmo modo, se cij = 0 para i > j, então C é uma matriz triangular superior.

Definição 3: Uma matriz A, n x n, é positiva definida se xTAx > 0 para todo x n, x 0.

Teorema 1: Seja Ax = b um sistema linear. Aplicando sobre as equações deste sistema uma

sequência de operações elementares escolhidas entre:

i) trocar duas equações;

ii) multiplicar uma equação por uma constante não nula;

iii) adicionar um múltiplo de uma equação a uma outra equação;

obtemos um novo sistema A'x=b'. Os sistemas Ax = b e A'x=b' são equivalentes.

Page 5: Aula02_IntroducaoSL_Algoritmos

Métodos Exatos

Sistemas Triangulares

Page 6: Aula02_IntroducaoSL_Algoritmos

Exemplo: Resolva os sistemas triangulares a seguir.

1) {2x1−x2 x3=2

x 22x3=3x 3=1

2) {x1 =12x1−x2 =12x1−3x2x3=0

Page 7: Aula02_IntroducaoSL_Algoritmos

Algoritmo Computacional – Conceitos Básicos

Um algoritmo computacional é uma sequência de passos que conduzem a resolução de um

problema em um computador. Os passos ou instruções lógicas são traduzidos em alguma

linguagem de programação.

As representações de um algoritmo podem ser:

● linguagem natural

● fluxograma

● pseudo-linguagem

Exemplos de linguagens de programação:

● Pascal

● C

● FORTRAN

● Java

● MATLAB

O MATLAB é uma linguagem de programação interpretada desenvolvida no início da década de 80

no Departamento de Ciência da Computação da Universidade do Novo México, EUA. Dentre suas

vantagens tem-se:

● oferece recursos de programação similares aos de outras linguagens

● ambiente interativo para computação envolvendo matrizes

● interface gráfica com o usuário

O Octave é uma linguagem de programação interpretada similar ao MATLAB. Possui interface em

linha de comando para a solução de problemas. Suas maiores vantagens são:

● software livre

● possui um grande número de funções semelhantes as funções do MATLAB

Pseudo-linguagem

● sintaxe mais flexível que a de uma linguagem de programação real

(o foco é dado nos passos do algoritmo e não na maneira como eles são escritos)

● ênfase nas ideias

● a partir de um algoritmo escrito em pseudo-linguagem estruturada adequadamente é

possível escrever um programa em qualquer linguagem de programação

Page 8: Aula02_IntroducaoSL_Algoritmos

A seguir vamos definir a sintaxe (como escrever os comandos e seus componentes) e semântica

(significado de cada comando e conceito) básica da pseudo-linguagem que será adotada no curso

de Cálculo Numérico:

1) Os tipos básicos de dados são:

● inteiro (toda e qualquer informação numérica que pertence ao conjunto dos números

inteiros)

● real (toda e qualquer informação numérica que pertence ao conjunto dos números reais)

● caracter (toda e qualquer informação composta por um único caracter numérico,

alfanumérico ou especial)

● string (toda e qualquer informação composta por um conjunto de caracteres numéricos,

alfanuméricos ou especiais)

● lógico (toda e qualquer informação que pode assumir apenas os valores verdadeiro ou falso)

2) Variáveis:

● uma variável é um endereço da memória de acesso randômico (RAM) representada por um

nome e pela especificação do tipo de dado que ali será armazenado

● o primeiro caracter do nome da variável deve ser uma letra seguida (ou não) de mais

caracteres alfanuméricos ou numéricos

● não pode haver espaços em branco entre os caracteres

● não devem ser usados caracteres especiais (#,$,%,&,*,@)

● os nomes não podem ser os mesmos das palavras reservadas da linguagem de programação

● os nomes devem ser explicativos

● se a variável é uma constante então o seu conteúdo não sofre alteração durante toda a

execução do programa

3) Comandos

● Comando de Declaração

● cria uma variável ou constantes

● a declaração de variáveis na pseudo-linguagem adotada será realizada no preâmbulo

dos algoritmos quando necessário

● Comando de Atribuição

● comando que indica o que a variável vai receber em seu conteúdo

● o comando de atribuição utilizado na pseudo-linguagem adotada será o sinal de igual

'='

Page 9: Aula02_IntroducaoSL_Algoritmos

● Comando de Entrada e Saída

● comandos de entrada permitem que dados sejam inseridos no algoritmo

● comandos de saída permitem que dados sejam passados do algoritmo para outros

dispositivos

● o comando de entrada utilizado na pseudo-linguagem adotada será a palavra 'leia'

● o comando de saída utilizado na pseudo-linguagem adotada será a palavra 'retorne'

4) Bloco de Execução

● o bloco de execução é um conjunto de ações que possui uma função bem definida

● em um bloco sequencial os comandos são executados em sequência, um a um

5) Controle de Fluxo

● o controle de fluxo é um conjunto de comandos que serão executados em um bloco

● os principais comandos de fluxo são:

● Para

● Enquanto

● Repita ... até que

● Se - Senão

Observação:

Os operadores aritméticos representados por símbolos serão:

● adição: +

● subtração: -

● multiplicação: *

● divisão: /

● igualdade: ==

● desigualdade: > (maior), >= (maior ou igual), < (menor), <= (menor ou igual)

● diferença:

● os demais serão escritos em palavras

Page 10: Aula02_IntroducaoSL_Algoritmos

Exemplos

1 – Escreva um algoritmo que atribua os valores 10,5 para x e 5,5 para y e calcule a soma entre x e y.

Algoritmo 1

x = 10,5

y = 5,5

Faça soma = x + y

Retorne soma

2 – Escreva uma algoritmo que calcule o somatório ∑i=1

10

xi

Algoritmo 2

Dado x 10

soma = 0

Para i = 1, ..., 10

soma = soma + xi

Fim-Para

Retorne soma

_______________________________________________________

Lista de Exercícios 2

1 – Escreva um algoritmo que resolva um sistema triangular inferior de n equações e n incógnitas.

2 – Escreva um algoritmo que resolva um sistema triangular superior de n equações e n incógnitas.