Explorar E-books
Categorias
Explorar Audiolivros
Categorias
Explorar Revistas
Categorias
Explorar Documentos
Categorias
Introduo
Para cada comando sero apresentadas a sua:
sintaxe: formato geral do comando que deve ser aceita e respeitada como padro. semntica: o significado da ao realizada pelo comando, em tempo de execuo. No texto (esttico) de um programa (ou algoritmo), um valor pode ser representado na forma de constante ou de varivel. A constante representada em um programa diretamente pelo seu valor (que no se altera durante a execuo do programa).
3
Variveis
A varivel representada no texto de um programa por um nome que corresponde a uma posio da memria que contm o seu valor. Em tempo de execuo, o nome da varivel permanece sempre o mesmo e seu valor pode ser modificado. Nome de varivel: criado pelo programador e deve ser iniciado por uma letra que pode ser seguida por tantas letras, algarismos ou sublinha quanto se desejar e aconselhvel que seja significativo do valor que ela representa.
4
Variveis
Exemplos de nomes de variveis: Certo: nome, telefone, salario_func, x1 Errado: 1ano, sal/hora, _nome
Tipos de Dados
Todo valor (constante ou varivel) de um programa tem um tipo de dados associado.
Um tipo de dados constitudo de dois conjuntos: um conjunto de objetos (domnio de dados) e de um conjunto de operaes aplicveis aos objetos do domnio. Toda linguagem de programao tem embutido um conjunto de tipos de dados, tambm chamados de implcitos, primitivos ou bsicos. Tipos de dados bsicos: inteiro, real, caracter e lgico. Em C, os tipos acima so, respectivamente, int, float/double e char. No h o tipo lgico em C.
6
Operadores
A tabela abaixo apresenta os operadores que so diferentes em C em relao a pseudolinguagem.
Pseudolinguagem Mod C % <=
>= == = != O smbolo = em C utilizado para atribuio, correspondendo ao do portugus estruturado. No h correspondente direto em C para o operador div.
Declarao de Variveis
Sintaxe: <tipo> nome (s);
Implicaes da declarao de uma varivel:
Alocao de um espao na memria que possa conter um valor do seu tipo. Associao do endereo dessa posio da memria ao nome da varivel.
Exemplos: caracter f, n; inteiro idade; real a, b, X1; lgico vendido;
Declarada uma varivel, toda vez que ela for referenciada em qualquer comando do programa, o computador vai trabalhar com o contedo de seu endereo, que o valor da varivel.
11
Exerccios
1) Indique quais das constantes abaixo so do tipo inteiro:
( )1000 ( ) 0 ( )-900 ( )verdadeiro ( )-456 ( )34 ( )-1.56
12
Exerccios
Indique com um X os nomes vlidos para uma varivel:
( ( ( ( ( (
13
Comandos Bsicos
Comando de atribuio
Sintaxe: varivel expresso; Semntica: atribuir varivel o resultado da expresso. Expresses aritmticas: fornecem resultado numrico (inteiro ou real).
Operaes bsicas: +, -, *, /
Exponenciao: potencia( A + B , N) Funes matemticas comuns: sen (X), cos (X), abs (X), raiz (X), arctan (X), exp (X), log (X), ln (X) etc. Operadores para inteiros: M mod I: resto da diviso inteira de M por I M div I: quociente da diviso inteira de M por I
14
Comandos Bsicos
Comando de atribuio
Expresses lgicas: fornecem resultado lgico.
Conectivos relacionais: (<, , =, >, e ) Conectivos lgicos: Conjuno: e, Disjuno: ou, Disjuno Exclusiva: xou, Negao: no,
Tabela Verdade: Sejam A e B duas expresses lgicas.
A V V F F
B V F V F
AeB V F F F
A ou B V V V F
A xou B F V V F
no A F F V V
15
Comandos Bsicos
Comando de atribuio
Prioridade de execuo das operaes em uma expresso:
1. Parnteses (dos mais internos para os mais externos) 2. Expresses aritmticas, seguindo a ordem: funes, * e /, + e 3. Comparaes: <, , =, >, e 4. no 5. e 6. ou e xou 7. Da esquerda para a direita quando houver indeterminaes.
16
Comandos Bsicos
Comentrios
inteiro maior; //maior valor lido //ler os valores das variveis A, B, C
Pseudocomando
leia os valores das variveis A, B, C; Classifique os valores lidos em ordem crescente;
17
Comandos Bsicos
Bloco (1) Conjunto de comandos entre { } (2) Pode-se declarar variveis em seu interior. (3) Delimitar o escopo das variveis. { <declarao de variveis>; <comandos>; }
18
Estruturas de Controle
1. Seqncia Simples Sintaxe: Exemplo: leia (X, Y); A X + Y; B X Y; imprima (A, B); Exemplo em C:
scanf(%d %d, &X, &Y); a = x + y; b = x - y; printf (%d %d, a, b);
Semntica: o controle de fluxo de execuo entra na estrutura, executa comando por comando, de cima para baixo e sai da estrutura.
19
At agora, foram estudados os seguintes recursos visando especificamente a construo de algoritmos: Conceito de Constante, Varivel e Tipos de Dados. Tipos de Dados Bsicos. Declarao de Variveis. Construo de Expresses (Aritmtica e Lgica). Sintxe e Semntica dos Comandos de Atribuio e de Entrada e Sada. Seqncia Simples (primeiro dos trs tipos de estruturas de controle). J possvel criar alguns algoritmos simples, bastando adotar um mtodo de desenvolvimento.
20
21
23
24
26
Exerccios
1. Desenvolver os algoritmos a seguir, utilizando o mtodo direto.
a) Ler uma temperatura em graus Celsius e apresent-la convertida em graus Fahrenheit. A frmula de converso: F (9*C+160)/5 b) Calcular e apresentar o volume de uma lata de leo cilindrica, a partir da leitura do raio da base e da altura. c) Ler os valores do comprimento, da largura e da altura de uma caixa, calcular e imprimir o seu volume.
27
Exerccios
2. Construir um algoritmo para ler 5 valores inteiros, calcular e imprimir a soma desses valores. 3. Construir um algoritmo para ler 6 valores reais, calcular e imprimir a mdia aritmtica desses valores. 4. Fazer um algoritmo para gerar e imprimir o resultado do nmero H, sendo H = 1 + 1/2 + 1/3 + 1/4 + 1/5. 5. Construa em C os algoritmos acima.
28
Nesta Aula
Variveis, Tipos de dados Declarao de variveis Impresso Formatao da impresso Operadores Entrada de dados
30
Variveis
Uma varivel representa um espao na memria do computador para armazenar um determinado tipo de dado. Em C, todas variveis devem ser explicitamente declaradas, isto , devemos especificar:
Tipo de dado Nome (ou identificador)
31
Identificadores
So nomes usados para se fazer referncia a variveis, funes, rtulos e vrios outros objetos definidos pelo usurio. Exemplos:
a, b, peso, i, contaCorrente, saldo, x1, x2......
Obs: A linguagem C case sensitive, ou seja, as letras maisculas diferem das minsculas.
32
Nomes de Variveis
O nome de uma varivel (identificador) formado por um ou mais caracteres, sendo que:
o primeiro caractere uma letra ou sublinha ( _ ); os outros caracteres podem ser letras, algarismos ou sublinha ( _ ).
Exemplos:
a) Nomes vlidos: L a de op1 V9a b) Nomes Invlidos: x+ t.6 43x &ah Lista_Notas a_2 p56 A1 _2A $dolar Lista-Notas n! %p
Uma varivel no pode ter o mesmo nome de uma palavra-chave de C, como por exemplo:
main, cout, int, float, char, short, return, case, void
33
Tipos de Dados
Quando voc declara um identificador d a ele um tipo. Um tipo de objeto de dados determina como valores de dados so representados, que valores pode expressar, e que tipo de operaes voc pode executar com estes valores.
Tipo char int float double Espao que ocupa na memria 1 byte 4 bytes 4 bytes 8 bytes Faixa -128 a 127 (incluindo letras e smbolos) -2147483648 a 2147483647 3.4E-38 a 3.4E+38 (6 casas de preciso) 1.7E-308 a 1.7E+308 (15 casas de preciso)
Obs.: Alguns sistemas trabalham com valores inteiros de 2 bytes, com faixa de -32768 a 32 767.
34
Declarao de variveis
Para armazenar valores na memria preciso reservar o espao correspondente ao tipo de dado. A declarao de uma varivel reserva espao para armazenar um dado do tipo da varivel e associa o nome da varivel a este espao. Na linguagem C podemos inicializar as variveis com valores na declarao.
35
Declarao de Variveis
As variveis s podem armazenar informaes ou dados sempre de um mesmo tipo (inteiro, real, caractere ou char). Na linguagem C, a declarao de variveis obedece a seguinte sintaxe:
<tipo> <nome_var>; ou <tipo> <nome_var1>, <nome_var2>, ..... ,<nome_varn>;
Toda e qualquer varivel deve ser declarada e sua declarao deve ser feita antes de sua utilizao no programa.
36
38
// Erro !!! // Varivel y no foi // inicializada e // contm lixo de // memria float x, y, z; x = 1.0; z = x + y;
Impresso
A exibio dos resultados do processamento e de mensagens feita atravs da funo pr-definida printf(), cujo prottipo est contido tambm no arquivo stdio.h. Sua sintaxe a seguinte: printf("Expresso" , Lista de argumentos );
Onde:
Expresso: contm mensagens a serem exibidas, cdigos de formatao que indicam como o contedo de uma varivel deve ser exibido e cdigos especiais para a exibio de alguns caracteres especiais. Lista de argumentos: pode conter identificadores de variveis, expresses aritmticas ou lgicas e valores constantes.
40
41
#include <stdio.h> int main( ) { printf("Valor recebido foi %d" ,10); return 0; }
42
\n \t \b \f \a \" \\ %%
leva o cursor para a prxima linha executa uma tabulao executa um retrocesso leva o cursor para a prxima pgina emite um sinal sonoro (beep) exibe o caractere " exibe o caractere \ exibe o caractere %
45
46
Alinhamento de Sada
O programa pode fixar a coluna da tela a partir da qual o contedo de uma varivel, ou o valor de uma constante ser exibido. Isto obtido acrescentado-se um inteiro m ao cdigo de formatao. Neste caso, m indicar o nmero de colunas que sero utilizadas para exibio do contedo.
#include <stdio.h> int main() { printf("Valor: %d \n",25); printf("Valor: %10d \n",25); return 0; }
47
Exerccios
1. 2. Fazer um programa que imprima o seu nome. Modificar o programa anterior para imprimir na primeira linha o seu nome, na segunda linha a sua idade e na terceira sua altura. Imprimir o valor 2.346728 com 1, 2, 3 e 5 casas decimais.
3.
48
Operador de Atribuio
O operador de atribuio em C o sinal de igual = Sintaxe: <variavel> = <expresso>; Exemplos:
int a = c = b = d = a,b,c,d; 5; 7; a; a + b + c; int int int b = d = a=5; c=7; b,d; a; a + b + c;
ou
49
Operadores Aritmticos
Exemplos:
a = a + a += 4; a = b / a = 4 * b = 2 * a++; b--; b; // similar a a = a + 4; 2; 2 + 3; // qual o valor final de a? 3 2 * 2; // qual o valor final de b? // similar a a = a + 1; // similar a b = b 1;
50 50
Converso de tipo
Converses automticas de valores na avaliao de uma expresso.
int a; float b, c, d; a b c d = = = = 4.5; a / 2.0; 1/2 + b; 1.0/2.0 + b; // converso implcita // converso implcita // converso implcita
51
52
scanf() Exemplo 1
#include <stdio.h> int main() { int num; printf("Digite um valor: "); scanf("%d",&num); printf("\nO valor digitado foi %d.",num); return 0; }
54
scanf() Exemplo 2
#include <stdio.h> int main() { int n1,n2,soma; printf("Digite dois valores: "); scanf("%d",&n1); scanf("%d",&n2); soma = n1 + n2; printf("\n%d + %d = %d.",n1,n2,soma); return 0; }
55
Exerccios
1. Ler uma temperatura em graus Celsius (C) e apresentla convertida em graus Fahrenheit. A frmula de converso F = (9*C+160)/5. Calcular e apresentar o volume de uma lata de leo, utilizando a frmula: volume = 3.14159*raio*raio*altura. Elaborar um programa que calcule e apresente o volume de uma caixa retangular, por meio da frmula volume = comprimento*largura*altura.
56
2.
3.