Resumo – Notas de Aula Um algoritmo é uma sequência finita de instruções ou passos bem definidos e não ambíguos, cada uma dos quais pode ser executada mecanicamente num período de tempo finito. Algoritmo não é a solução do problema, pois, se assim fosse, cada problema teria apenas um único algoritmo. Assim, o algoritmo é o caminho para a solução do problema, e em geral, os caminhos que levam a uma solução são muitos. Pode-se citar como exemplo de algoritmos no nosso cotidiano a troca de um pneu, fazer um bolo, sair para o trabalho, etc. Uma vez construído o algoritmo, o próximo passo é convertê-lo para uma linguagem de programação escolhida. Variável Uma variável é um local na memória principal. O conteúdo de uma variável pode ser de vários tipos: inteiro, real, caractere, lógico entre outros. Uma vez definidos o nome e o tipo de uma variável, não se pode alterá-los no decorrer do algoritmo. Entretanto, o conteúdo da variável é um objeto de constante modificação no decorrer do programa. Para declarar uma variável, utiliza-se o comando: tipo da variável nome da variável ; Os tipos que serão utilizados são: inteiro (int), real (float) e caractere (char). Quando for dar o nome as variáveis, se faz necessário seguir algumas regras: 1. O primeiro caractere é uma letra; 2. Se houver mais de um caractere, só pode usar letras ou algarismos; 3. Nomes de variáveis escritas com letras maiúsculas serão diferentes de letras minúsculas. media é diferente de Media; 4. Nenhuma palavra reservada poderá ser nome de uma variável. Tipos de variáveis Numéricas Int Os números inteiros são aqueles que não possuem componentes decimais ou fracionários, podendo ser positivos ou negativos. Float Os números reais são aqueles que podem possuir componentes decimais ou fracionários, podendo também ser positivos ou negativos. Char Também conhecida como caractere, alfanumérica ou literal. Esse tipo de variável armazena dados que contêm letras, dígitos e/ou símbolos especiais. Expressões O conceito de expressão em termos computacionais está intimamente ligado ao conceito de expressão (ou fórmula) matemática, onde um conjunto de variáveis e constantes numéricas relaciona-se por meio de operadores compondo uma fórmula que resulta num valor. Expressões Aritméticas São aquelas cujo resultado da avaliação é do tipo numérico, seja ela inteiro ou real. Soma: Na matemática representada pelo sinal + e, em expressões em termos computacionais, pelo mesmo sinal. Subtração: Na matemática, representada pelo sinal – e, em expressões em termos computacionais, pelo mesmo sinal. Multiplicação: Na matemática, representada pelos sinais x ou . e, em expressões em termos computacionais, pelo sinal *. Divisão: Na matemática, representada pelo sinal ÷ e, em expressões computacionais, pelo sinal /. Resto: É utilizado em expressões em termos computacionais quando se deseja encontrar o resto da divisão de dois números inteiros. Representado pelo sinal %. Expressões Relacionais É uma comparação realizada entre dois valores de mesmo tipo básico. Estes valores são representados na relação através de constantes, variáveis ou expressões aritméticas. Como exemplos de operadores relacionais matematicamente conhecidos, tem-se: Operador Matemática Usaremos Igual = == Diferente ≠ != Maior > > Menor < < Maior ou igual a ≥ >= Menor ou igual a ≤ <= Expressões Lógicas ou Booleanas Expressão lógica é a expressão cujos operadores são lógicos e cujos operandos são relações, constantes e/ou variáveis do tipo lógico. Como exemplo de operadores lógicos, matematicamente conhecidos, tem-se: Operador Matemática Usaremos Conjunção E && Disjunção OU || Negação Não ! Tabela verdade do operador E: V V V V F F F V F F F F V V V V F V F V V F F F Tabela verdade do operador OU: Tabela verdade do operador Não: V F F V Funções C++ possui diversas funções pré-definidas. Essas funções podem ser utilizadas com a inserção da biblioteca específica no corpo do código. Dentre as funções existentes, podemos destacar as funções matemáticas (presentes na biblioteca cmath ou math.h): cos(x) Cosseno de x sin(x) Seno de x tan(x) Tangente de x sqrt(x) Raiz quadrada de x pow(x,y) Potência de x por y (x é a base e y o expoente) log(x) Logaritmo natural de x log10(x) Logaritmo de x na base 10 Hierarquia das operações Hierarquia Primeiro Parênteses e funções Segundo Resto, Multiplicação e divisão Terceiro Adição e subtração Quarto Operadores relacionais Quinto Operadores lógicos Sexto Atribuições Atribuição É a principal forma de se armazenar um dado em uma variável. Esse comando permite que seja fornecido um valor a uma variável, onde o tipo desse valor tem de ser compatível com a variável. Identificador = expressão ; Identificador: é o nome da variável à qual está sendo atribuído um valor; = : símbolo de atribuição; Expressão: pode ser uma expressão aritmética, uma expressão lógica ou literal cuja avaliação (resultado) é atribuída ao identificador (variável); ; : finaliza o comando. Operadores de incremento e decremento Os operadores ++ e -- são operadores de incremento e decremento, respectivamente. Eles são usados para realizar operações de adição e subtração e são similares à atribuição para variáveis inteiras. x++ é equivalente a x <- x+1 y-- é equivalente a y <- y-1 Comando de Saída É o comando responsável por enviar um resultado, uma informação ao usuário. cout << expressão, variável, constante ou texto ; Se a exibição na tela for um texto, sempre inserir o texto entre aspas duplas. Para saltar uma linha na exibição do resultado na tela, utiliza-se o comando \n (junto com texto dentro das aspas duplas) ou o comando endl. Comando de Entrada É o comando que permite que o usuário digite dados. cin >> nome de uma variável ; Comentários Para inserir comentários no código, utiliza-se o símbolo // e na frente o comentário. O comentário deve ser escrito na mesma linha, não podendo haver quebra de linhas. Comentários não são exibidos para o usuário.