Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Programação em C++, Notas de estudo de Automação

C++ Básico 2

Tipologia: Notas de estudo

Antes de 2010

Compartilhado em 10/11/2009

thiago-castro-1
thiago-castro-1 🇧🇷

3 documentos

1 / 25

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Programação de Computadores
Linguagem C / C++
Parte 2
Professor Responsável: Edson Pires da Silva
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19

Pré-visualização parcial do texto

Baixe Programação em C++ e outras Notas de estudo em PDF para Automação, somente na Docsity!

Programação de Computadores

Linguagem C / C++

Parte 2

Professor Responsável: Edson Pires da Silva

  • (^) Operador de atribuição A operação de atribuição é a operação mais simples do C. Consiste de atribuir valor de uma expressão a uma variável. Sintaxe: A sintaxe da operação de atribuição é a seguinte: identificador = expressão ; onde identificador é o nome de uma variável e expressão é uma expressão válida (ou outro identificador). Exemplo: A seguir são mostradas algumas atribuições válidas: a = 1; delta = b * b - 4. * a * c; i = j;
  • (^) Conversão de tipo Nestas conversões podem ocorrer alterações dos valores convertidos se o operando da esquerda for de um tipo que utilize menor numero de bytes que o operando da direita. Exemplo: Algumas atribuições com conversão de tipo e perda de informação: int i; float r = 654.321; i = r; // truncamento! Após a execução deste trecho de programa o valor da variável i será 654 pois seu valor foi truncado durante a conversão. Nota: Observe que o compilador C ao encontrar esta operação não gera nenhum aviso de atenção para o programador.
  • (^) Limites do intervalo do tipo de dado Também é importante observar que os tipos em C tem intervalos bem definidos e os resultados das operações devem respeitar estes intervalos. Se a uma variável for atribuído um valor que esteja fora dos seus limites então este valor será alterado. Exemplo: Observe as expressões abaixo, assuma que i seja uma variável do tipo int. i = 4999; // o valor de i e’ 4999 i = 4999 + 1; // o valor de i e’ 5000 i = 5000 + 30000; // o valor de i e’ - O valor de 35000 ultrapassou o limite superior do tipo int ( 32767 ). Nota: É importante observar que em C, a ultrapassagem do limite de um tipo não é interpretado como erro.
  • (^) Operadores Aritméticos Existem cinco operadores aritméticos em C. Cada operador aritméticos está relacionado ao uma operação aritmética elementar: adição, subtração, multiplicação e divisão. Existe ainda um operador ( % ) chamado operador de módulo cujo significado é o resto da divisão inteira. Os símbolos dos operadores aritméticos são: Operador Operação
  • adição.
  • subtração.
  • multiplicação / divisão % módulo (resto da divisão inteira)
  • (^) Operadores Aritméticos Sintaxe: A sintaxe de uma expressão aritmética é: operando operador operando onde operador é um dos caracteres mostrados acima e operando é uma constante ou um identificador de variável. Exemplo: Algumas expressões aritméticas: 1+2 a-4.0 b*c valor_1/taxa num% Não existe em C, como existe em outras linguagens, um operador específico para a operação de potenciação (ab). Existe, porém, uma função de biblioteca ( pow() ) que realiza esta operação. Embora as operações do C sejam semelhantes as operações aritméticas usuais da matemática, alguns detalhes são específicos da linguagem, e devem ser observados.
  • (^) Precedência de operadores Os operadores de multiplicação (*), divisão (/) e módulo (%) tem precedência sobre os operadores de adição (+) e subtração (-). Entre operadores de mesma precedência as operações são efetuadas da esquerda para a direita. Exemplo: Observe, nas expressões abaixo, o seu valor e a ordem das operações efetuadas: Expressão Valor Ordem 1 + 2 - 3 0 + - 24 - 3 * 5 9 * - 4 - 2 * 6 / 4 + 1 2 * / - + 6 / 2 + 11 % 3 * 4 11 / % * +
  • (^) Precedência de operadores A ordem de precedência dos operadores pode ser quebrada usando-se parênteses: ( ). Os parênteses são, na verdade, operadores de mais alta precedência e são executados primeiro. Parênteses internos são executados primeiro que parênteses externos. Exemplo: Observe, nas expressões abaixo, o seu valor e a ordem das operações efetuadas: Expressão Valor Ordem 1 + (2 - 3) 0 - + (24 - 3) * 5 105 - * (4 - 2 * 6) / 4 + 1 -1 * - / + 6 / ((2 + 11) % 3) * 4 24 + % / * Observe que os operadores e os operandos deste exemplo são os mesmos do exemplo anterior. Os valores, porém, são diferentes pois a ordem de execução das operações foi modificada pelo uso dos parênteses.
  • (^) Operadores de Atribuição Aritmética Exemplo: Observe as atribuições aritméticas abaixo e suas instruções equivalentes: Atribuição aritmética Instrução equivalente i += 1; i = i + 1; j -= val; j = j - val; num *= 1 + k; num = num * (1 + k); troco /= 10; troco = troco / 10; resto %= 2; resto = resto % 2; O operador de atribuição aritmética tem precedência menor que os outros operadores até aqui discutidos.
  • (^) Operadores Incrementais Em programação existem instruções muito comuns chamadas de incremento e decremento. Uma instrução de incremento adiciona uma unidade ao conteúdo de uma variável. Uma instrução de decremento subtrai uma unidade do conteúdo de uma variável. Existem, em C, operadores específicos para realizar as operações de incremento (++) e decremento (--). Eles são genericamente chamados de operadores incrementais. Sintaxe: A sintaxe dos operadores incrementais é a seguinte: Atribuição aritmética instrução equivalente ++ var var = var + 1 var ++ var = var + 1 -- var var = var - 1 var -- var = var - 1 onde var é o nome da variável da qual se quer incrementar ou decrementar um unidade.
  • (^) Operadores Incrementais Exemplo: Observe o fragmento de código abaixo e note o valor que as variáveis recebem após a execução da instrução: valor das variáveis int a, b, c, i = 3; a:? b:? c:? i: 3 a = i++; a: 3 b:? c:? i: 4 b = ++i; a: 3 b: 5 c:? i: 5 c = --i; a: 3 b: 5 c: 4 i: 4 Os operadores incrementais são bastante usados para o controle de laços de repetição. É importante que se conheça exatamente o efeito sutil da colocação do operador, pois isto pode enganar o programador inexperiente.
  • (^) Operadores Relacionais Operadores relacionais verificam a relação de magnitude e igualdade entre dois valores. São seis os operadores relacionais em C: Operador Significado > maior que < menor que

= maior ou igual a (não menor que) <= menor ou igual a (não maior que) == igual a != não igual a (diferente de) Sintaxe: A sintaxe das expressões lógicas é: expressão_1 operador expressão_ onde expressão_1 e expressão_2 são duas expressões numéricas quaisquer, e operador é um dos operadores relacionais.

  • (^) Operadores Relacionais Os operadores relacionais de igualdade (== e !=) tem precedência menor que os de magnitude (>, <, >= e <=). Estes, por sua vez, tem precedência menor que os operadores aritméticos. Operadores relacionais de mesma precedência são avaliados da esquerda para a direita. Exemplo: Observe as expressões lógicas abaixo e verifique o resultado de sua avaliação. Admita que m e n são variáveis tipo int com valores 4 e 1 , respectivamente. Expressão Valor Ordem de Operação m + n == 5 1 + == m != 2 * n > m 1 * > != 6 >= n < 3 - m 0 - >= < m == n <= m > m 0 <= > !=
  • (^) Operadores lógicos São três os operadores lógicos de C: &&, || e !. Estes operadores tem a mesma significação dos operadores lógicos Booleanos AND, OR e NOT. Sintaxe: A sintaxe de uso dos operadores lógicos: expr_1 && expr expr_1_ || expr_ ! expr onde expr_1 , expr_2 e expr são expressões quaisquer. Observe que os operadores lógicos atuam sobre expressões de quaisquer valores. Para estes operadores todo valor numérico diferente de 0 é considerado 1.