Algoritmos e Técnicas de Programação · Programação Docente: Éberton da Silva Marinho e-mail:...
Transcript of Algoritmos e Técnicas de Programação · Programação Docente: Éberton da Silva Marinho e-mail:...
INSTITUTO FEDERAL DE EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO
GRANDE DO NORTEGRANDE DO NORTE
Algoritmos e Técnicas de ProgramaçãoProgramação
ÉDocente: Éberton da Silva Marinhoe-mail: [email protected]
Curso de Tecnologia em Sistemas para Internet
09/07/2013
SUMÁRIO
Breve histórico do C++CaracterísticasIntrodução a Linguagem de Programação C++
Introdução à C++ e aos conceitos iniciais de conceitos iniciais de programação
HISTÓ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 gporque iniciamente chamava-se de “C com classes”.
CARACTERÍSTICAS
Derivada da linguagem de programação CSuporta abstrações de dadosSuporta Programação Orientada a ObjetosSuporta programação genéricaSTL (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 oferecerProvê as implementações mais comuns em um Provê as implementações mais comuns em um programa, e pode-se utilizá-la com diferentes tipos de dados. p
PROGRAMAÇÃO ESTRUTURADA
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 definidaApesar 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.
PROGRAMAÇÃO ESTRUTURADA
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 orientação à objetos).
CONSTRUÇÃO DE UM PROGRAMA EM C++
ESTRUTURA TÍPICA DE UM PROGRAMA EMC++
PRIMEIRO PROGRAMA EM C++// 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 aspasstd::cout << "Bem Vindos a Linguagem C++!\n“;
// Termina a execução do programa sem erros return 0;
} // Fim do bloco de comandos
COMENTÁRIOS
Utilizamos comentários para documentar um programa e ajudar outras pessoas a entender o códigocódigoComentários são ignorados pelo compilador e não tem qualquer efeito sobre o programatem 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 11várias linhas
CABEÇALHO
o Pode incluir diretivas de processamento como include, using, define, etc.
o #include nome biblioteca: indica quais o c 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)
PRIMEIRO PROGRAMA EM C++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çãomain() que o programa começa sua execuçãoAbre 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
PRIMEIRO PROGRAMA EM C++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 telaCada comando é terminado com um ponto e vírgula ( ; )
PRIMEIRO PROGRAMA EM C++Para o comando std::cout << "Bem Vindos a Linguagem C++!\n";
O conjunto de caracteres é delimitado por aspas (“ ”)O conjunto de caracteres é delimitado por aspas ( )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 errossem erros
COMPILAR UM CÓDIGO EM C++No prompt de comando (shell) digite
g++ -g -Wall -o nome_arquivo_exe nome_arquivo_cppOndeOnde
-Wall: ativa todas as mensagens de advertência (warnings)- o: indica ao compilador qual o nome do programa final
Exemplog++ -g -Wall -o prog01 prog01.cpp
PRIMEIRO PROGRAMA EM C++Nosso programa gerará no prompt de comando do Linux (shell) a saída:
B Vi d Li C++!Bem Vindos a Linguagem C++!
COMPILAR UM CÓDIGO EM C++
TIPOS DE DADOS EM C++
DECLARAÇÃO DE VARIÁVEIS
Declaração simples<tipo_dado> <nome_variavel>;E l i t Exemplo: int a;
D l ã últi lDeclaração múltipla<tipo_dado> <nome_variavel1>, <nome_variavel2>, ... , <nome variaveln>;... , <nome_variaveln>;Exemplo: double a, b, c;
Declação com inicialização<tipo_dado> <nome_variavel> = <valor>;p ;Exemplo: char c = ‘A’;
CONVENÇÕES PARA DEFINIÇÃO DEÇ ÇVARIÁVEIS
Deve iniciar com uma letra seguida de letras, números e sublinhadoC++ dif i iú l d i ú lC++ diferencia maiúscula de minúscula
CONVENÇÕES PARA DEFINIÇÃO DEÇ ÇVARIÁVEIS
Exemploint valor;i t l 1 l 2 lint valor1, valor2, ... , valorn;int valor = 2;int n123 343;int n123_343;
PALAVRAS RESERVADAS
TIPO INTEIRO (INT)
Exemplosint valor;int valor1, valor2;int valor1 = 10, valor2 = 9;
TIPO PONTO FLUTUANTE (DOUBLE)
Exemplosfloat f;f = 5.65;double h = 0;
TIPO CARACTERE (CHAR)Qualquer elemento de um conjunto de caracteres predefinidos no alfabetoI t t t é d Internamente o caractere é armazenado como um número
Exemploschar ch;char ch;char ch1, ch2, ... , chn;char ch = ‘A’;char ch A ;char ch = ‘a’;
TIPO BOOLEANO (BOOL)Variáveis deste tipo assumem os valores verdadeiro (true) ou falso (false)
Exemplosb l bbool b;bool b1, b2, ... , bn;bool b = true;bool b = true;bool b = false;
CONSTANTES
Constantes podem ser declaradas utilizando a palavra reservada const
Declaraçãot ti d d i l lconst <tipo_dado> <nome_variavel> = <valor>;
Ti d C t tTipos de ConstantesConstantes inteirasConstantes caracteresConstantes caracteresConstantes de ponto flutuanteConstantes de cadeiaConstantes de cadeia
EXEMPLOS DE CONSTANTES
Constante inteira123456
Constante ponto flutuante82 347 63 47e 4 1 25E7 61 e+482. 347 .63 47e-4 1.25E7 61.e+4
EXEMPLOS DE CONSTANTES
Constantes Caracteres‘a’ ‘b’ ‘C’
EXEMPLOS DE CONSTANTES
Constante de cadeia“ABC” “America” “ABcdEf\nGHiJ\n”
ENTRADA DE DADOS
Para pegar informações do usuário utiliza-se o std::cin juntamente com o operador >>
Exemplotd i i lstd::cin >> variavel;
std::cin >> variavel1 >> variavel2;
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 aspasstd::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úmerostd::cin >> numero;// Escreve na saída padrão o número digitadostd::cout << “O número digitado foi: ” << numero << “\n“;// Termina a execução do programa sem errosreturn 0; // indica o fim do programareturn 0; // indica o fim do programa
}
EXPRESSÕES
OPERADORES
Operadores Unitários& * ++ --
O d bi á iOperadores binários+ - * /
O d t á iOperadores ternários( condição ? comando1 : comando2 )
OPERADORES
OPERADOR DE ATRIBUIÇÃO
OPERADORES DE INCREMENTO EDECREMENTO
OPERADORES ARITMÉTICOS
EXERCÍCIO
Qual é o resultado das expressões abaixo?
6 + 2 * 3 – 4 / 2
5 * 5 + 5 / 6 – 2 + 1
7 * 10 – 5 % 3 * 4 + 9
OPERADORES RELACIONAIS
OPERADORES LÓGICOS
OPERADORES LÓGICOS
EXERCÍCIOS
OPERADOR SIZEOF
Retorna o tamanho em bytes de um tido de dado ou variável
Exemploi f hsizeof char
CONVERSÕES DE TIPOS
C l d i dC++ converte um valor de um tipo em outro quando:Se atribui um valor de um tipo aritmético a uma variável de outro tipo aritméticopSe comina tipos misturados em expressõesSe passam argumentos a funções
CONVERSÕES DE TIPOS
Conversões implícitasExemploi t 3int n = 3;pi = 0.1415 + n;
CONVERSÕES DE TIPOS
Conversões explícitasExemplo
Exemplo
DÚVIDAS
e-mail:[email protected]@ifrn.edu.br
Endereço eletrônico da disciplina: http://docente.ifrn.edu.br/ebertonmarinho
4949