INSTITUTO FEDERAL DE EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO,
CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE GRANDE DO NORTE
Algoritmos e Técnicas de
Programação
Programação
ÉDocente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com
eberton.marinho@ifrn.edu.br
Curso de Tecnologia em Sistemas para Internet
S
UMÁRIO| Breve histórico do C++ | Características
Introdução à C++ e aos
conceitos iniciais de
conceitos iniciais de
programação
H
ISTÓRICO| A Linguagem C++ foi desenvolvida inicialmente
por Bjarne Stroustrup na AT&T, de 1979 a 1983, à partir da linguagem C tendo como idéia
à partir da linguagem C, tendo como idéia
principal a de agregar o conceito de classes, de orientação à objetos, àquela linguagem. Razão ç j , q g g porque iniciamente chamava-se de “C com
C
ARACTERÍSTICAS| Derivada da linguagem de programação C | Suporta abstrações de dados
| Suporta Programação Orientada a Objetos | Suporta programação genérica
| STL (Standard Library) é uma parte do padrão
C++, e consiste em uma biblioteca de funções e t t d d d t d il d C++ estruturas de dados que todo compilador C++ deve oferecer
Provê as implementações mais comuns em um
y Provê as implementações mais comuns em um
programa, e pode-se utilizá-la com diferentes tipos de dados. p
P
ROGRAMAÇÃOE
STRUTURADA| Programação estruturada orienta os
programadores para a criação de estruturas
simples em seus programas usando subrotinas e simples em seus programas, usando subrotinas e as funções.
| Funções ou subrotinas são conjuntos de | Funções ou subrotinas são conjuntos de
instruções com um propósito específico, que permite o acesso ao mesmo através de uma interface bem definida
| Apesar de ter sido sucedida pela programação
orientada por objetos, pode-se dizer que a programação estruturada ainda é muito
influente uma vez que grande parte das pessoas influente, uma vez que grande parte das pessoas ainda aprendem programação através dela.
P
ROGRAMAÇÃOE
STRUTURADA| Para a resolução de problemas relativamente
mais
i l di t ã t t d é
| simples e diretos a programação estruturada é
muito eficiente.
| Linguagens ainda extremamente relevantes nos | Linguagens ainda extremamente relevantes nos
dias de hoje,
| como Cobol PHP e Perl ainda utilizam o | como Cobol, PHP e Perl ainda utilizam o
paradigma estruturado
| (muito embora possuam suporte para a | (muito embora possuam suporte para a
E
STRUTURA TÍPICA DE UM PROGRAMA EMC++
P
RIMEIRO PROGRAMA EMC++
// U i i C// Um primeiro programa em C++
#include <iostream> // Inclui bibliotecas
int main() // Função principal chamada pelo sistema
{ // Início do bloco de comandos {
// Escreve na saída padrão o texto entre aspas
std::cout << "Bem Vindos a Linguagem C++!\n“;
// Termina a execução do programa sem erros
return 0;
C
OMENTÁRIOS| Utilizamos comentários para documentar um
programa e ajudar outras pessoas a entender o código
código
| Comentários são ignorados pelo compilador e não
tem qualquer efeito sobre o programa tem qualquer efeito sobre o programa
| // Indica que o resto do código da linha é um | // - Indica que o resto do código da linha é um
comentário
| /* texto */ - Indica que o texto entre ‘/*’ e ‘*/’ é
11
| / texto / Indica que o texto entre / e / é
um comentário. Com esta representação, o texto,
e consequentemente o comentário pode ocupar 11 várias linhas
C
ABEÇALHOo
Pode incluir diretivas de processamento
como include, using, define, etc.
o
#include nome biblioteca: indica quais
oc ude o e_b b oteca: d ca
qua s
bibliotecas serão utilizadas no programa
#include <iostream>: permite que o
o
#include <iostream>: permite que o
programa possa utilizar as funções de
entrada e saída de dados (input e output
entrada e saída de dados (input e output
stream)
P
RIMEIRO PROGRAMA EMC++
| Todo programa que se deseja executar deve ter a
declaração da função main(). É a partir da função main() que o programa começa sua execução
main() que o programa começa sua execução
| Abre e fecha chave ({ }) indicam o bloco de
execução da função main Determinam quando execução da função main. Determinam quando começa e quando termina a função main
P
RIMEIRO PROGRAMA EMC++
| O comando “std::cout” envia as informações
passada pelo operador “<<” a saída padrão. No caso de nosso primeiro programa o conjunto de caso de nosso primeiro programa, o conjunto de caracteres "Bem Vindos a Linguagem C++!\n" será exibido na tela
| Cada comando é terminado com um ponto e
P
RIMEIRO PROGRAMA EMC++
| Para o comando std::cout << "Bem Vindos a
Linguagem C++!\n";
y O conjunto de caracteres é delimitado por aspas (“ ”) y O conjunto de caracteres é delimitado por aspas ( )
y A sequência “\n” é um caractere de escape que funciona
como uma quebra de linha para o programa
| Todas as instruções são separadas por “;”
| O código “return 0;” dentro do main encerra o programa
sem erros sem erros
C
OMPILAR UM CÓDIGO EMC++
| No prompt de comando (shell) digite
y g++ -g -Wall -o nome_arquivo_exe nome_arquivo_cpp
Onde Onde
y -Wall: ativa todas as mensagens de advertência
(warnings)
y - o: indica ao compilador qual o nome do programa final
y Exemplo
P
RIMEIRO PROGRAMA EMC++
| Nosso programa gerará no prompt de comando do
Linux (shell) a saída:
B Vi d Li C++!
D
ECLARAÇÃO DE VARIÁVEIS | Declaração simples y <tipo_dado> <nome_variavel>; E l i t y Exemplo: int a; D l ã últi l | Declaração múltiplay <tipo_dado> <nome_variavel1>, <nome_variavel2>,
... , <nome variaveln>; ... , <nome_variaveln>;
y Exemplo: double a, b, c;
| Declação com inicialização
y <tipo_dado> <nome_variavel> = <valor>;p ; y Exemplo: char c = ‘A’;
C
ONVENÇÕES PARA DEFINIÇÃO DEÇ Ç VARIÁVEIS| Deve iniciar com uma letra seguida de letras,
números e sublinhado
C++ dif i iú l d i ú l
C
ONVENÇÕES PARA DEFINIÇÃO DEÇ Ç VARIÁVEIS| Exemplo y int valor;
i t l 1 l 2 l
y int valor1, valor2, ... , valorn; y int valor = 2;
y int n123 343; y int n123_343;
T
IPO INTEIRO(
INT)
| Exemplos
int valor;
int valor1, valor2;
T
IPO PONTO FLUTUANTE(
DOUBLE)
| Exemplos
float f; f = 5.65;
T
IPOC
ARACTERE(
CHAR)
| Qualquer elemento de um conjunto de caracteres
predefinidos no alfabeto
I t t t é d
| Internamente o caractere é armazenado como um
número
| Exemplos y char ch; y char ch;
y char ch1, ch2, ... , chn; y char ch = ‘A’;char ch A ;
T
IPO BOOLEANO(
BOOL)
| Variáveis deste tipo assumem os valores
verdadeiro (true) ou falso (false)
| Exemplos b l b y bool b; y bool b1, b2, ... , bn; y bool b = true; y bool b = true; y bool b = false;
C
ONSTANTES| Constantes podem ser declaradas utilizando a
palavra reservada const
| Declaração
t ti d d i l l
y const <tipo_dado> <nome_variavel> = <valor>;
Ti d C t t
| Tipos de Constantes y Constantes inteiras y Constantes caracteres y Constantes caracteres
y Constantes de ponto flutuante y Constantes de cadeiaConstantes de cadeia
E
XEMPLOS DE CONSTANTES| Constante inteira y 123456
| Constante ponto flutuante
82 347 63 47e 4 1 25E7 61 e+4
E
XEMPLOS DE CONSTANTES| Constantes Caracteres y ‘a’ ‘b’ ‘C’
E
XEMPLOS DE CONSTANTES| Constante de cadeia
E
NTRADA DE DADOS| Para pegar informações do usuário utiliza-se o
std::cin juntamente com o operador >>
| Exemplo
td i i l
y std::cin >> variavel;
PROGRAMA EM
C++
// U i i C
// Um primeiro programa em C++
#include <iostream> // Inclui bibliotecas
int main() // Função principal chamada pelo sistema {
int numero; int numero;
// Escreve na saída padrão o texto entre aspas std::cout << “Digite um valor\n“;
// P i f ã di it d l á i t ib i iá l ú
// Pega a informação digitada pelo usuário e atribui a variável número std::cin >> numero;
// Escreve na saída padrão o número digitado
std::cout << “O número digitado foi: ” << numero << “\n“; // Termina a execução do programa sem erros
return 0; // indica o fim do programa return 0; // indica o fim do programa }
O
PERADORES | Operadores Unitários y & * ++ --O d bi á i | Operadores binários y + - * / O d t á i | Operadores ternáriosO
PERADORES DE INCREMENTO E DECREMENTOE
XERCÍCIO| Qual é o resultado das expressões abaixo? | 6 + 2 * 3 – 4 / 2
| 5 * 5 + 5 / 6 – 2 + 1
O
PERADOR SIZEOF| Retorna o tamanho em bytes de um tido de dado
ou variável
| Exemplo
i f h
C
ONVERSÕES DE TIPOSC l d i d
| C++ converte um valor de um tipo em outro quando:
y Se atribui um valor de um tipo aritmético a uma
variável de outro tipo aritméticop
y Se comina tipos misturados em expressões y Se passam argumentos a funções
C
ONVERSÕES DE TIPOS | Conversões implícitas y Exemplo i t 3 int n = 3; pi = 0.1415 + n;C
ONVERSÕES DE TIPOS| Conversões explícitas y Exemplo
D
ÚVIDAS| e-mail:
ebertonsm@gmail.com
eberton.marinho@ifrn.edu.br
| Endereço eletrônico da disciplina:
| http://docente.ifrn.edu.br/ebertonmarinho
49 49