Baixe o app para aproveitar ainda mais
Prévia do material em texto
Algoritmos e Programação Introdução ao C++ Professor: Eduardo Campos dos Santos - eduardo.campos@prof.una.br http://edusantos.eti.br/una Comentários • Este arquivo foi criado para servir de apoio na aula expositiva. Não descarta a necessidade de consultar um bom livro. Além disso, carece de comentários a serem feitos oralmente em aula. É importante estar presente e participar nas aulas. E stude e discuta com os colegas. • Recomendo que vocês estudem pelo livro Treinamento em Linguagem C++ / Módulo 1 de Victorine Viviane Mizrahi. Mais comentários • Assume-se aqui que você já tem uma boa noção sobre programação em C++ adquirida nas aulas práticas já ministradas. • Muitos conceitos importantes NÃO serão tratados aqui. Fique atento às questões lançadas nos questionários sobre as aulas práticas. E stude também com atenção o conteúdo apresentado nos Roteiros de Laboratório. Por fim, esteja certo de conseguir explicar o significado de cada termo que aparece nos códigos estudados. Uma função em C/C++ tipo nomeFunção(declaração de parâmetros de entrada) { instrução_1; instrução_2; ...... instrução_n; return valor; // retorna valor do tipo da função } A função principal: main( ) int main( ) { // início do programa instrução_1; instrução_2; ...... instrução_n; return 0; // retorna valor do tipo inteiro } // fim do programa Uma função do programador float area_triangulo( int a, int b); // protótipo da função float area_triangulo( int a, int b) // declaração da função { // início da função float result; result = (a * b) / 2.0; return result; // retorna valor do tipo float } // fim da função Chamando uma função e recebendo o retorno desta int main( ) { // início do programa int base, altura; float resultado; cin >> base; cin >> altura; // chama a função area_triangulo resultado = area_triangulo(base, altura); cout << resultado << endl; return 0; // retorna zero ao sistema operacional } // fim do programa resultado é do tipo float e a função retorna um float O que você deve saber até aqui • Você deve compreender melhor agora para serve o comando return. “pause > NULL” cria um arquivo chamado NULL contendo a mensagem “Pressione qualquer tecla para continuar...” getch( ) é uma função declarada em conio.h. Esta função lê um caracter via teclado (inclusive ENTER e espaço). Três formas de se fazer pausa O que você deve saber até aqui • Você deve compreender melhor agora para serve o comando return. • Uso de system(“pause”) e de getch( ) para gerar a pausa e não deixar a janela se fechar. Constante Uma constante é uma variável estática. Ou seja, é uma variável que não varia :-P Há duas maneiras de se definir uma constante em C++. No modo tradicional da linguagem C, usando a diretiva define do pré-processador; ou usando o modificador const numa típica declaração de variável onde já se atribui um valor para a mesma. Por se tratar de uma constante, o compilador não permite que haja alguma instrução no decorrer do programa que altere o valor da mesma. Constante dielétrica no vácuo onde: q 1 e q 2 são os valores das cargas puntiformes; d é a distância entre as cargas e; k é a constante dielétrica do meio (no vácuo, k = 9 x 109) Força elétrica A força elétrica entre duas cargas puntiformes é dada pela fórmula: O que você deve saber até aqui • O comando return. • Uso de system( ) e de getch( ) • O conceito de constante e como uma constante pode ser declarada em C++. Estrutura sequencial c ← a + b c Início Fim a, b #include <iostream> using namespace std; int main( ) { int a, b, c; // Declaração das variáveis cin >> a; cin >> b; // Entrada de dados /* Os valores de entrada poderão ser separados por espaços ou ENTERs */ c = a + b; cout << c << endl; return 0; // main( ) é do tipo int , logo... } Estrutura condicional simples b < a VF aux ← a a ← b b ← aux a,b a, b início fim então nã o há se nã o Observe que este ponto não está condicionado ao resultado do teste lógico. #include <iostream> using namespace std; int main( ) { int a, b; // Declara as variáveis cin >> a; cin >> b; // Entrada if(b < a){ aux = a; a = b; b = aux; } cout << a << endl << b << endl; return 0; } Estrutura condicional composta c ← a / b “Div por zero”b = 0 ? Sim Não c Início Fim a, b então / then se nã o / e ls e #include <iostream> using namespace std; int main( ) { int a, b; // Declara as variáveis: a, b float c; // Declara a variável c cin >> a; cin >> b; // Entrada if(b == 0){ cout << “Div por zero” ; } else { c = a / b ; // Há um problema cout << c << endl; } return 0; } Divisão de inteiros sofre truncamento Agora... sem riscos de truncamento c ← a / b “Div por zero”b = 0 ? Sim Não c Início Fim a, b então / then se nã o / e ls e #include <iostream> using namespace std; int main( ) { int a, b; // Declara as variáveis: a, b float c; // Declara a variável c cin >> a; cin >> b; // Entrada if(b == 0){ cout << “Div por zero” ; } else { c = a / (float)b ; // ok agora cout << c << endl; } return 0; } O que você deve saber até aqui • O comando return. • O uso de system(“pause”) e de getch( ). • Como declarar uma constante em C++. • O cuidado necessário com divisões de inteiros. • Como construir estruturas condicionais simples ou compostas em C++. if sem uso de chaves #include <iostream> using namespace std; int main( ) { int a, b; // Declara as variáveis cin >> a; cin >> b; // Entrada if(b < a) aux = a; a = b; b = aux; cout << a << endl << b << endl; return 0; } b < a VF aux ← a a,b a, b início fim então nã o há se nã o a ← b b ← aux O que você deve saber até aqui • O comando return. • O uso de system(“pause”) e de getch( ). • Como declarar uma constante em C++. • O cuidado necessário com divisões de inteiros. • Como construir estruturas condicionais simples ou compostas em C++. • O que ocorre se não usamos chaves para delimitar o bloco de comandos referente a uma estrutura condicional. inserir esse trecho aqui Três formas difierentes de se fazer a mesma coisa. Basta inserir cada código à direita na linha 13 do código à esquerda. Explicando o operador ternário Volte ao slide anterior e veja se você compreende a lógica do código usando o operador ternário. O que você deve saber até aqui • O comando return. • O uso de system(“pause”) e de getch( ). • Como declarar uma constante em C++. • O cuidado necessário com divisões de inteiros. • Estruturas condicionais em C++. • Uso do if com e sem chaves para definir o bloco de comandos. • O operador ternário: cond ? valor_1 : valor_2 Exemplo: constrói tabela de conversão Fahrenheit-Celsius Exemplo: constrói tabela de conversão Fahrenheit-Celsius Slide 1 Slide 2 Slide 3 Slide 4 Slide 5 Slide 6 Slide 7 Slide 8 Slide 9 Slide 10 Slide 11 Slide 12 Slide 13 Slide 14 Slide 15 Slide 16 Slide 17 Slide 18 Slide 19 Slide 20 Slide 21 Slide 22 Slide 23 Slide 24 Slide 25 Slide 26 Slide 27 Slide 28 Slide 29 Slide 30
Compartilhar