A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

CES-10 INTRODUÇÃO À COMPUTAÇÃO Capítulo III Declarações e Comandos de Atribuição.

Apresentações semelhantes


Apresentação em tema: "CES-10 INTRODUÇÃO À COMPUTAÇÃO Capítulo III Declarações e Comandos de Atribuição."— Transcrição da apresentação:

1 CES-10 INTRODUÇÃO À COMPUTAÇÃO Capítulo III Declarações e Comandos de Atribuição

2 Capítulo III – Declarações e Comandos de Atribuição 3.1 – Identificadores e palavras reservadas 3.2 – Elementos de comandos de atribuição 3.3 – Constantes 3.4 – Variáveis e suas declarações 3.5 – Declaração de tipos 3.6 – Operadores de expressões 3.7 – Funções e macros da biblioteca de C 3.8 – Expressões e atribuições especiais de C

3 3.1 – Identificadores e Palavras Reservadas – Níveis de complexidade de um programa Nível de subprogramas: um programa é uma composição de subprogramas e de declarações globais Nível de subprogramas: um programa é uma composição de subprogramas e de declarações globais Nível de comandos: um subprograma é uma composição de declarações e de comandos Nível de comandos: um subprograma é uma composição de declarações e de comandos Nível atômico: cada comando ou cada declaração é uma composição de átomos do programa Nível atômico: cada comando ou cada declaração é uma composição de átomos do programa Nível de caracteres: cada átomo é uma sequência de caracteres Nível de caracteres: cada átomo é uma sequência de caracteres Este capítulo

4 Átomos dos comandos de um programa já vistos: Palavras reservadas: if, while, int, else, etc. Palavras reservadas: if, while, int, else, etc. Nomes de variáveis (identificadores): i, n, fat, soma, etc. Nomes de variáveis (identificadores): i, n, fat, soma, etc. Constantes: 12, 43.2, #, etc. Constantes: 12, 43.2, #, etc. Cadeias de caracteres: o fatorial de, media, etc. Cadeias de caracteres: o fatorial de, media, etc. Operadores aritméticos e lógicos: +, -, *, <, <=, and, or, etc. Operadores aritméticos e lógicos: +, -, *, <, <=, and, or, etc. Separadores: ;, {, }, etc. Separadores: ;, {, }, etc.

5 Palavras reservadas: Palavras que têm um papel especial dentro de certas construções da linguagem Palavras que têm um papel especial dentro de certas construções da linguagem Não podem ser usadas em contextos fora dessas construções Não podem ser usadas em contextos fora dessas construções Palavras reservadas da Linguagem C

6 Identificador: É uma sequência de letras, dígitos e underscores (_), nunca iniciada por um dígito É uma sequência de letras, dígitos e underscores (_), nunca iniciada por um dígito Identificadores são usados para dar nome às variáveis, constantes, funções e outras entidades de um programa Identificadores são usados para dar nome às variáveis, constantes, funções e outras entidades de um programa É boa prática escolher identificadores que sirvam de mnemônicos para tais entidades É boa prática escolher identificadores que sirvam de mnemônicos para tais entidades Exemplos: fat (para fatorial), soma, r (para razão), p (para precisão) Exemplos: fat (para fatorial), soma, r (para razão), p (para precisão)

7 O underscore é usado para substituir o espaço em branco em nomes com mais de uma palavra O underscore é usado para substituir o espaço em branco em nomes com mais de uma palavra Exemplos: numero_de_eleitores, ler_matriz, etc. Exemplos: numero_de_eleitores, ler_matriz, etc. Em muitas linguagens de programação, é proibido usar palavras reservadas como identificadores Em muitas linguagens de programação, é proibido usar palavras reservadas como identificadores No padrão ANSI C, caso dois identificadores tenham os mesmos 31 primeiros caracteres, eles representam a mesma entidade No padrão ANSI C, caso dois identificadores tenham os mesmos 31 primeiros caracteres, eles representam a mesma entidade

8 Capítulo III – Declarações e Comandos de Atribuição 3.1 – Identificadores e palavras reservadas 3.2 – Elementos de comandos de atribuição 3.3 – Constantes 3.4 – Variáveis e suas declarações 3.5 – Declaração de tipos 3.6 – Operadores de expressões 3.7 – Funções e macros da biblioteca de C 3.8 – Expressões e atribuições especiais de C

9 3.2 – Elementos de comandos de atribuição Forma geral de um comando de atribuição em C: Forma geral de um comando de atribuição em C: Variável = Expressão; Execução: calcula-se o valor de Expressão, atribuindo-o a Variável Execução: calcula-se o valor de Expressão, atribuindo-o a Variável

10 Possíveis elementos de uma expressão: Possíveis elementos de uma expressão: Constantes, variáveis, operadores, separadores e chamadas de funções Constantes, variáveis, operadores, separadores e chamadas de funções O resultado de uma expressão deve ser um único valor, de um determinado tipo: O resultado de uma expressão deve ser um único valor, de um determinado tipo: Número inteiro, número real, caractere ou valor lógico Número inteiro, número real, caractere ou valor lógico

11 Capítulo III – Declarações e Comandos de Atribuição 3.1 – Identificadores e palavras reservadas 3.2 – Elementos de comandos de atribuição 3.3 – Constantes 3.4 – Variáveis e suas declarações 3.5 – Declaração de tipos 3.6 – Operadores de expressões 3.7 – Funções e macros da biblioteca de C 3.8 – Expressões e atribuições especiais de C

12 3.3 – Constantes Constantes que aparecem em expressões podem ser: Inteiras Inteiras Reais Reais Caracteres Caracteres Simbólicas Simbólicas Identificadores declarados como constantes Identificadores declarados como constantes

13 3.3.1 – Constantes inteiras Constantes inteiras podem ser decimais, octais (ou expressas na base 8) e hexadecimais (ou expressas na base 16) Constantes inteiras podem ser decimais, octais (ou expressas na base 8) e hexadecimais (ou expressas na base 16) Exemplos: Exemplos: Decimais: 5; 2314; -801 Decimais: 5; 2314; -801 Octais: 011 ( (11) 8 = (9) 10 ); 0712 ( (712) 8 = (458) 10 ) Octais: 011 ( (11) 8 = (9) 10 ); 0712 ( (712) 8 = (458) 10 ) Hexadecimais: 0x182 ou 0X182 ( (182) 16 = (386) 10 ) ); 0xA27 ou 0xa27 ((A27) 16 = (2599) 10 ) Hexadecimais: 0x182 ou 0X182 ( (182) 16 = (386) 10 ) ); 0xA27 ou 0xa27 ((A27) 16 = (2599) 10 ) Obs.: em C, está em octal 712 está em decimal

14 3.3.2 – Constantes reais Constantes reais podem ser expressas em notação decimal ou exponencial Constantes reais podem ser expressas em notação decimal ou exponencial Exemplos: Exemplos: Notação decimal: 13.47; Notação decimal: 13.47; Notação exponencial: 5.2e20 (equivale a 5.2*10 20 ); 0.03E-7 (equivale a 0.03*10 -7 ) Notação exponencial: 5.2e20 (equivale a 5.2*10 20 ); 0.03E-7 (equivale a 0.03*10 -7 )

15 3.3.3 – Constantes caracteres Constante caractere: ocupa 1 byte; é expressa por um ou dois caracteres entre apóstrofos ( ) Constante caractere: ocupa 1 byte; é expressa por um ou dois caracteres entre apóstrofos ( ) Exemplos: Exemplos: Um caractere: a, B, +, ; Um caractere: a, B, +, ; Dois caracteres: \n, \t, \0, \\ Dois caracteres: \n, \t, \0, \\ Cada constante caractere tem sua representação interna, de acordo com a tabela ASCII Cada constante caractere tem sua representação interna, de acordo com a tabela ASCII

16 Tabela ASCII básica: nulbelbsht 10nlcr 20esc 30sp!#$%& 40()*+,-./ :; 70FGHIJKLMNO 80PQRSTUVWXY 90Z[\]^_`abc 100defghijklm 110nopqrstuvw 120xyz{|}~del Em C, constantes caracteres são encaradas como inteiros de 8 bits São permitidas expressões do tipo a + ; + 5 – 37 Esta expressão equivale a = 172 Em muitas linguagens, isso não é permitido

17 Tabela de caracteres especiais e de controle:

18 abcde Exemplo: escrita de caracteres de controle: Seja a execução do programa: Seja a execução do programa: #include #include void main () { printf ("abcde\nabcde\rxxx\nabcde"); } _ _abcde_ Vídeo abcde_abcde xxxde abcde_ _ _

19 Exemplo: Acionamento da campainha: O seguinte programa toca a campainha por alguns segundos: O seguinte programa toca a campainha por alguns segundos: #include #include void main () { int i; i = 1; while (i <= 10000) { printf ("\a"); i = i+1; }}

20 Exercício 3.3.3: 1.Dado o trecho de programa a seguir, dizer o que será mostrado no vídeo, quando ele for executado, sem usar ambiente de programação int i = 1; while (i <= 5) { printf ("i=%d;", i); i = i + 1; } while (i <= 5) { printf ("i=%d;", i); i = i + 1; } printf ("\n\n"); printf ("\n\n"); i = 11; while (i <= 15) { printf ("i=%d;\r", i); i = i + 1; } printf ("\n\n"); printf ("\n\n"); i = 21; while (i <= 25) { printf ("i=%d;\n", i); i = i + 1; } while (i <= 25) { printf ("i=%d;\n", i); i = i + 1; }

21 3.3.4 – Constantes cadeias de caracteres Constante cadeia de caracteres: sequência de caracteres comuns, especiais e/ou de controle, tudo entre aspas ( ) Constante cadeia de caracteres: sequência de caracteres comuns, especiais e/ou de controle, tudo entre aspas ( ) Os caracteres ocupam bytes consecutivos na memória Os caracteres ocupam bytes consecutivos na memória Encerando a sequência, aparece um caractere \0 Encerando a sequência, aparece um caractere \0

22 Exemplo: a cadeia de caracteres Exemplo: a cadeia de caracteres abc + xyz é composta dos caracteres: a, b, c,, +,, x, y, z, \0 Constantes e variáveis do tipo cadeia de caracteres não figuram em expressões Constantes e variáveis do tipo cadeia de caracteres não figuram em expressões Não comportam apenas um valor, mas vários valores do tipo caractere Não comportam apenas um valor, mas vários valores do tipo caractere Serão abordadas no capítulo de variáveis indexadas Serão abordadas no capítulo de variáveis indexadas

23 3.3.5 – Constantes simbólicas São constantes criadas por diretivas define São constantes criadas por diretivas define Exemplo: as diretivas Exemplo: as diretivas #define pi #define raio 6 Podem ser usadas nas expressões dos comandos: perimetro = 2 * pi * raio; area = pi * raio * raio; Como foi visto, o pré-processador substitui pi e raio por e 6, respectivamente Como foi visto, o pré-processador substitui pi e raio por e 6, respectivamente

24 3.3.6 – Identificadores de constantes A palavra const precedendo qualquer declaração de variáveis torna constantes essas variáveis A palavra const precedendo qualquer declaração de variáveis torna constantes essas variáveis O compilador não admite que elas sejam alteradas por nenhum comando do programa O compilador não admite que elas sejam alteradas por nenhum comando do programa Exemplo: Exemplo: const int c4 = 4, c10 = 10; printf ("c4 = %d; c10 = %d;", c4, c10); c4 e c10 são constantes Proibidos: scanf (%d, &c4); c10 = c10 + 3;

25 Capítulo III – Declarações e Comandos de Atribuição 3.1 – Identificadores e palavras reservadas 3.2 – Elementos de comandos de atribuição 3.3 – Constantes 3.4 – Variáveis e suas declarações 3.5 – Declaração de tipos 3.6 – Operadores de expressões 3.7 – Funções e macros da biblioteca de C 3.8 – Expressões e atribuições especiais de C

26 3.4 – Variáveis e suas Declarações – Obrigatoriedade de declarações Variável: identificador ao qual está associado um local de memória, cujo valor pode ser alterado durante a execução Variável: identificador ao qual está associado um local de memória, cujo valor pode ser alterado durante a execução Declarações de variáveis: construções não-executáveis da linguagem; servem para: Declarações de variáveis: construções não-executáveis da linguagem; servem para: Dar nomes às variáveis Dar nomes às variáveis Reservar-lhes espaço na memória Reservar-lhes espaço na memória Especificar o tipo de valores que elas devem guardar Especificar o tipo de valores que elas devem guardar

27 Na grande maioria das linguagens de programação, toda variável de um programa deve ser declarada antes de ser referenciada por seus comandos Na grande maioria das linguagens de programação, toda variável de um programa deve ser declarada antes de ser referenciada por seus comandos Fortran: linguagem que não exige declarações Fortran: linguagem que não exige declarações Variáveis de nomes iniciados por I, J, K, L, M ou N: por default seu tipo é inteiro Variáveis de nomes iniciados por I, J, K, L, M ou N: por default seu tipo é inteiro Variáveis de nomes iniciados por qualquer outra letra: por default, seu tipo é real Variáveis de nomes iniciados por qualquer outra letra: por default, seu tipo é real

28 Tipos primitivos de uma linguagem: tipos padronizados para suas variáveis Tipos primitivos de uma linguagem: tipos padronizados para suas variáveis Tipos primitivos da Linguagem C: vários tipos para inteiros, reais e caracteres Tipos primitivos da Linguagem C: vários tipos para inteiros, reais e caracteres C também possui artifícios para que o programador crie novos tipos, conforme seus intentos C também possui artifícios para que o programador crie novos tipos, conforme seus intentos Forma geral das declarações de variáveis de tipo primitivo em C: Forma geral das declarações de variáveis de tipo primitivo em C: Tipo Variável, Variável,..., Variável;

29 3.4.2 – Variáveis inteiras Tipos primitivos para inteiros: Tipos primitivos para inteiros: Quando C foi projetada: Quando C foi projetada: int – 2 bytes short – 1 byte long – 4 bytes

30 3.4.3 – Variáveis reais Tipos primitivos para reais: Tipos primitivos para reais: Sistemas de ponto-flutuante são imprecisos; exemplo: Sistemas de ponto-flutuante são imprecisos; exemplo: float x = ; double y = ; printf ("x = %24.19e;\ny = %24.19e;", x, y); Comandos x = e+06; y = e+06; Resultado Valor impresso de x: correto até o 7º dígito significativo Valor impresso de y: correto até o 16º

31 3.4.4 – Variáveis caracteres Tipos primitivos para caracteres: Tipos primitivos para caracteres: Variáveis desses tipos equivalem a inteiros de 1 byte Variáveis desses tipos equivalem a inteiros de 1 byte Podem fazer parte de expressões contendo inteiros e reais Podem fazer parte de expressões contendo inteiros e reais

32 Exemplo: escrita de expressões com variáveis caracteres Programa Resultado no vídeo Formato %c: escreve o caractere Formato %d: escreve a representação interna do caractere

33 3.4.5 – Variáveis lógicas Diferentemente de outras linguagens, C não disponibiliza um tipo de variável específico para armazenar valores lógicos (true e false) Diferentemente de outras linguagens, C não disponibiliza um tipo de variável específico para armazenar valores lógicos (true e false) No entanto, o programador pode utilizar, dessa linguagem, a capacidade de criar novos tipos, para trabalhar com variáveis e valores lógicos No entanto, o programador pode utilizar, dessa linguagem, a capacidade de criar novos tipos, para trabalhar com variáveis e valores lógicos Isso será ilustrado no Tópico 3.5 deste capítulo Isso será ilustrado no Tópico 3.5 deste capítulo

34 3.4.6 – Declarações com inicialização A Linguagem C possibilita que variáveis sejam inicializadas em suas declarações A Linguagem C possibilita que variáveis sejam inicializadas em suas declarações Exemplo: Exemplo: Programa Resultado no vídeo

35 3.4.7 – Outras classificações de variáveis Variáveis escalares: Variáveis escalares: Destinadas a guardar apenas um valor, num dado momento da execução Destinadas a guardar apenas um valor, num dado momento da execução Todas as variáveis vistas até agora são escalares Todas as variáveis vistas até agora são escalares Variáveis estruturadas: Variáveis estruturadas: Destinadas a guardar vários valores, num dado momento da execução Destinadas a guardar vários valores, num dado momento da execução x A

36 Classificação das variáveis estruturadas Variáveis indexadas: Variáveis indexadas: São variáveis estruturadas homogêneas, ou seja, seus valores são todos do mesmo tipo (vetores e matrizes) São variáveis estruturadas homogêneas, ou seja, seus valores são todos do mesmo tipo (vetores e matrizes) Estruturas: Estruturas: São variáveis estruturadas heterogêneas, ou seja, seus valores podem ser de tipos diferentes São variáveis estruturadas heterogêneas, ou seja, seus valores podem ser de tipos diferentes B E

37 Até agora foram mencionadas e estudadas variáveis destinadas a guardar valores (inteiros, reais, caracteres, lógicos) Até agora foram mencionadas e estudadas variáveis destinadas a guardar valores (inteiros, reais, caracteres, lógicos) Ponteiros: variáveis escalares destinadas a guardar endereços de outras variáveis Ponteiros: variáveis escalares destinadas a guardar endereços de outras variáveis Há também variáveis indexadas de ponteiros e estruturas em que alguns valores são ponteiros Há também variáveis indexadas de ponteiros e estruturas em que alguns valores são ponteiros 48.2 x p x B Variáveis indexadas, estruturas e ponteiros serão estudados em capítulos específicos E

38 Capítulo III – Declarações e Comandos de Atribuição 3.1 – Identificadores e palavras reservadas 3.2 – Elementos de comandos de atribuição 3.3 – Constantes 3.4 – Variáveis e suas declarações 3.5 – Declaração de tipos 3.6 – Operadores de expressões 3.7 – Funções e macros da biblioteca de C 3.8 – Expressões e atribuições especiais de C

39 3.5 – Declaração de Tipos Declaração de tipos: possibilita ao programador criar seus próprios tipos de variáveis Declaração de tipos: possibilita ao programador criar seus próprios tipos de variáveis Exemplo: as declarações Exemplo: as declarações typedef char letra, digito; typedef int comprimento; typedef float preco; Permitem a declaração de variáveis de tipos letra, dígito, comprimento e preco, tais como: letra l1, l2, l3; digito d1, d2; comprimento c1, c2, c3; preco p1, p2;

40 O uso de typedef para tipos escalares tem apenas a vantagem de se ter nomes de tipos que reflitam melhor a natureza das variáveis O uso de typedef para tipos escalares tem apenas a vantagem de se ter nomes de tipos que reflitam melhor a natureza das variáveis Para variáveis indexadas e estruturas, uma boa vantagem é a abreviação de longas declarações, como será visto em capítulos específicos Para variáveis indexadas e estruturas, uma boa vantagem é a abreviação de longas declarações, como será visto em capítulos específicos

41 Exemplo: simulação de variáveis e valores lógicos Programa Resultado Foi criado o tipo logic e as constantes False e True O tipo char foi escolhido como equivalente, pois é o que ocupa menos memória && e ||: versões em C dos operadores and e or


Carregar ppt "CES-10 INTRODUÇÃO À COMPUTAÇÃO Capítulo III Declarações e Comandos de Atribuição."

Apresentações semelhantes


Anúncios Google