Você está na página 1de 46

Algoritmos e Técnicas de

Programação

Profa. Drª. Luciene Chagas de Oliveira


luciene.oliveira@uniube.br
“Feliz aquele que transfere o que sabe e aprende o que ensina”.
CORA CORALINA
Agenda
 Lógica de Programação

 Linguagem de Programação C

 Exercícios

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 2


Lógica de Programação

UNIUBE Profa. Drª. Luciene Chagas de Oliveira


3
Lógica de Programação
 Lógica
 estuda o raciocínio
 Lógica de Programação
 técnica de encadear pensamentos
 realizar uma determinada tarefa.

 O entendimento da lógica é importante para


pessoas que desejam trabalhar com o
desenvolvimento de software (sistemas).

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 4


Lógica de Programação
 Instruções
 Na linguagem comum
 conjunto de regras definidas
 Exemplo:
 Para fazermos uma omelete de batatas precisamos de
colocar em prática uma série de instruções: descascar as
batatas, bater os ovos, fritar as batatas, etc.
 Devemos executar estas instruções em uma determinada
ordem e colocar todas as instruções na ordem correta.
 Na informática
 comandos que o computador deve executar

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 5


Lógica de Programação
 Algoritmos
 sequência de instruções para a execução
passo a passo de um processo.
 sequência lógica que leva a solução de um
problema

SOLUÇÃO EM
PROBLEMA SOLUÇÃO EM LINGUAGEM DE
ALGORITMO PROGRAMAÇÃO

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 6


Lógica de Programação
 Algoritmos
 Para resolver problemas devemos pensar em:

1. Pensar no problema (analisar o problema)


2. Planejar o programa, ou seja, escrever um
algoritmo
3. Escrever um programa de computador
4. Testar o programa

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 7


Lógica de Programação
 Exemplo simples de algoritmo:
 Comer um chocolate
 1. Pegar o chocolate
 2. Retirar o papel
 3. Comer o chocolate
 4. Jogar o papel no lixo

 Outros exemplos
 Receitas de cozinha, manuais de instalação de
aparelhos eletrônicos

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 8


Lógica de Programação
 Algoritmos
 Regras para construção de algoritmos:
1. Utilize somente um verbo por frase
2. Utilize frases curtas e simples
3. Seja objetivo
4. Procurar usar palavras sem duplo sentido (um
algoritmo não pode ser ambíguo)
5. Um algoritmo deve ser finito.

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 9


Lógica de Programação
 Exemplo 2 de algoritmo: soma de dois
números na calculadora
 1. Informar o primeiro número
 2. Apertar o sinal de soma (+)

 3. Informar o segundo número

 4. Apertar o sinal de igual (=)

 5. Somar os dois números

 6. Mostrar o resultado da soma.

Observação importante: para obter um resultado, deve


ser colocado em prática o conjunto de TODAS as
instruções e na ORDEM correta.

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 10


Lógica de Programação
 Programa
 algoritmo escrito em uma linguagem de
programação

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 11


Lógica de Programação
 Programador ou desenvolvedor
 é a pessoa que escreve os programas no
computador

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 12


Lógica de Programação
 Linguagem de Programação
 linguagem que fornece comandos para os
computadores permitindo a construção de
programas.
 Exemplos:
 C
 C++
 Java
 VB.NET
 C#.NET
 etc.

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 13


Lógica de Programação
 Linguagem de Programação
 Linguagens de programação mais
utilizadas no mundo:

 https://www.tiobe.com/tiobe-index/

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 14


Lógica de Programação
 Para facilitar a construção de um
algoritmo/programa, um problema
pode ser dividido em 3 partes:
 Entrada: dados que o usuário digita
 Processamento: cálculos e operações
 Saída: resultados ou dados de saída que serão
mostrados para o usuário

ENTRADA PROCESSAMENTO SAÍDA

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 15


Lógica de Programação
 Constantes
 valor fixo que não é alterado durante a
execução do programa
 Exemplo: PI = 3.1415

 Variáveis
 valor pode ser alterado durante a
execução do programa
 Exemplo: a variável idade cujo valor é

16.
UNIUBE Profa. Drª. Luciene Chagas de Oliveira 16
Lógica de Programação
 Regra para nomes de variáveis e
constantes
 Não é permitido espaço em brancos ou
caracteres especiais (@,#,$,%, etc)
 Caracteres utilizados: números, letras
maiúsculas, letras minúsculas e caracter
sublinhado.
 O primeiro caracter deve ser uma letra ou
sublinhado. Não pode começar com número.
 Exemplo: A, a, nota, X5, N1, dia, IDADE, nota_1

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 17


Lógica de Programação
 Atribuição
 É o processo de se dar um valor a uma variável
(atribuir)
 Exemplo:

valor

constante
variável
idade resultado de uma expressão

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 18


A Linguagem de Programação C

UNIUBE Profa. Drª. Luciene Chagas de Oliveira


19
A Linguagem de Programação C
 Ferramentas de Desenvolvimento
 DEV C++
 https://sourceforge.net/projects/orwelldevcpp/
 CodeBlocks
 http://www.codeblocks.org/downloads
 https://www.baixaki.com.br/download/code-blocks.htm
 Android (Celular) – App CppDroid C/C++
 https://play.google.com/store/apps/details?id=name.antonsmirnov.
android.cppdroid&hl=pt_BR
 Compilador online (onlinegdb):
 https://www.onlinegdb.com/online_c_compiler

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 20


A Linguagem de Programação C
 Ferramenta Online C Compiler
https://www.onlinegdb.com/online_c_compiler

UNIUBE 21
A Linguagem de Programação C
 Ferramenta DEV C++

UNIUBE 22
Entrada e Saída em C
 Estrutura de um programa C
#include <nome_da_biblioteca>
int main()
{
// bloco de comandos;
}

 Bibliotecas: são arquivos contendo funções que


podemos utilizar em nossos programas.

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 23


Entrada e Saída em C
 Exemplo de um programa C
#include <stdio.h>
int main()
{
printf(“Olá Pessoal!”);
}
 Observação importante: na linguagem C, as
letras maiúsculas são diferentes das letras
minúsculas (case sensitive)
UNIUBE Profa. Drª. Luciene Chagas de Oliveira 24
A ferramenta Online C Compiler
 OnlineGDB C Compiler
 ferramenta online para construir e testar os
programas na linguagem de programação C
 Primeiro Programa
1) Digite (acesse) o link no browser ou clique no
link:
https://www.onlinegdb.com/online_c_compiler

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 25


A ferramenta Online C Compiler
 OnlineGDB C Compiler
https://www.onlinegdb.com/online_c_compiler
 Um programa exemplo é mostrado na página

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 26


A ferramenta Online C Compiler
 OnlineGDB C Compiler
https://www.onlinegdb.com/online_c_compiler

2) Digite o programa a seguir:

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 27


A ferramenta Online C Compiler
 Resultado do Programa
 3) Clique no botão Run e veja o resultado
Clique no
botão Run

Resultado

UNIUBE 28
Programação em C
 Exemplo 2: Programa que soma 2 números

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 29


Programação em C - Resultado

UNIUBE 30
A ferramenta DEV C++
 DEV C++
 ferramenta para construir e testar os programas
na linguagem de programação C
 Primeiro Programa
1) Abra o DEV C++:

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 31


A ferramenta DEV C++
 DEV C++ - primeiro programa em C
2) Clique no menu File  New  Source File
Ou Arquivo  Novo  Arquivo fonte
3) Digite o programa a seguir:

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 32


A ferramenta DEV C++
 Resultado do Programa
 4) Clique no menu Execute  Compile & Run

UNIUBE 33
Programação em C
 Exemplo 2: Programa que soma 2 números

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 34


Programação em C - Resultado

UNIUBE 35
Entrada e Saída em C
 Declaração de variáveis em C
TIPO CARACTERÍSTICA FORMATO
int armazena números inteiros %d
float armazena números reais (3,4 x %f
10-38 a 3,4 x 1038)
double armazena números reais (1,7 x %lf
10-308 a 1,7 x 10308)
char armazena um caracter (letra) %c

 Exemplos:
 int idade;
 float nota1, nota2;
 double numero;
 char letra;
UNIUBE Profa. Drª. Luciene Chagas de Oliveira 36
Entrada e Saída em C
 Atribuição
 processo de se dar valor a uma variável
#include <stdio.h>
int main()
{
int idade;
double nota1;
char letra;
idade = 20;
nota1 = 6.5;
letra = ‘A‘;
} UNIUBE Profa. Drª. Luciene Chagas de Oliveira 37
Entrada e Saída em C
 Atribuição
 único caracter
 representado por aspas simples (‘)
 conjunto de caracter (string)
 representado por aspas dupla(“).
 A linguagem C não possui o tipo boolean (para
valores verdadeiro ou falso), pois considera 0
(zero) como falso e qualquer valor diferente de
zero como verdadeiro.

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 38


Entrada e Saída em C
 Atribuição de Strings
 Para armazenar um conjunto de caracteres
(string) deve-se utilizar:
char nome[30];
 Atribuição de strings:
 não funciona nome = “João”.
 Deve-se utilizar o comando strcpy e incluir a
biblioteca #include <string.h>
strcpy(nome, “João”)

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 39


Entrada e Saída em C
 Comandos de Entrada em C
 utilizado para receber dados digitados pelo
usuário.
cin >> x; // lê valores até digitar espaço
gets(nome); // lê string até digitar ENTER
scanf(“%d”, & nota) // lê valor até digitar ENTER

 para o scanf deve-se incluir o #include <stdio.h>


 para cin deve-se incluir o #include <iostream.h>
 para o gets deve-se incluir o #include <string.h>

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 40


Entrada e Saída em C
 Comandos de Saída em C
 utilizado para mostrar dados na tela

cout << x;
cout << “O conteúdo de X é” << x;

printf(“%d”, x);
printf(“Conteúdo de x e %d”, x);

 para o printf deve-se incluir o #include <stdio.h>


 para cout deve-se incluir o #include <iostream.h>

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 41


Entrada e Saída em C
 Comentários em C
 Comentários são textos que podem ser
inseridos em programas com o objetivo de
documentá-los.
 Comentário de Bloco
/*
Linhas de comentários
*/

 Comentário de Linha
// comentário de linha

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 42


Operadores Aritméticos #include <math.h>
OPERADOR EM C OPERAÇÃO EXEMPLO
+ Adição soma = x + y
- Subtração sub = x – y
* Multiplicação mult = x * y
/ Divisão div = x / y
pow Exponenciação exp = pow (x,y)
sqrt Raiz quadrada raiz = sqrt(x)
cbrt Raiz cubica raiz = cbrt(x)
floor Arredonda para baixo y = floor(x)
ceil Arredonda pra cima y = ceil(x)
log logaritmo natural y = log(x)
log10 logaritmo na base 10 y = log10(x)
log2 Logaritmo na base 2 y = log2(x)
fabs Valor absoluto (módulo) y = fabs(x)
sin Seno y = sin(x)
cos Cosseno y = cos(x)
tan Tangente y = tan(x)
acos Arco-coseno y = acos(x)
asin Arco-seno y = asin(x)
atan Arco-tangente y = atan(x)
fmax Maior valor entre x e y z = fmax(x,y)
fmin Menor valor entre x e y z = fmin(x,y)
hypot Hipotenusa, sqrt(x2 + y2) z = hypot(x,y)
M_PI Constante PI area = M_PI * pow(raio,2)
M_E Número de Euler x = M_E
UNIUBE Profa. Drª. Luciene Chagas de Oliveira 43
Exercícios – Resolver a Lista de URI
 Exercícios:
 1) Faça um programa C que receba três notas, calcule e mostre a média
aritmética entre elas.
Sabendo-se que: MEDIA_ARITMETICA = (NOTA1 + NOTA2 + NOTA3)

 2) Faça um programa C que calcule e mostre a área de um triângulo.


Sabendo-se que: Área = (base * altura) / 2

 3) Faça um programa C que receba o salário de um funcionário, calcule


e mostre o novo salário, sabendo-se que este sofreu um aumento de
25%.

 4) Elabore um programa C que solicite ao usuário as seguintes


informações de uma pessoa: nome, idade, sexo, peso, altura, profissão,
rua, bairro, cidade, estado, CEP, telefone. Mostre na tela: o nome, a
idade e o telefone.

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 44


Referências Bibliográficas
 Livros
 DEITEL, H. M.; DEITEL, P. J.
C Como Programar. Prentice
Hall, 2011.

 ASSCENCIO, A. F. & CAMPOS


E. A. Fundamentos da
programação de
computadores: Algoritmos,
Pascal, C/C++ e Java.
Pearson, 2007.

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 45


Algoritmos e Lógica de Programação

Obrigada,
Profª Luciene

UNIUBE Profa. Drª. Luciene Chagas de Oliveira 46