Você está na página 1de 9

07/09/2023

• Unidade de Ensino: 01

Competência da Unidade: Fundamentos de algoritmos e das


Algoritmos e

linguagens de programação.

Técnicas de • Resumo: Saber utilizar algoritmos e linguagens de programação.

Programação • Palavras-chave: Algoritmos, Técnicas de Programação;


Linguagem; Desenvolvimento; Elementos.
Fundamentos de algoritmos e das linguagens
de programação • Título da Teleaula: Fundamentos de algoritmos e das linguagens
de programação.

Prof. Me. Wesley Viana • Teleaula nº: 01

1 2

Contextualização
• Introdução aos algoritmos;

• Conceitos Básicos de Linguagem de Programação; Introdução aos


• Componentes e elementos de Linguagem de Programação.
algoritmos

3 4

Introdução aos algoritmos Introdução aos algoritmos


• Algoritmo é uma sequência finita de passos que podem levar à Para melhor entendimento dos algoritmos, é necessário
criação e execução de uma determinada tarefa com a intenção de dividi-los em três partes: entrada, processamento e saída.
resolver uma problemática (FORBELLONE; EBERSPÄCHER, 2005).

• Entrada: dados de entrada do algoritmo, no caso do algoritmo


• A programação estruturada estabelece uma disciplina de para cozimento do arroz, seriam os insumos (ingredientes)
desenvolvimento de algoritmos que facilita a compreensão de necessários para o preparo do arroz.
programas através do número restrito de mecanismos de controle
• Processamento: são os procedimentos necessários para chegar
da execução de programas.
ao resultado final (o cozimento do arroz).
• Saída: resultado que o algoritmo quer chegar após o
processamento dos dados de entrada, finalização do arroz (momento
que será servido).

5 6
07/09/2023

Introdução aos algoritmos Introdução aos algoritmos


• Linguagem natural; • Linguagem natural;

Fazer um bolo:
Segundo Santos (2001), a linguagem natural é uma forma
de comunicação entre as pessoas de diversas línguas, ela pode ser 1. Lê a receita do bolo

falada, escrita, gesticulada entre outras formas de comunicação. 2. Pega todos os ingredientes
3. Mistura os ingredientes
4. Faz o recheio do bolo
5. Unta a forma com manteiga ou óleo
6. Despeja a mistura na forma
7. Despeja o recheio do bolo sobre a mistura
8. Leva a forma ao forno
9. Conta o tempo para o bolo ficar pronto
10. Retira do forno
11. Deixa esfriar.

7 8

Introdução aos algoritmos Introdução aos algoritmos


• Linguagem natural; • Diagrama de blocos (fluxograma);
Nota aluno:
1. Início.
Segundo Manzano, Franco e Villar (2015), podemos
2. Entrar com o primeiro valor (nota do primeiro bimestre).
caracterizar diagrama de blocos como um conjunto de símbolos
3. Entrar com o segundo valor (nota do segundo bimestre).
gráficos, em que cada um desses símbolos representa ações
4. Realizar a soma do primeiro valor com o segundo.
especificas a serem executadas pelo computador.
5. Realizar a divisão da soma dos valores por dois
(média das notas dos bimestres).
6. Armazenar o valor encontrado.
7. Mostrar na tela o resultado da média.
8. Se a média do aluno for maior ou igual a seis.
9. O aluno será considerado aprovado.
10. Senão está reprovado.
11. Fim.

9 10

Introdução aos algoritmos Introdução aos algoritmos


• Diagrama de blocos (fluxograma); • Diagrama de blocos (fluxograma);

11 12
07/09/2023

Introdução aos algoritmos Introdução aos algoritmos


• Diagrama de blocos (fluxograma); • Pseudocódigo;

Algumas dicas para construir


Segundo Aguilar (2011), o pseudocódigo é considerado uma
um diagrama de blocos:
ferramenta que pode auxiliar a programação, ela pode ser escrita em
1. Estar atento aos níveis. palavras similares ao inglês ou ao português para facilitar a
interpretação e o desenvolvimento de um programa.
2. O diagrama de blocos deve
começar de cima para baixo e
da esquerda para direita.

3. Ficar atento para não


cruzar as linhas,
principalmente as linhas de
fluxos de dados.

13 14

Introdução aos algoritmos Introdução aos algoritmos


• Pseudocódigo; • Pseudocódigo;
1. calculo_media; 11. escreva(“A media do aluno e:”; 1. algoritmo "media" 11.Escreval("A media do aluno e:", media)
2. var media); 2. var 12.se media >=6 entao

3. real: valor1, valor2, soma, media; 12. se (media >=6) 3. valor1, valor2, soma, media: real 13.escreval ("Aluno Aprovado média = ",
13. então escreva(“Aluno 4. inicio media)
4. Início
Aprovado”); 5. Escreval("Digite o valor da nota 1: 14.senao
5. escreva (“Digite o valor 1”);
14. senão escreva(“Aluno ") 15.escreval ("Aluno Reprovado média = ",
6. leia valor1; 6. Leia (valor1) media)
Reprovado”);
7. escreva (“Digite valor 2”); 7. Escreval("Digite o valor da nota 2: 16.fimse
15. Fim se;
8. leia valor2; ") 17.fimalgoritmo
16. Fim.
9. soma ¬ valor1 + valor2; 8. Leia (valor2)
9. soma <- (valor1 + valor2)
10. media ¬ soma/2;
10. media <- (soma / 2 )

15 16

Introdução aos algoritmos


Algumas alternativas e inovações que podem ser criadas a partir de
algoritmos:

• Algoritmos para tomada de decisão


• Canal de empregabilidade Conceitos Básicos de
• Analise financeira
• Algoritmos voltados para a medicina
Linguagens de
Programação

17 18
07/09/2023

Conceitos Básicos de Linguagens de Programação Conceitos Básicos de Linguagens de Programação

Resumo da história das linguagens de programação.


• Conceitos de linguagem de programação;

Segundo Marçula (2013 p. 170), A linguagem de programação (LP)


pode ser entendida como um conjunto de palavras (vocabulário) e um
conjunto de regras gramaticais (para relacionar essas palavras) usados para
instruir o sistema de computação a realizar tarefas específicas e, com isso,
criar os programas. Cada linguagem tem o seu conjunto de palavras-chave e
sintaxes.

19 20

Conceitos Básicos de Linguagens de Programação Conceitos Básicos de Linguagens de Programação


Linguagem de máquina: pode ser escrita dentro de um editor Programação imperativa: mais antigo, pode armazenar o
hexadecimal, tal linguagem é baseada no sistema binário, segundo Monteiro programa e suas variáveis juntamente, as atribuições, as sequências, os
(2010), uma instrução de máquina é considerada conjunto de bits (0s e 1s), laços, os comandos condicionais e a manipulação de exceções são seus
ou seja, um programa em linguagem de máquina é uma ampla sequência de componentes de programação. Exemplo: COBOL, Fortran, C, Ada e Perl.
algarismos binários.

Programação orientada a objeto: conhecida como (POO), é


Linguagem Assembly: Segundo Tucker (2010), podemos dizer considerado uma coleção de objetos que se inter-relacionam, facilitando
que essa linguagem é uma forma mais viável de conseguir ler a linguagem assim a programação. São exemplos: vSmalltalk, C++, Java e C#.
de máquina, lembrando que é uma linguagem voltada para máquina, ou
seja, trabalha diretamente nas memórias e registros do computador, elas
são executadas diretamente pelo processador.

21 22

Conceitos Básicos de Linguagens de Programação Conceitos Básicos de Linguagens de Programação


Programação funcional: caraterizada por possuir atuação Segundo Manzano (2015), os algoritmos criados por você deverão
matemática, cada uma com um espaço de entrada (domínio) e resultado ser convertidos em linguagens de alto nível, como, por exemplo: a
(faixa). Exemplos de programação funcional: Lisp, Scheme, Haskell e ML. linguagem Java, Pascal, C, C++ entre outras conceituadas nesta seção.
Existem três métodos para gerar um código executável:

Programação lógica: considerada uma programação declarativa,


na qual um programa pode modelar uma situação-problema declarando qual 1- Compiladores: é gerado um código executável sem a necessidade de
resultado o programa deve obter, em vez de como ele deve ser obtido. interpretar comando por comando.
Podemos citar como exemplo de programação lógica o Prolog. • Análise léxica
• Análise sintática
• Verificação de tipos
• Otimização de código
• Geração de código
Exemplo de linguagens que utilizam compiladores: Algol, C, C++,
C#, Pascal, etc.

23 24
07/09/2023

Conceitos Básicos de Linguagens de Programação Conceitos Básicos de Linguagens de Programação


2- Interpretadores: lê uma instrução do código fonte, transforma em 3- Tradutores: são gerados códigos intermediários, os quais não exigem
código binário e executa, repete esse processo até que todas as instruções tanto espaço de memórias quanto realizado pelo código fonte.
do código fonte sejam executadas. O código é interpretado e executado em Sua vantagem é ter independência da arquitetura que realizará a
tempo real, sem a geração de código executável. execução final, porém necessita de um interpretador específico para sua
Uma das grandes vantagens desse método são as correções e geração. Exemplo de linguagem que utiliza tradutores: java.
alterações que podem ser realizadas rapidamente, proporcionando assim,
um baixo consumo de memória.
Algumas categorias de profissionais voltado para área de programação:
Podemos dizer que a desvantagem está no fato de interpretar
comando por comando deixando assim, a execução mais lenta.
• Programador Desktop
• Programador Web
Exemplos de linguagens que utiliza interpretadores: HTML, Javascript,
Python, Basic, PHP, etc. • Programador Mobile
• Programador de Jogos

25 26

Onde podemos utilizar Exercício: Vamos criar


as vantagens da um programa em C que
linguagem de soma a idade de duas
programação no nosso pessoas e imprime na
tela o resultado
dia a dia?

27 28

Procura letras e posição

Vamos criar um programa 1. #include<stdio.h>


em C que soma a idade de duas 2. main(){
pessoas e imprime na tela o 3. int idade1=0; Componentes e
resultado. Veja que, primeiramente,
as idades são solicitadas e
armazenadas em duas variáveis, por
4. int idade2=0;
5. int resultado=0; elementos de Linguagem
fim, a exibição do resultado na tela.
6. printf(“Digite a primeira idade: “);
7. scanf(“%d”,&idade1);
de Programação
8. printf(“Digite a segunda idade: “);
9. scanf(“%d”,&idade2);
10. resultado = idade1 + idade2;
11. printf(“Resultado = %d”,resultado);
12. }

29 30
07/09/2023

Componentes e elementos de Linguagem de Componentes e elementos de Linguagem de


Programação Programação
No contexto geral ficaria assim:
Segundo Damas (2016), um programa é uma sequência de código
organizada de tal forma que permita resolver um determinado problema. 1. Início do programa.
Um programa pode ser desenvolvido em módulos distintos e/ou em Início
2. Definição das variáveis e de possíveis
subprogramas. variáveis;
atribuições.
3. Instrução de leitura dos dados. comando1;
Segundo Joyanes (2011), as sintaxes (instrução) deverão ser comando2;
4. Instrução do formato de escrita.
escritas e armazenada na memória do computador na mesma ordem que se
5. Demais instruções e funções. comandoN;
espera ser executada, ou seja, ela pode ser linear (executada
sequencialmente) e não linear (executada de forma a serem redirecionadas, 6. Fim do programa. Fim.
isto é, uma instrução de bifurcação).

31 32

Componentes e elementos de Linguagem de Componentes e elementos de Linguagem de


Programação Programação
Vale lembrar que, em algoritmos, a forma de escrever (maiúsculas e
minúsculas) não acarretará em erros. Porém, em linguagem de programação Quando iniciamos um programa na linguagem de programação C,
C, é preciso diferenciar as palavras em letras maiúsculas e minúsculas. segundo Manzano, Franco e Villar (2015), as primeiras linhas de
Estrutura de um algoritmo e da linguagem C: programação são definidas pelas bibliotecas, também conhecidas como
arquivos de cabeçalho.
Veja alguns exemplos de biblioteca em linguagem de programação C:

- stdio – essa biblioteca é responsável pelas funções de entradas e saídas,


como é o caso da função printf e scanf.
Exemplo: #include <stdio.h>
- stdlib – essa biblioteca transforma as strings (vetores de caracteres) em
números.
Exemplo: #include <stdlib.h>

33 34

Componentes e elementos de Linguagem de Componentes e elementos de Linguagem de


Programação Programação
Para cada tipo de aplicação dentro do programa, será necessário
inserir bibliotecas que interpretam as variáveis e os resultados que poderão Quando usamos a int antes de main () significa que retornará um
surgir. número do tipo inteiro.
Após a definição das bibliotecas, o programa é inicializado pela
função (main). Veja o seguinte exemplo:
int main ()
{}
main()
{}
Também pode ser utilizada a função void, esta é uma função sem
retorno, ou seja, não recebe nenhum argumento.
Quando utilizamos a “{“ (chave aberta) indica o início de uma
função em C e quando usamos a “}” (chave fechada) indica o término das
void main ( )
funções e do programa, porém, elas podem indicar o início e o término de
alguns contextos na programação. {
}

35 36
07/09/2023

Componentes e elementos de Linguagem de Componentes e elementos de Linguagem de


Programação Programação
As constantes são consideradas modificadores de tipo de acesso,
Os tipos de variáveis mais usadas são: ou seja, não podem ser alteradas, elas podem ser representadas pelo
comando “const”.
Exemplo:
Inteiro: armazena os números inteiros (negativos ou positivos). Em
linguagem C é definida por “int”, em algoritmos é definida por “inteiro”. const int fixo=500;

Real: permite armazenar valores de pontos flutuantes e com frações. Em As constantes também podem ser caracterizadas por qualquer tipo
linguagem C é definido por “float” e, quando precisa do dobro de dados de dados básicos, por exemplo: as constantes do tipo texto são envolvidas
numéricos, é utilizado o tipo “double” ou “long double”. por aspas simples (‘) ou aspas duplas, as aspas simples representam um
único caractere, por exemplo ‘a’ ou ‘100’ e as aspas duplas caracterizam um
conjunto de caracteres, por exemplo “A conversão da temperatura de graus
Caractere: caracteriza os caracteres, números e símbolos especiais. São centígrados para graus Fahrenheit”.
delimitadas por aspas simples (‘). Em linguagem C é definida por “char”. Em
As constantes inteiras são represen tadas por números inteiros
algoritmo é utilizado a palavra “caractere”
negativos ou positivos, exemplo: -30 e 30 são constantes inteiras (int).

37 38

Componentes e elementos de Linguagem de Componentes e elementos de Linguagem de


Programação Programação
Vamos iniciar pelos operadores aritméticos que são representados Operador Unário
por binários e unários.

Segundo Mizrahi (2008), o operador unário também pode ser usado para
Operadores Binários representar a troca de sinais de uma determinada variável, por exemplo:
a= -5;
+ soma a= -a;
- subtração
* multiplicação Após essa operação o valor de “a” assume o valor de 5 positivo.
/ divisão
% resto de divisão

39 40

Componentes e elementos de Linguagem de Componentes e elementos de Linguagem de


Programação Programação
Quando você deve usar os operadores de incremento e
decremento?

Quando você precisar adicionar um “1” à variável, você fará uso do


“++” (incremento) e quando quiser tirar um “1” da variável você utiliza
“- -“ (decremento), essas operações são caracterizadas unárias. Veja os
exemplos abaixo:

a = a + 1; utilizando incremento ficaria desta maneira: ++a


a = a - 1; utilizando o decremento ficaria desta maneira: - -a

41 42
07/09/2023

Componentes e elementos de Linguagem de Componentes e elementos de Linguagem de


Programação Programação
Existem algumas formatações na utilização da função printf()

43 44

Componentes e elementos de Linguagem de Componentes e elementos de Linguagem de


Programação Programação
Código de formatação para função scanf():
A função scanf() é um comando de entrada, isto é, são informações
que possibilitam a entrada de dados pelo teclado, assim, a informação será
armazenada em um determinado espaço da memória, como o nome e tipo
específico da variável. A sintaxe é definida por uma expressão de controle
(sempre entre aspas duplas) e pela lista de argumento.

A sintaxe da função scanf() é definida por: scanf(“expressão de


controle”, lista de argumentos);

45 46

Componentes e elementos de Linguagem de Componentes e elementos de Linguagem de


Programação Programação
1. #include <stdio.h> 12. printf("Informe seu telefone: ");
2. #include <stdlib.h> 13. gets(telefone); 1. #include<stdio.h>
3. #include <conio.h> 14. printf("\n\nNome: %s\n\n",nome); 2. int main() {
4. #include <math.h> 15. printf("Endereco: %s\n\n",endereco); 3. float salario_min, salario_pessoa, qtd_sal_min;
5. int main() 16. printf("Telefone: %s\n\n",telefone); 4. printf ("Informe o valor do salario minimo e \n R$ ");
6. { 17. system("PAUSE"); 5. scanf("%f",&salario_min);
7. char nome[30], endereco[30], 18. return 0; 6. printf("Informe o valor do salario recebido pela pessoa \n R$ ");
telefone[15]; 20. } 7. scanf("%f",&salario_pessoa);
8. printf("Informe seu nome: "); 8. qtd_sal_min=(salario_pessoa/salario_min);
9. gets(nome); 9. printf("Uma pessoa que recebe um salario de R$ %.2f reais recebe %.1f
10. printf("Informe seu endereco: "); salarios minimos \n", salario_pessoa,qtd_sal_min);
11. gets(endereco); 10. return 0;
11. }

47 48
07/09/2023

Componentes e Qual a importância de


elementos de linguagem
saber utilizar bibliotecas
de programação
e funções em
programação?

49 50

Recapitulando
• Introdução aos algoritmos;

• Conceitos Básicos de Linguagem de Programação;

Recapitulando • Componentes e elementos de Linguagem de Programação.

51 52

Você também pode gostar