Buscar

Introdução à Computação e Algoritmos

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos - Introdução
Os computadores podem ser usados de forma eficiente na solução de certos tipos de problemas. Os problemas que suportam tratamento por computador, em geral, envolvem grandes quantidades de dados ou são problemas de natureza complexa, exigindo a execução de um grande número de passos para alcançar a solução. 
Processamento de dados é qualquer atividade que se utilize de informações ou dados básicos e efetue transformações para obter novas informações ou dados como resultado.
Um computador digital é uma máquina capaz de solucionar problemas através da execução de instruções que lhe são fornecidas. 
A tarefa executada pelos computadores é apenas parte do processo de solução de um problema.
Entrada
Processamento
Saída
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos - Introdução
Etapas na solução de problemas
Entendimento do problema;
Criação de uma sequência de operações (ou ações) que, quando executadas, produzem a solução para o problema;
Execução da sequência de operações.
Propriedades dos Algoritmos
Instruções simples e não ambíguas
Sequência lógica de instruções
Sequência finita de passos
ex: Receita de Bolo, Manual de instruções.
Define-se algoritmo como um conjunto de ações que devem ser executadas para se obter a solução de determinado problema.
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos
Programação - Sequência de planejamento, projeto, implementação e testes.
Arte - Existem várias formas de solucionar um problema
Ciência - Devemos seguir um conjunto de regras, utilizar lógica e alguns métodos rigorosos de programação que irão garantir a eficiência, economia e a utilidade dos programas gerados.
DICA: Evite “queimar” etapas. Identifique o problema, produza uma solução em forma de algoritmos e em seguida transforme-a para formato de um programa de computador.
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos
Exemplo: Instruções de uso de um televisor
Algoritmo
|	Ligue o aparelho
|	Selecione o canal
|	Regule o volume
fim algoritmo	
Um algoritmo pode ser mais ou menos detalhista. Por exemplo, a instrução “Ligue o aparelho” pode ser detalhada em:
|	Ligue o aparelho na tomada
|	Aperte o botão LIGA	
O detalhamento das instruções de um algoritmo é chamado de refinamento. Um algoritmo é mais ou menos refinado de acordo com o grau de detalhes das suas instruções.
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos
Exemplo: Refinando o algoritmo de uso de um televisor.
Algoritmo
|		{Ligar o aparelho}
|	Ligue o aparelho na tomada
|	Aperte o botão LIGA
|		{Seleção do canal}
|	se não estiver no canal desejado
|	|	então aperte o botão de seleção de canal
|	fim se
|		{Regulagem o volume}
|	se o volume estiver baixo
|	|	então aperte o botão de aumento de volume
|	fim se
|	se o volume estiver alto
|	|	então aperte o botão de baixar o volume
|	fim se
fim algoritmo	
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos
Para que um algoritmo possa ser diretamente traduzido para uma linguagem de programação, deve ser o mais refinado possível. Por exemplo, não devem existir instruções do tipo:
|	Escreva a soma de dois números lidos no teclado	
E sim:
|	Leia o número X
|	Leia o número Y
|	Escreva X+Y	
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos
Exemplo resolvido:
Faça um algoritmo para mostrar os números pares de 1 a L. O número L deverá ser digitado pelo usuário.
Algoritmo
|	Leia o número L
|	Mostre os números pares menores que L
fim algoritmo	
Refinando o algoritmo:
Algoritmo
|	Leia o número L
|	Para X de 1 até L faça
|	|	se X é par então
|	|	|	escreva X
|	|	fim se
|	fim para
fim algoritmo	
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos
Tradução/Compilação - Técnica de se traduzir todas as instruções em linguagem de programação de alto nível para instruções em linguagem de máquina. Em seguida o programa é executado. Nesta técnica todo o programa é inicialmente traduzido para depois ser executado.
Interpretação - Técnica que examina e traduz instrução por instrução à medida que o programa é executado. Através desta técnica o programa é traduzido a medida que é executado, ou seja, o programa é traduzido em tempo de execução.
Código Fonte - Programa escrito em linguagem de programação de alto nível.
Código Objeto - Programa traduzido para linguagem de máquina
Código Executável - Código objeto após substituir as funções especiais pelas suas rotinas específicas.
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos
Um programa de computador nada mais é que a codificação de um algoritmo numa linguagem de programação. 
Linguagens como C, Pascal, BASIC, ALGOL, Clipper, COBOL, etc., são chamadas de procedurais, devido ao fato das instruções serem executadas de forma seqüencial.
As linguagens baseadas no conceito de eventos como C++, Visual BASIC, Visual Objects, Power Builder, Delphi utilizam outra estratégia de programação (Programação Orientada a Objetos/Eventos).
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos - Tipos primitivos de Dados
Constantes
São informações que não sofrem variações no decorrer do tempo. Utilizamos as aspas para diferenciar o tipo de dados caracter de outros tipos: numérico ou lógico. 
	Ex: 4, “José da Silva”, 0,153, Falso.
Variáveis
São as informações que podem ser alteradas em algum instante no decorrer do tempo. São guardadas em posições determinadas da memória, em locais semelhantes a gavetas. Uma variável só pode conter um dado por vez. Ex: 
X=15, X=23 -> neste caso o conteúdo 15 é perdido
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos - Tipos primitivos de Dados
Tipos de variáveis
Inteiro X=2, A=10, Soma=1532
Real Y=1.2325 , PI=3.1415, Totvenda=54432.17
Caracter Nome=”José da Silva”, A=”10”, B=”20”, C=A+B (o resultado fica “1020”)
Lógico Fim=F, Achou=V
Operações/Notação - Operadores Aritméticos 
 ( , ) Separador de expressões
 ^ Elevado a
 *,/ Multiplicação, Divisão
 +, - Soma, Subtração
ex: X= (A+B+3*Z^2)/(3*A+2*C)
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos - Operadores
Operadores Relacionais
 Igual 		=
 Maior que 		>
 Menor que 	<
 Maior ou Igual 	>=
 Menor ou igual	<=
 Diferente		<>
Operadores Lógicos
E - Obriga que todas as proposições sejam verdadeiras
OU - Não Obriga que todas as proposições sejam verdadeiras, pelo menos uma deve ser verdadeira.
NÃO - Complemento da proposição
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos - Comandos Básicos
Atribuição
X = 5
X = X + 1 ( primeiro efetua a soma e depois guarda o resultado em X)
Entrada/Saída de dados
Leia (nome)
Leia (A,Y,Salario)
Escreva (X)
Escreva (nome,salario)
Escreva (“Você pesa ”, x*2, “ quilos”)
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos - Estruturas de Seleção
Simples:		
Se <condição>	 Ex: Se chover no Sábado 	
 Comando;		 Irei ao cinema
 Com vários comandos:
Se <condição>	Ex: Se chover no Sábado
 Inicio			Início
 Comando1;			irei ao cinema;
 Comando2;			comprarei roupas;
 Comando3;			irei ao shopping;
 Fim;			Fim;
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos - Estruturas de Seleção
Estruturas de Seleção Composta
			Ex:
Se <condição>		 Se chover no Sábado 
 Comando1			Irei ao cinema
Senão 			Senão
 Comando2; 			Irei à praia;
 
Obs: condição é uma comparação entre uma variável e uma constante ou entre variáveis. Ex: a>10, x=b. Ou composta: a=b e b<c, sexo=”F” ou idade<50. Uma condição sempre resultará em V ou F.
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos - Estruturas de Repetição
Enquanto <condição>		Enquanto A < 5
	Início			 Início
	 Comando1;
Escreva (A);
	 Comando2;		 A = A + 1;	
 Fim;			 Fim;
 Repita			Repita
 		Comando1;		 Escreva (A);
		Comando2;		 A = A + 1;			
	Até <condição>		Até A = 5
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos
Estruturas Estruturas de Repetição
					Ex:
	Para V de vi até Vf passo p	 Para X de 1 até 10 passo 1 
	 Comando;			Escreva (X);
Vetores
Componentes homogêneos, ou seja, do mesmo tipo.
Estrutura de acesso aleatório. Pode-se acessar qualquer posição do vetor.
Ex: Inteiro x[10]; /*este exemplo declara um vetor de Inteiros de 10 		 posições*/
Vetor de inteiros com 10 posições
Plan1
		
Plan1
		Pos 0		Pos 1		Pos 2		Pos 3		Pos 4		Pos 5		Pos 6		Pos 7		Pos 8		Pos 9
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos
Acessando posições de um vetor
Basta indicar a posição que se deseja acessar. 
Ex: y = x[1] /* Retorna o valor contido na segunda posição do vetor. */
Matrizes
Os elementos são estruturados
É uma variável do tipo vetor cujos componentes são, por sua vez, novos vetores.
Ex: inteiro x[5][5]; / * Este exemplo declara uma matriz 5x5.*/
	 /*Significa que este vetor possui 5 linhas e que 	cada linha possui 5 colunas.*/	
Para acessar uma posição da matriz basta usar y = x[1][1]
Posição 0,0 do vetor
Plan1
				0		1		2		3		4
		0
		1
		2
		3
		4
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos
Estrutura de um algoritmo 
	inicio
 inteiro n1,n2,a,b;
 real x,y,salario;
 caracter nome,sexo;
 leia (nome,salário,sexo,x,n1);
 enquanto x < y faça
 inicio
 comandos .... 
 fim;
 escreva (salário, ........);
fim.
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos - exercícios
Crie um algoritmo que solicite dois números inteiros ao usuário e escreva o somatório destes dois números.
Ex: 
 Início
inteiro numero1, numero2,resultado;
leia (“Digite o primeiro número:”,numero1);
leia (“Digite o segundo número:”,numero2);
resultado = numero1 + numero2;
Escreva (“O somatório dos números é: ”,resultado );
 Fim
	
Lista de exercícios
*
*
*
Introdução à Computação
Reydeval Rocha
Algoritmos - exercícios
Crie um algoritmo que solicite 4 notas ao usuário, calcule a média do usuário e escreva “APROVADO” se a média é maior ou igual a 7 e “REPROVADO” se a média é menor que 7.
Faça um algoritmo que solicite o nome do usuário e escreva este nome de trás para frente.

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Continue navegando