INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Algoritmos e Técnicas de Programação Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@ifrn.edu.br Curso de Tecnologia em Sistemas para Internet 09/07/2013
SUMÁRIO Breve histórico do C++ Características Introdução a Linguagem de Programação C++
Introdução à C++ e aos 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 principal a de agregar o conceito de classes, de orientação à objetos, àquela linguagem. g Razão porque iniciamente chamava-se de C com classes.
CARACTERÍ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 estruturas t de dados d que todo compilador C++ deve oferecer Provê as implementações mais comuns em um programa, e pode-se utilizá-la com diferentes tipos de dados.
PROGRAMAÇÃO ESTRUTURADA Programação estruturada orienta os programadores para a criação de estruturas simples em seus programas, usando subrotinas e as funções. 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 ainda aprendem programação através dela.
PROGRAMAÇÃO ESTRUTURADA Para a resolução de problemas relativamente mais simples e diretos a programação estruturada t é muito eficiente. Linguagens ainda extremamente relevantes nos dias de hoje, como Cobol, PHP e Perl ainda utilizam o paradigma estruturado (muito embora possuam suporte para a orientação à objetos).
CONSTRUÇÃO DE UM PROGRAMA EM C++
ESTRUTURA TÍPICA DE UM PROGRAMA EM C++
PRIMEIRO PROGRAMA EM C++ // Um primeiro i 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; } // Fim do bloco de comandos
COMENTÁRIOS Utilizamos comentários para documentar um programa e ajudar outras pessoas a entender o código Comentários são ignorados pelo compilador e não tem qualquer efeito sobre o programa // - Indica que o resto do código da linha é um comentário /* texto */ - Indica que o texto entre /* e */ é um comentário. Com esta representação, o texto, e consequentemente o comentário pode ocupar várias linhas 11
CABEÇALHO o Pode incluir diretivas de processamento como include, using, define, etc. o #include cude nome e_biblioteca: b indica quais bibliotecas serão utilizadas no programa o #include <iostream>: permite que o programa possa utilizar as funções de 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ção Abre e fecha chave ({ }) indicam o bloco de 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 caracteres "Bem Vindos a Linguagem C++!\n" será exibido na tela Cada 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 ( ) 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
COMPILAR UM CÓDIGO EM C++ No prompt de comando (shell) digite g++ -g -Wall -o nome_arquivo_exe nome_arquivo_cpp Onde -Wall: ativa todas as mensagens de advertência (warnings) - o: indica ao compilador qual o nome do programa final Exemplo g++ -g -Wall -o prog01 prog01.cpp
PRIMEIRO PROGRAMA EM C++ Nosso programa gerará no prompt de comando do Linux (shell) a saída: 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>; Exemplo: int a; Declaração múltipla l <tipo_dado> <nome_variavel1>, <nome_variavel2>,..., <nome_variaveln>; Exemplo: double a, b, c; Declação com inicialização <tipo_dado> <nome_variavel> = <valor>; Exemplo: char c = A ;
CONVENÇÕES PARA DEFINIÇÃO DE VARIÁVEIS Deve iniciar com uma letra seguida de letras, números e sublinhado C++ diferencia i maiúscula de minúscula
CONVENÇÕES PARA DEFINIÇÃO DE VARIÁVEIS Exemplo int valor; int valor1, valor2,..., valorn; int valor = 2; int n123_343; 343;
PALAVRAS RESERVADAS
TIPO INTEIRO (INT) Exemplos int valor; int valor1, valor2; int valor1 = 10, valor2 = 9;
TIPO PONTO FLUTUANTE (DOUBLE) Exemplos float f; f = 5.65; double h = 0;
TIPO CARACTERE (CHAR) Qualquer elemento de um conjunto de caracteres predefinidos no alfabeto Internamente t o caractere é armazenado como um número Exemplos char ch; char ch1, ch2,..., chn; char ch = A ; char ch = a ;
TIPO BOOLEANO (BOOL) Variáveis deste tipo assumem os valores verdadeiro (true) ou falso (false) Exemplos bool b; bool b1, b2,..., bn; bool b = true; bool b = false;
CONSTANTES Constantes podem ser declaradas utilizando a palavra reservada const Declaração const <tipo_dado> d <nome_variavel> = <valor>; Tipos de Constantes t Constantes inteiras Constantes caracteres Constantes de ponto flutuante Constantes de cadeia
EXEMPLOS DE CONSTANTES Constante inteira 123456 Constante ponto flutuante 82. 347.63 47e-4 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 >> Exemplo std::cin >> variavel; std::cin >> variavel1 >> variavel2;
PROGRAMA EM C++ // Um primeiro i programa em C++ #include <iostream> // Inclui bibliotecas int main() // Função principal chamada pelo sistema { int numero; // Escreve na saída padrão o texto entre aspas std::cout << Digite um valor\n ; // Pega a informação digitada it d pelo usuário e atribui i 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 }
EXPRESSÕES
OPERADORES Operadores Unitários & * ++ -- Operadores binários i + - * / Operadores ternários ( condição? comando1 : comando2 )
OPERADORES
OPERADOR DE ATRIBUIÇÃO
OPERADORES DE INCREMENTO E DECREMENTO
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 Exemplo sizeof char
CONVERSÕES DE TIPOS C++ 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ético Se comina tipos misturados em expressões Se passam argumentos a funções
CONVERSÕES DE TIPOS Conversões implícitas Exemplo int n = 3; pi = 0.1415 + n;
CONVERSÕES DE TIPOS Conversões explícitas Exemplo 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