Buscar

ILP Entrada e Saida Expressao Aritmetica Aula 2

Prévia do material em texto

INTRODUÇÃO A LINGUAGEM
DE PROGRAMAÇÃO
Prof.: Danilo Coimbra
(coimbra.danilo@ufba.br)
2018-1
Entrada e saída e expressões
aritméticas
1
Conceitos Básicos
 Algoritmo
 Sequência de instruções
 Programa
 Algoritmo em uma determinada linguagem de 
programação que será executado no computador
 O computador deverá ser capaz de executar o 
programa, sendo que este deverá parar em algum
instante
 Para que se tenha a realização da tarefa pretendida
2
Conceitos Básicos
 Portanto, é necessário que o algoritmo/programa
satisfaça as seguintes exigências:
 As instruções devem ser claras e não devem conter
ambiguidades
 Não pode haver dubiedade em relação a próxima
ação a ser realizada após a execução de uma
determinada instrução
 Todas as instruções devem ser executadas num tempo 
finito
3
Conceitos Básicos
 Linguagem de Programação
 Linguagens intermediárias entre linguagem de 
máquina e a linguagem que nós usamos 
Ex.: C++, C, Java, Pascal, Python, R,..
 Compilador
Programa que transforma um código, escrito em 
uma linguagem de programação, em um código 
de linguagem de máquina
4
Conceitos Básicos
 Lógica de Programação
 Raciocínio que visa o desenvolvimento de algoritmos
 Exemplo
 Problema: Uma pessoa pretende atravessar de barco para a 
outra margem do rio e tem a seguinte carga:
 Uma raposa
 Uma dúzia de galinhas
 Um saco de milho
 Observações:
 O barco comporta somente a pessoa e uma das cargas
 Não pode deixar sozinho a raposa e as galinhas, nem as galinhas e 
o milho
 Como fazer?
5
Conceitos Básicos
6
Conceitos Básicos
1. Atravesse as galinhas
2. Retorne sozinho
3. Atravesse a raposa
4. Retorne com as galinhas
5. Atravesse o milho
6. Retorne sozinho
7. Atravesse as galinhas
7
Entrada e Saída
 No contexto da disciplina todos os problemas utilizam 
a entrada e saída padrão 
 Entrada padrão : teclado
 Saída padrão : terminal
8
Declaração de Variáveis
 Sintaxe
tipo var1, var2, var3, .., varN;
 Para declarar uma variável, necessário especificar o 
seu tipo e o nome (ou uma lista de nomes) a serem 
alocadas;
 É permitido atribuir um valor inicial
int a, i, idade;
float pi=3.1416;
double x=0.9, y=-10.2;
9
Tipos de Variáveis
 int: inteiro de 32 bits
 Ex.: int idade=98;
 long long: inteiro de 64 bits
 long long brasilpib = 1.796000000000; 
 float: real de 32 bits
 float peso=5.28;
 double: real de 64 bits
 double y = -15.34873572655824322;
 char: caracter de 8 bits 
 char letra = ‘d’;
10
Saída Padrão (cout)
 Sintaxe
cout << par1 << par2 << ... << parN ;
 cout recebe uma lista de parâmetros e imprime os 
mesmos na ordem especificada
 Parâmetros podem ser variáveis e constantes
 Ex.: 
int idade=25;
cout << “Resultado = ”<< idade << endl;
 Saída 
 “Resultado = 25\n”
 endl representa uma quebra de linha (“\n”)
11
Praticando
 Descrição 
 Seu programa deve cumprimentar o mundo 
 Entrada
 Este programa não possui entrada
 Saída
 Seu programa deve imprimir a sentença “Alo mundo!” 
seguido de uma quebra de linha
 Sugestão de nome do programa
 alo.cpp
12
 Código
#include <iostream>
using namespace std;
int main()
{
cout<<“Alo mundo!”<< endl;
}
Praticando
13
 Código
#include <iostream>
using namespace std;
int main()
{
cout<<“Alo mundo!”<< endl;
}
Praticando
14
Cabeçalho
Função principal
Início da função principal
Fim da função principal
e do programa
Código
 Código
#include <iostream>
using namespace std;
int main()
{
cout<<“Alo mundo!”<< endl;
}
Praticando
15
Para compilar
$g++ alo.cpp
Para executar
$./a.out
Entrada Padrão (cin)
 Sintaxe
cin >> var1 >> var2 >> ... >> varN ;
 cin recebe uma lista de variáveis e lê valores para elas na 
ordem especificada
 Identifica automaticamente o tipo da variável e lê um valor de 
acordo com esse tipo
 Variáveis reais podem ter ponto flutuante na entrada, inteiros não 
podem
 Ex.: 
int idade=25;
float peso=67.8
cin >> idade >> peso;
 Comando lerá um número inteiro (sem ponto) para idade
variável a e um número real (com ou sem ponto) para a 
variável peso
16
Atribuição
 Como ocorre a atribuição?
var1 = valor;
 O valor pode ser uma variável, uma constante ou uma 
expressão aritmética
 Ex.:
17
int x;
x= 1;
int y;
y = x;
Operador Função
+ Soma
- Subtração 
* Multiplicação
/ Divisão
% Resta do Divisão
() Alteração de Precedência
Expressões Aritméticas
18
Ex.: 
a=b*c+d;
m=(n-o)/pi;
Operador Função
++ Incremento (var++ é mesmo que var=var+1;)
-- Decremento (var– é mesmo que var=var-1;) 
+= Soma (var+=2 é o mesmo que var=var+2;)
-= Subtração (var-=2 é o mesmo que var=var-2;)
*= Multiplicação (var*=2 é o mesmo que var=var*2;)
/= Divisão (var/=2 é o mesmo que var=var/2;)
Expressões Aritméticas
19
Ex.: 
idade++;
peso/=prato;
 Conversão automática de tipos
 Tipo com mais bits tem precedência sobre tipos com 
menos bits
 Tipos reais tem precedência sobre tipos inteiros
 Exemplos
int a=5;
long long b =10;
double c=10.1;
cout << a*b << endl; //resultado tem tipo long long
cout << b+c << endl; //resultado tem tipo double
Expressões Aritméticas
20
Tipos Fundamentais
21
http://pt.cppreference.com/w/cpp/language/types
Tipos Fundamentais
22
Tipos Fundamentais
Intervalos de Valores
23
Tipos Fundamentais
 Note: the C++ Standard guarantees that
1 == sizeof(char) <= sizeof(short) <= sizeof(int) <= sizeof(long) <=
sizeof(long long)
24
Tipos Fundamentais
 Código que determina o tamanho exato desses tipos no seu
computador usando seu próprio compilador
25
Programando – Soma 2
 Descrição
 Seu programa deve ler dois inteiros e imprimir o valor da 
soma destes números
 Entrada
 Composta por duas linhas, sendo que cada linha contém 
um inteiro. 
 Saída
Seu programa deve imprimir uma linha contendo um 
inteiro que representa a soma dos valores da 
entrada
 Sugestão de nome: soma2.cpp
26
Primeiros Passos
 Configurando o ambiente de trabalho
 Passo 1 – Desktop (área de trabalho)
27
Primeiros Passos
 Configurando o ambiente de trabalho
 Passo 2 – Abrindo o editor de texto (Gedit)
28
Primeiros Passos
 Configurando o ambiente de trabalho
 Passo 2 – ou abrindo o editor de texto usando
terminal
29
Primeiros Passos
 Configurando o ambiente de trabalho
 Passo 2 – ou abrindo o editor de texto usando
terminal
30
Primeiros Passos
 Configurando o ambiente de trabalho
 Passo 3 – Let the FUN begin!
31
Primeiros Passos
 Lista de comandos úteis
$ ls
lista o conteúdo do diretório corrente
$ ls “nome_diretório”
lista o conteúdo do diretório “nome_dir”
$ mkdir “nome_diretório” 
cria um diretório chamado “nome_diretório”
$ cd “nome_diretório”
muda o diretório corrente para o diretório “nome_deiretório”
$ cat “nome_arquivo”
imprime o conteúdo do arquivo “nome_arquivo” na tela
32
Sistema da Disciplina
 URI – Online Judge e Jude
 (https://www.urionlinejudge.com.br/) 
33
Sistema da Disciplina - Problema
34
 O que é um problema?
Dicas (1)
35
 Submeta o código
 Sempre utilize a extensão .cpp nos seus arquivos
 Ex.: nome.cpp
 Utilize apenas letras não acentuadas e números no 
nome dos seus arquivos
 Ex.: nome123.cpp
 Não use caracteres especiais, espaços, etc
Dicas(2)
36
 Letras maiúsculas e minúsculas não são a mesma 
coisa
 Case-sensitive
 Respeite as regras de apresentação da saída
 Não esqueça de quebrar linhas
 Toda linha impressa deve terminar com uma quebra de 
linha

Continue navegando

Outros materiais