bases de programação módulo 7 c / c++ · 2010-09-28 · c++ (c plus plus) é uma evolução do c...
Post on 21-Jul-2020
0 Views
Preview:
TRANSCRIPT
Bases de Programação
Módulo 7
C / C++
2010/2011
Índice2
Origens
Características
Variáveis
Constantes
Instruções básicas
Input/output/atribuições
Tipos de dados
Operadores
Introdução Linguagem C/C++
Origens do C e do C++
C surge na década 70
Nos laboratórios Bell da companhia de
Telecomunicações, AT&T
Dennis Richie e Brian Kerningham
Unix - foi 1º S.O. escrito em C
3
Introdução Linguagem C/C++
C++ (C plus plus) é uma evolução do C - 1983
Linguagem orientada por Objectos e não estruturada
Criador Bjarne Stroustrup
Mas não é 100% compatível com o C
É considerada uma linguagem de alto nível
É case sensitive
Printf não é igual a printf
Características do C++4
Introdução Linguagem C/C++
Estrutura de um programa C
• Directivas ao compilador- Includes- Macros
• Declarações Globais- Variáveis
• Definição das Funções
Programa C
{-Declaração das var locais da função main-Comandos da função main}
main ()
5
Introdução Linguagem C/C++
variáveis6
Variável: “objecto” que pode assumir diversos valores;
Espaço de memória de um certo tipo de dado associado a um nome para referenciar seu conteúdo
Declaração Tipo nome = [inicialização];
Exemploint a =2;float b=2.2;
Escopo Globais – variáveis que são reconhecidas em toda a parte. Locais - variáveis que apenas podem ser usadas dentro da função de onde
foram declaradas.
Introdução Linguagem C/C++
Variáveis - Definição7
quantos caracteres quiser ( até 32);
comece com letras ou sublinhado:Seguidos de letras, números ou sublinhados
C é sensível ao caso:peso <> Peso <> pEso
não podemos definir um identificador com o mesmo nome que uma palavra reservada
auto static extern int long if while do ......
Introdução Linguagem C/C++
Constantes8
São valores que são mantidos ao longo do programa
const int numero=100;
void main ( ){
const int idade=20;cout << “ A sua idade = : ”<< idade);
}
Introdução Linguagem C/C++
Linguagem Pascal/C
program Alegria;
Uses crt;
BEGIN
writeln('Benfica - Sporting 0 - 3');
end.
#include <stdio.h>
void main ()
{
printf (“Benfica - Sporting 0 - 3\n”);
}
9
Introdução Linguagem C/C++
Exemplo de um programa em C ++
/* Primeiro programa */
#include <iostream>
using namespace std;
void main()
{
Int raio;
Float area;
Cout<< “Digite a medida do raio”;
Cin >> raio;
Area=3.14*raio*raio;
Cout<< “A Área = ”<< area;
}
10
Comentários ou // caso utilize uma só linha
biblioteca utilizada – I/O
função principal – inicio do programa
marca início da função
Definição de variáveis locais, utilizadas dentro do programa principal (inteiro / decimal)
Instrução de escrita no ecrã
Instrução de leitura do teclado
Instrução de atribuição
marca fim da função
Introdução Linguagem C/C++
Intruções básicas11
Instrução de leitura de dados
cin >> nota ;
Instrução de tratamento de dados
Atribuição ex. nota = (teste1+teste2)/2
Instrução de escrita de dados
cout << “A sua nota foi = ” << nota;
Introdução Linguagem C/C++
Tipos de dados - Primitivos12
Tipo Tamanho – bytes Faixa mínima
Char 1 -128 a 127
Int 2 ou 4
Nº inteiros [-32 768 a 32 767]Nº inteiros [-2 147 483 648 a 2 147 483 647]
Float 4 Nº reais [3.4E-38 a 3.4E+38]
Double 8 Nº reais [1.7E-308 a 1.7E+308]
Void 0 Nenhum valor (vazio)
O tamanho do inteiro depende da arquitectura do sistema
• Um sistema 32 bits -> inteiro de 32 bits• Um sistema 64 bits -> inteiro de 64 bits
Introdução Linguagem C/C++
Exemplo de declaração de var
•char s declara s como apenas 1 caractere;•char s[10] declara s como um array de 10 caracteres
Tipos de dados - outros13
Tipo
Bool True/false
Short
Long
signed
unsigned
Introdução Linguagem C/C++
Modificadores
signed, unsigned, long e short -> Podem ser aplicados ao tipo int
long -> pode ser aplicado ao tipo double
signed e unsigned -> Podem ser aplicados ao tipo de dados char
Lista de caracteres especiais14
Código significado
\n Nova linha
\r Enter
\t tabulação (tab)
\b Retrocesso
\” Aspas duplas
\\ Barra invertida
\’ Aspas simples
\a Alerta (emite um bip)
\? Ponto de interrogação
Introdução Linguagem C/C++
Introdução Linguagem C/C++
Formatando as saídas - cout
É possível estabelecer o tamanho mínimo para a impressão de um campo
#include <iostream>#include <iomanip>using namespace std;void main ( ){
float x=10;cout << setw (20)<< setprecision (3);cout << x/3 << '\n';
}
10/3= 3.3333333333333333333333333333333
Avança o cursor 20 espaços
Formata o decimal para 3 dígitos de precisão
3.33
Coloca o cursor na linha abaixo
Biblioteca que oferece recursos para controlar espaços e dígitos de precisão na escrita
15
Formatando as saídas - cout16
Altere o programa anterior de forma a que o valor apresentado no écran
Apareça no meio da 3º linha do écran (40x80)
O valor apresentado tem de conter 6 digitos de precisão
Operadores Aritméticos
Operador Ação
+ Adição
* Multiplicação
/ Divisão
% Resto da divisão inteira
- Subtração
-- Decremento
++ Incremento
17
Introdução Linguagem C/C++
Nas primeira máquinas o incremento /decremento era processado maisrápido do que uma tribuiçãoX++x=x+1
Introdução Linguagem C/C++
Comparações e Testes
Observemos antes de mais nada que ++x é diferente de x++
Se
x = 10;
y = ++x;
/* x=x+1; y=x; */
então x = 11 e
y = 11
porém Sex = 10;y = x++;/* y=x; x=x+1 */
então x = 11 e y = 10
18
Resolva:
x = 19;
y = x++;y = ++x;
Introdução Linguagem C/C++
Operadores Relacionais e Lógicos
Operador Acção
> Maior que
>= Maior ou igual que
< Menor que
<= Menor ou igual que
== Igual a
!= Diferente de
&& Condição “E”
|| Condição “OU”
! Negado
19
Introdução Linguagem C/C++
Operadores - Observação
Em C o resultado da comparação
FALSO -> 0
VERDADEIRO -> 1
20
Introdução Linguagem C
Comparações e Testes
Sex = 1;y = 2;cout << x == y << ‘\n’
Qual seria a saída deste comando?
V (1)ou F(0)
21
Resolva o seguinte exercicio no computador
Introdução Linguagem C/C++
Operadores aritméticos de atribuição
Operador Significado
+= Soma seguido de atribuição
-= Subtração seguido de atribuição
*= Multiplicação seguido de atribuição
/= Divisão seguido de atribuição
%= Resto da divisão seguido de atribuição
22
Ex.
x+=2 x=x+2
……
Introdução Linguagem C/C++
Comparações e Testes
cout<< (10 > 4 && !(10 < 9) || 3 <= 4)
Qual seria a saída deste comando?
V ou F
23
Introdução Linguagem C/C++
Conversões de Tipos
Quando forem misturadas variáveis de diferentes tipos, o compilador C converterá os operandos para o tipo de operando maior.
int i=5;float f=1.5;double d=0.15;x= i + f * d;
double
double
float double
inteiro
Pelo que a variável x deve ser declarada como double
24
Introdução Linguagem C/C++
Programando C++
• Faça um programa que peça a sua idade e o seu nome e depois volte a listar no écran estes estes
dados, tal como mostra a seguinte figura
• Use os carecteres especiais de formatação por forma a que a informação listada tenha uma boa
apresentação.
• Depois de aparecer no écran a última frase deve-se ouvir um sinal sonoro
25
top related