A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Introdução a Programação I

Apresentações semelhantes


Apresentação em tema: "Introdução a Programação I"— Transcrição da apresentação:

1 Introdução a Programação I

2 A Long long Time ago… o ENIAC. Esta máquina das cavernas media 17m x 9m, era capaz de fazer 38 divisões e 357 multiplicações por segundo e levava 2 horas para calcular o mesmo que 100 engenheiros levariam 1 ano apenas com lápis e papel. Seriam necessárias destas máquinas para poder competir com um único PlayStation 3...

3 Máquina de Fazer contas
previsão meteorológica: Para fazer uma previsão corretamente para um país como o Brasil são necessárias aproximadamente contas 100 contas por segundo, irá levar mais ou menos 3 bilhões de anos (mais ou menos a idade da Terra...) para calcular a previsão do tempo para o dia de amanhã no Brasil.

4 O que faz um computador? +, -, /, x >, <, =

5 CISC x RISC

6 al-Khowarizm ou Algoritmos
Pegar uma escada; Posicionar abaixo da lâmpada; Pegar uma nova lâmpada; Remover a lâmpada queimada; Colocar a nova lâmpada; Guardar a escada.

7 O algoritmo mais antigo do mundo
Um dos algoritmos mais antigos é o de Euclides, que foi escrito na Grécia em torno de 300 A.C. (adivinhe como era o nome do matemático que o escreveu...). Este algoritmo se propõem a encontrar o maior divisor inteiro comum entre um par de números. O algoritmo diz: divida um dos números pelo outro e pegue o resto desta divisão pegue o segundo número da divisão e coloque-o no lugar do primeiro, dividindo-o pelo resto obtido no cálculo anterior. Continue este procedimento até que o resto da divisão seja zero. O último resto obtido será o maior divisor comum. 3654  1365  resto 924 1365   resto 441 924   resto 42 441   resto 21   resto 0

8 Definição Formal Algoritmo é uma seqüência ordenada e finita de passos bem definidos que descrevem como realizar uma certa tarefa específica. Propriedades de um algoritmo: Os passos obedecem a uma ordem específica; Não existe ambigüidade; O número de passos é finito.

9 Áreas da Computação Banco de Dados: desenvolve algoritmos para gerar e manipular um volume grande de dados; Computação Gráfica: desenvolve soluções para sintetizar imagens numa tela plana, buscando simular (através de algoritmos) a iluminação, sombras, reflexos, etc. Inteligência Artificial: busca algoritmos que de alguma forma procuram resolver problemas de planejamento ou de simulação de comportamento; Otimização: procura algoritmos que sejam mais eficientes dos que os conhecidos (normalmente esta efixiência é medida em tempo). Entretenimento: Faz algoritmos para dar razão de ser ao PlayStation e ao Xbox...

10 Linguagem dos computadores
Linguagem mais simples Linguagem Matemática e binária: Alfabeto Bits e bytes CPUs de 8, 16, 24, 64 e 128 bits

11 Linguagem de Programação

12 Linguagem de Programação
C++ JAVA C Pascal Fortran Visual Basic ASP LUA Phyton C# SQL

13 Pseudo-código Declare N1, N2, N3 como inteiro
Escreva “Entre com o dividendo e com o divisor: ” Leia N1,N2 Se N2≠0 então N3 ← N1 div N2 Escreva “O quociente é igual a”, N3 Senão Escreva “Operação Inválida” FimSe

14 Compiladores

15 Interpretadores

16 Máquina Virtual

17 Insetos (Bugs...)

18 Debugers

19 Sintaxe x Semântica

20 Compilador IDE - Integrated Development Environment

21 Arquitetura de Computadores
Barramento CPU UC ULA RC Dispositivo de Entrada e Saída Memória

22 Barramento

23 Unidade de Controle CPU UC Dispositivo de ULA Entrada e Saída Memória
Barramento CPU UC ULA RC Dispositivo de Entrada e Saída Memória

24 Unidade Lógica e Aritimética
Barramento CPU UC ULA RC Dispositivo de Entrada e Saída Memória

25 Registradores CPU UC Dispositivo de ULA Entrada e Saída Memória RC
Barramento CPU UC ULA RC Dispositivo de Entrada e Saída Memória

26 Operações Elementares

27 Atribuição Vidas = 5;

28 Avaliação de Expressões
(5 * PI) / 360

29 Precedência de Operadores
5+4/2 ?

30 Leitura de dados Le (posição de mouse);

31 Escrita de dados Imprime “Iniciando fase 1”

32 Palavras Reservadas

33 Case Sensitive Posicao x posicao

34 Variáveis

35 Declaração de Variáveis
Var <nome_da_variavel> As <Tipo da Variável> Nome Descrição Exemplos Int Números inteiros 1, 22, 333, -430 Float Números reais 3.1415, 2.333, 5.0 Bool Verdadeiro ou Falso True / False (somente estes 2)

36 Pergunta: qual é o problema do exemplo?...
Exemplos Var v1 As Int Var v2 As Int Pergunta: qual é o problema do exemplo?...

37 Regras para nomear variáveis OBRIGATÓRIO...
- Não usar palavras reservadas - Não colocar espaço entre partes da variável: Var numero de vidas as Int - Não começar a palavra com números - Não usar símbolos: #Vidas, Custo$, etc... (exceção: _) - Não usar acentos

38 Regras para nomear variáveis Boas maneiras...
Dar nomes sugestivos Não usar nomes muito extensos: Numerototaldevidasdopersonagem Usar como separadores: _ ou maiúsculas: NumeroDeVidas, numero_de_vidas

39 Inicialização de Variáveis
Var fase As Int ... fase = 0 Nome Descrição Exemplos Int Números inteiros 1, 22, 333, -430 Float Números reais 3.1415, 2.333, 5.0 Bool Verdadeiro ou Falso True / False (somente estes 2)

40 Exercício Suponha que o seu programa possua duas variáves:
CorFundo e CorFrente Escreva um programa que faça a cor do fundo passar a ser a cor da frente e a cor da frente a cor do fundo

41 Expressões Retornam um valor 3 tipos: Aritiméticas Lógicas Relacionais

42 Expressões Aritiméticas
X + Y X-Y X*Y X/Y ((3 + X)/(Y-4))

43 Expressões Lógicas (A) A e B A ou B não (A)

44 Tabelas Verdade OR True False

45 Tabelas Verdade AND True False

46 Tabelas Verdade NOT True False

47 Expressões Relacionais
A > B A>=B A = B A<B A<=B A≠ B ou A <>B

48 Prioridades Prioridade Operadores parenteses,funções 1
parenteses,funções 1 +, - (operadores unitários) 2 potenciação 3 *, / 4 +, - 5 operadores relacionais 6 não 7 e 8 ou

49 Estrutura de um programa
Program NomeDoPrograma Method Main() // Programa End Method End Program

50 Hello World Program MeuPrimeiroPrograma Method Main()
Print ("Hello World") End Method End Program

51 Funções Nome_da_Funcao (parametro1, parametro2, ...)
Ex: Print (<conteudo>) ConsoleWriteLine (<conteudo>) Sin (<valor>) ...

52 Exercicio Obsereve a sintaxe da funcao round: Floor (numero_real)
A funcao devolve a parte inteira do numero real passado como parametro Esrcreva um programa que imprime a parte decimal de um numero: Var numero as decimal Numero = [seu codigo]

53 Exercicio Var numero as decimal Numero = 3.1415 Var num2 As Integer
num2 = floor (num) print(num - num2)

54 Outra forma de imprimir
Console.WriteLine(“alguma coisa”)

55 Leitura de dados num = ConsoleReaddecimal(“entre com um numero", False)

56 Melhorando o exercicio...
Var num As Decimal num = ConsoleReaddecimal("Entre com um numero", False) Var num2 As Integer num2 = floor (num) Console.WriteLine(num - num2)

57 Objetos Carro Atributos Carro.placa Carro.cor Carro.modelo
Carro.anda() Carro.mede_velocidade() Carro.para()

58 Objetos Program UFO Method Main() Define MySprite As Sprite
MySprite.Load( "ufo.gif" ) MySprite.MoveTo( 200, 200 ) MySprite.Show() End Method End Program

59 Mais sobre Objetos Program UFO Method Main() Define MySprite As Sprite
MySprite.Load( "ufo.gif" ) MySprite.MoveTo( 0, 0 ) MySprite.Show() Delay(1000) MySprite.MoveTo( 300, 0 ) MySprite.MoveTo( 300, 300 ) MySprite.MoveTo( 0, 300 ) MySprite.MoveTo( 150, 150 ) End Method End Program

60 Condicao If <expressao logica> Then // faz alguma coisa Else
// faz outra coisa… End If

61 Condicao If <expressao logica> Then // faz alguma coisa End If

62 Condicao - exemplo Var num As Integer
num = ConsoleReadint("Enter com um numero", False) If num > 0 Then console.Write("numero e positivo") Else console.Write("numero negativo...") End If

63 exercicio O operador mod funciona da seguinte maneira:
Resultado = numero1 mod numero2 Resultado contem o resto da divisao inteira de numero1 e numero2 Escreva uma função que le um numero e responde se ele é par ou impar

64 exercicio Var num As Integer
num = ConsoleReadint("Enter com um numero", False) If (num Mod 2) = 1 Then console.Write("numero e impar") Else console.Write("numero par...") End If

65 Concatenação de Ifs If condicao1 Then //faz coisa 1 End If

66 Concatenação de Ifs If tecla = seta_frente Then //anda para frente
End If If tecla = seta_traz Then //anda para traz If tecla = espaco Then //pula desgracado!

67 Desafio Master! Qual é a diferença?
If condicao1 Then //faz coisa 1 Else If condicao2 Then //faz outra coisa If condicao3 Then //Nossa! Outra coisa! End If If condicao1 Then //faz coisa 1 End If If condicao2 Then //faz outra coisa If condicao3 Then //mais outra coisa

68 Mais um exercicio Escreva um algoritmo que leia um ano e verifique se é bissexto. Um ano é bissexto se é divisível por 4, senão é um século. No caso de século, o ano é considerado bissexto se for divisível por 400.

69 Mais um! Escrever um algoritmo que determina o maior dentre três números inteiros

70 Ultimo! Escreva um algoritmo que leia três valores inteiros que serão armazenados em três variáveis L, M, N e troque seus valores, se necessário, de modo que L seja o menor, M o valor do meio e N o maior.

71 Incrementos e decrementos
Contador = Contador + 1 Contador = Contador + 10 Contador += 10 Tempo -= 100

72 Caracteres especiais console.ConsoleWrite (“ quero pular uma linha \n") console.ConsoleWrite (“ agora uma tabulacao \t")

73 E finalmente os Loops... Como poderia fazer um objeto se mover suavemente pela tela?

74 While While Condição // comandos End While

75 Exemplos While Var contador As Integer contador = 0
While (contador < 10) contador += 1 console.ConsoleWrite(contador) End While

76 O que faz este programa? Var contador As Integer contador = 0
While true contador += 1 console.ConsoleWrite(contador) End While

77 Exercicio Disco Voador que anda de um lado para outro...


Carregar ppt "Introdução a Programação I"

Apresentações semelhantes


Anúncios Google