Algoritmos e 
Programação 
Prof. Marcos Saúde 
marcosr@pitagoras.com.br
Algoritmos 
 Dados 
 Tipos de Dados 
 Operações primitivas
Dados 
 O objetivo principal de qualquer computador é a manipulação 
de informações ou dados; 
 Estes dados podem ser vendas semanais de uma loja, nomes e 
endereços de uma listagem para correio, notas finais de um 
curso, medidas de uma experiência científica e assim por 
diante; 
 A maior parte dos computadores é capaz de lidar com vários 
tipos diferentes de dados; 
 Quando a maioria das pessoas pensa em computador, pensa 
em dados numéricos, embora a capacidade destes 
equipamentos se estenda além deste tipo de dados;
Tipos de Dados 
 São representações de elementos 
advindos do mundo externo, os quais 
representam as informações que os 
seres humanos manipulam; 
 Numéricos; 
 Caracteres; 
 Lógicos;
Tipos de Dados 
 Numéricos 
 Inteiros 
 Ex: 1, 57, 82; 
 Reais 
 Ex: 1.5, 10, 11.745, 57
Tipos de Dados 
 Caracteres 
 Sequencia de valores delimitados por 
aspas (“”); 
 Formados por: 
 Letras (A até Z) 
 Números (0 até 9) 
 Símbolos (Ex: os que são imprimíveis no 
teclado) 
 Ex: “Lógica”, “Rua 171”, “R$”
Tipos de Dados 
 Lógicos (Booleanos) 
 Valores que sugerem uma única opção 
entre duas possibilidades existentes: 
 Falso ou Verdadeiro 
 Sim ou Não 
 0 ou 1
Tipos de Dados
Variáveis 
 Tudo aquilo que é sujeito à variação; 
 A memória do computador pode ser entendida como uma sequencia 
finita de caixas, que num dado momento guardam algum tipo de 
informação, como número, letra, uma palavra, frase, etc; 
 Cada posição de memória possui um endereço, ou seja, um número 
que indica onde cada informação está localizada: 
 As linguagens de computador facilitaram o manuseio das posições de 
memória, permitindo que ao invés de trabalhar diretamente com os 
endereços de memória fosse possível dar nomes diferentes a cada um 
deles; 
 Tais nomes seriam de livre escolha do usuário. Com este recurso, os 
usuários ficaram livres dos endereços físicos e passaram a trabalhar 
com endereços lógicos;
Variáveis
Variáveis 
 No algoritmo, todas as variáveis 
utilizadas serão definidas no início do 
mesmo, por meio de um comando de 
uma das seguintes formas: 
 <tipo_da_variavel> <nome_da_variavel>; 
 Ou 
 <tipo_da_variavel> <lista_de_variaveis>;
Variáveis 
 Nomenclatura de variável 
 Um ou mais caracteres 
 Não pode conter espaço em branco 
 O primeiro caracter não pode ser numérico 
 Não pode ter o mesmo nome que 
represente comandos (palavras 
reservadas) 
 Não pode repetir, ou seja, possuir mesmo 
nome de outra variável já utilizada;
Variáveis 
 Exemplos: 
 caracter[30] nome, sobrenome; 
 inteiro idade; 
 real salario; 
 logico tem_filhos;
Constantes 
 Valor fixo; 
 Se mantém inalterado independente 
das variáveis envolvidas na operação a 
ser realizada; 
 Ex: PI = 3.14159265
Operadores Aritméticos 
 Ferramentas responsáveis pelo 
estabelecimento das operações 
matemáticas a serem realizadas em um 
computador: 
 Ex: +, -, *, /,←,↑
Expressões 
 Expressões combinam variáveis, operadores 
e constantes para produzir um resultado; 
 Variáveis representam posições na memória onde 
estão dados que serão processados; 
 Constantes são símbolos usados para representar 
dados; 
 Operadores são usados para combinar as 
variáveis e constantes fornecendo um valor como 
resposta;
Expressões 
 Exemplos de expressões 
 0.5 * base * altura 
 (nota1 + nota2)/2.0 
 (temperatura > 0) e (quantidade < limite) 
 4 % 3 + 5 
 A > B
Expressões 
 Observar os símbolos usados para multiplicação (*) e divisão 
(/); 
 Avaliar primeiro as operações de maior prioridade, por exemplo 
(multiplicação e divisão); 
 Se temos de escolher entre operadores de mesma prioridade, 
então deve-se escolher o que está mais à esquerda: 
 Ex: 4/2*3 – primeiro divide-se 4 por 2 e em seguida multiplica-se o 
resultado por 3, dando como resultado 6; 
 Caso queira trocar a prioridade, use parênteses: 
 Não são permitidos outros símbolos para esta função, tais como {} 
e [];
Expressões Aritméticas
Expressões Aritméticas
Expressões Aritméticas
Operadores de atribuição
Operadores de atribuição
Atribuição e memória
Expressões aritméticas
Operadores relacionais
Operadores relacionais
Operadores relacionais
Exercício
Operadores Lógicos
Exercício
Operadores Caracteres
Expressões Mistas
Exercício
Exemplo de Algoritmo 
 ALGORITMO MEDIA_FINAL; 
 INTEIRO NOTA1, NOTA2, NOTA3, NOTA4, 
MEDIA; 
 CARACTERE[35] NOME; 
 INICIO 
 LER (NOME); 
 LER (NOTA1, NOTA2, NOTA3, NOTA4); 
 MEDIA := (NOTA1 + NOTA2 + NOTA3 + NOTA4) / 4; 
 ESCREVER (NOME, MEDIA); 
 FIM.
Exemplo de Algoritmo 
 Segue um Algoritmo que lê o raio de uma 
circunferência e calcula sua área: 
 ALGORITMO AREA_CIRCUNFERENCIA; 
 CONST PI = 3.1416; 
 VAR RAIO, AREA : REAL; 
 INICIO 
 LER (RAIO); //PROCESSAMENTO 
 AREA := PI * SQR(RAIO); //ENTRADA 
 ESCREVER (“AREA =“, AREA); //SAÍDA 
 FIM.
Algoritmo
Algoritmo 
 Resposta 
 Algoritmo Soma_Numeros 
 inteiro a,b,x; 
 Inicio 
 Ler(A); 
 Ler(B); 
 x ← a + b; 
 Escrever(x); 
 Fim.
Apresentando a linguagem C#
Apresentando a linguagem C#
Apresentando a linguagem C#
Apresentando a linguagem C#
Apresentando a linguagem C#
Apresentando a linguagem C#
Apresentando a linguagem C#
Apresentando a linguagem C#
Programação 
 Próxima aula: 
 Conhecendo mais da linguagem C# 
 Seqüências de Escape 
 Adição de referências 
 Substituições na Leitura 
 Operadores Aritméticos, Relacionais e Lógicos 
 Estruturas de Controle (if/else, switch)

Algop - aula 02

  • 1.
  • 2.
    Algoritmos  Dados  Tipos de Dados  Operações primitivas
  • 3.
    Dados  Oobjetivo principal de qualquer computador é a manipulação de informações ou dados;  Estes dados podem ser vendas semanais de uma loja, nomes e endereços de uma listagem para correio, notas finais de um curso, medidas de uma experiência científica e assim por diante;  A maior parte dos computadores é capaz de lidar com vários tipos diferentes de dados;  Quando a maioria das pessoas pensa em computador, pensa em dados numéricos, embora a capacidade destes equipamentos se estenda além deste tipo de dados;
  • 4.
    Tipos de Dados  São representações de elementos advindos do mundo externo, os quais representam as informações que os seres humanos manipulam;  Numéricos;  Caracteres;  Lógicos;
  • 5.
    Tipos de Dados  Numéricos  Inteiros  Ex: 1, 57, 82;  Reais  Ex: 1.5, 10, 11.745, 57
  • 6.
    Tipos de Dados  Caracteres  Sequencia de valores delimitados por aspas (“”);  Formados por:  Letras (A até Z)  Números (0 até 9)  Símbolos (Ex: os que são imprimíveis no teclado)  Ex: “Lógica”, “Rua 171”, “R$”
  • 7.
    Tipos de Dados  Lógicos (Booleanos)  Valores que sugerem uma única opção entre duas possibilidades existentes:  Falso ou Verdadeiro  Sim ou Não  0 ou 1
  • 8.
  • 9.
    Variáveis  Tudoaquilo que é sujeito à variação;  A memória do computador pode ser entendida como uma sequencia finita de caixas, que num dado momento guardam algum tipo de informação, como número, letra, uma palavra, frase, etc;  Cada posição de memória possui um endereço, ou seja, um número que indica onde cada informação está localizada:  As linguagens de computador facilitaram o manuseio das posições de memória, permitindo que ao invés de trabalhar diretamente com os endereços de memória fosse possível dar nomes diferentes a cada um deles;  Tais nomes seriam de livre escolha do usuário. Com este recurso, os usuários ficaram livres dos endereços físicos e passaram a trabalhar com endereços lógicos;
  • 10.
  • 11.
    Variáveis  Noalgoritmo, todas as variáveis utilizadas serão definidas no início do mesmo, por meio de um comando de uma das seguintes formas:  <tipo_da_variavel> <nome_da_variavel>;  Ou  <tipo_da_variavel> <lista_de_variaveis>;
  • 12.
    Variáveis  Nomenclaturade variável  Um ou mais caracteres  Não pode conter espaço em branco  O primeiro caracter não pode ser numérico  Não pode ter o mesmo nome que represente comandos (palavras reservadas)  Não pode repetir, ou seja, possuir mesmo nome de outra variável já utilizada;
  • 13.
    Variáveis  Exemplos:  caracter[30] nome, sobrenome;  inteiro idade;  real salario;  logico tem_filhos;
  • 14.
    Constantes  Valorfixo;  Se mantém inalterado independente das variáveis envolvidas na operação a ser realizada;  Ex: PI = 3.14159265
  • 15.
    Operadores Aritméticos Ferramentas responsáveis pelo estabelecimento das operações matemáticas a serem realizadas em um computador:  Ex: +, -, *, /,←,↑
  • 16.
    Expressões  Expressõescombinam variáveis, operadores e constantes para produzir um resultado;  Variáveis representam posições na memória onde estão dados que serão processados;  Constantes são símbolos usados para representar dados;  Operadores são usados para combinar as variáveis e constantes fornecendo um valor como resposta;
  • 17.
    Expressões  Exemplosde expressões  0.5 * base * altura  (nota1 + nota2)/2.0  (temperatura > 0) e (quantidade < limite)  4 % 3 + 5  A > B
  • 18.
    Expressões  Observaros símbolos usados para multiplicação (*) e divisão (/);  Avaliar primeiro as operações de maior prioridade, por exemplo (multiplicação e divisão);  Se temos de escolher entre operadores de mesma prioridade, então deve-se escolher o que está mais à esquerda:  Ex: 4/2*3 – primeiro divide-se 4 por 2 e em seguida multiplica-se o resultado por 3, dando como resultado 6;  Caso queira trocar a prioridade, use parênteses:  Não são permitidos outros símbolos para esta função, tais como {} e [];
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
    Exemplo de Algoritmo  ALGORITMO MEDIA_FINAL;  INTEIRO NOTA1, NOTA2, NOTA3, NOTA4, MEDIA;  CARACTERE[35] NOME;  INICIO  LER (NOME);  LER (NOTA1, NOTA2, NOTA3, NOTA4);  MEDIA := (NOTA1 + NOTA2 + NOTA3 + NOTA4) / 4;  ESCREVER (NOME, MEDIA);  FIM.
  • 36.
    Exemplo de Algoritmo  Segue um Algoritmo que lê o raio de uma circunferência e calcula sua área:  ALGORITMO AREA_CIRCUNFERENCIA;  CONST PI = 3.1416;  VAR RAIO, AREA : REAL;  INICIO  LER (RAIO); //PROCESSAMENTO  AREA := PI * SQR(RAIO); //ENTRADA  ESCREVER (“AREA =“, AREA); //SAÍDA  FIM.
  • 37.
  • 38.
    Algoritmo  Resposta  Algoritmo Soma_Numeros  inteiro a,b,x;  Inicio  Ler(A);  Ler(B);  x ← a + b;  Escrever(x);  Fim.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
    Programação  Próximaaula:  Conhecendo mais da linguagem C#  Seqüências de Escape  Adição de referências  Substituições na Leitura  Operadores Aritméticos, Relacionais e Lógicos  Estruturas de Controle (if/else, switch)