Escolar Documentos
Profissional Documentos
Cultura Documentos
Departamento de Computação
Universidade Federal de Ouro Preto
2023.1
1/32
1 Introdução à Programação em C++
2/32
Tópicos
3/32
Linguagem de Programação
Baixo nível
4/32
Linguagem de Programação
Baixo nível
4/32
Linguagem de Programação
Baixo nível
4/32
Linguagem Interpretada
O código fonte é executado pelo interpretador sem traduzir para a linguagem de baixo nível do
computador.
O próprio interpretador conhece o significado dos comandos, e produz o efeito esperado ao
executá-los.
Python
print('Soma de dois números')
n1 = int(input('Digite o primeiro número: ')) interpretador
n2 = int(input('Digite o segundo número: '))
soma = n1 + n2
print(f'A soma de {n1} e {n2} é {soma}')
5/32
Linguagem Interpretada
O código fonte é executado pelo interpretador sem traduzir para a linguagem de baixo nível do
computador.
O próprio interpretador conhece o significado dos comandos, e produz o efeito esperado ao
executá-los.
Python
print('Soma de dois números')
n1 = int(input('Digite o primeiro número: ')) interpretador
n2 = int(input('Digite o segundo número: '))
soma = n1 + n2
print(f'A soma de {n1} e {n2} é {soma}')
5/32
Linguagem Compilada
O código fonte é convertido para linguagem de máquina antes de ser executado pelo
processador.
C++
#include <iostream>
using namespace std;
int main() {
int n1, n2;
cout << "Soma de dois inteiros" << endl;
cout << "Digite o primeiro número: " << endl; Lingua-
cin >> n1; compilador gem de
cout << "Digite o segundo número: " << endl; máquina
cin >> n2;
int soma = n1 + n2;
cout << "A soma de " << n1 << " e " << n2
<< " é " << soma << endl;
return 0;
}
6/32
Linguagem C++
7/32
Algumas empresas que usam C++
8/32
Algoritmos
9/32
Programa em C++
10/32
Variáveis
Locais de armazenamento da informação gerada Exemplo: notas, soma, media, idade, etc
Os valores variam de acordo com o contexto e ocupam um espaço em memória.
Definição formal de variável: Objeto ou entidade situada na memória que representa um valor ou
uma expressão. Esta representação existe apenas em tempo de execução.
As variáveis são referenciadas por um nome ou identificador.
Um identificador deve iniciar por uma letra ou por um _ (sublinhado).
A partir do segundo caractere, pode ocorrer letras (ç e acentos não são válidos), números e
sublinhados.
Deve-se usar nomes significativos dentro do contexto do programa;
C++ é uma linguagem case-sensitive, ou seja, faz diferença entre nomes com letras maiúsculas e
nomes com letras minúsculas. Idade e idade são diferentes.
Exemplos: Idade, contador, taxaMatricula, aluno_1, valorMaximo
11/32
Declaração de Variável
12/32
Declaração de Variável (cont.)
13/32
Tipos de Dados
C++ é uma linguagem tipada estaticamente: os tipos de todas as variáveis são fixados quando
são declaradas em tempo de compilação.
Cada variável tem apenas um tipo de dado associado quando é declarada.
Alguns tipos: número inteiro, texto, caractere, número real, etc
Cada tipo define os valores que a variável pode armazenar e ocupa um tamanho de espaço em
memória.
14/32
Tipos de dados fundamentais
15/32
Tipos de dados fundamentais (cont.)
16/32
Tipos de dados fundamentais (cont.)
17/32
Tipos de dados fundamentais (cont.)
18/32
Operadores
adição + y + 5
subtração - g - 2
multiplicação * 3 * imposto
divisão / x / 3
resto da divisção % total % 2
19/32
Operadores (cont.)
O operador / calcula
o quociente da divisão inteira quando os operandos são ambos inteiros: 7/2 → 3
o quaociente da divisão francionária quando pelo menos algum dos operandos é real: 7.0/2 → 3.5
Para fazer a divisão fracionária de operandos inteiros é necessário uma conversão explícita para
real de pelo menos um dos operandos:
#include <iostream> 3
using namespace std; 3.5
3.5
int main() {
int num = 7;
int den = 2;
cout << a << endl << b << endl << c << endl;
}
20/32
Operadores (cont.)
21/32
Operadores (cont.)
x += 5; x = x + 5;
total -= 3 + x; total = toal - (3 + x);
alfa /= total * (2 + x); alfa = alfa / (total * (2 + x));
22/32
Operadores (cont.)
int a = 2 * (x++);
cout << "x:" << x << " a:" << a << endl;
int b = 2 * (++x);
cout << "x:" << x << " b:" << b << endl;
}
23/32
Biblioteca cmath
24/32
Saída de dados
Biblioteca iostream
Variável cout: representa o fluxo (stream) de saída padrão (tela)
Operador <<: operador de inserção
envia um dado para um fluxo de saída
operador binário infixo
operando da esquerda: fluxo de saída que vai receber o dado
operando da direita: dado a ser inserido no fluxo de saída
o dado pode ser uma constante, variável, texto, etc.
o resultado é o próprio fluxo de saída
Exemplos:
cout << valor;
cout << valor << endl;
25/32
Saída de dados (cont.)
26/32
Saída de dados (cont.)
#include <iostream>
num den res 2.5
5 2 2.5
using namespace std;
int main() {
int num{5};
int den{2};
double res{(double)num / den};
cout << res << endl;
return 0;
}
27/32
Entrada de dados
Biblioteca iostream
Variável cin: representa o fluxo (stream) de entrada padrão (teclado)
Operador >>: operador de extração
extrai um dado para um fluxo de entrada
operador binário infixo
operando da esquerda: fluxo de entrada de onde o dado será extraído
operando da direita: variável que receberá o valor extraído
o resultado é o próprio fluxo de entrada
Exemplo:
cin << variavel;
28/32
Entrada de dados (cont.)
#include <iostream>
num den res
16 3 5
using namespace std;
int main(){
int num, den;
cout << "Digite o numerador: ";
cin >> num;
cout << "Digite o denominador: ";
cin >> den;
int res = num / den;
cout << "Resultado = " << res << endl;
return 0;
}
Digite o numerador: 16
Digite o denominador: 3
Resultado = 5
29/32
Exemplo completo
Escreva um programa em C++ que recebe como entrada a quantidade de dias de um intervalo de
tempo, e o converta em semanas. A conversão deve considerar como resposta o número de
semanas completas, e o número de dias restantes.
Observe o exemplo de execução do programa:
30/32
Exemplo completo (cont.)
#include <iostream>
int main() {
cout << "Digite a quantidade de dias: ";
int dias;
cin >> dias;
return 0;
}
31/32
Fim.
32/32