Linguagem de Programação Estruturada (C)
Prof. Ramon Mayor Martins , M.Sc. Eng.
mayor@linuxmail.org
Parte 2
São José – 2015 – 2
IES - Instituto de Ensino Superior da Grande Florianópolis
Circuitos Digitais
PLANO DE ENSINO
IV – CONTEÚDO PROGRAMÁTICO
• MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
• MÓDULO 2: CONCEITO DE VARIÁVEL
Circuitos Digitais
PLANO DE ENSINO
IV – CONTEÚDO PROGRAMÁTICO
• MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
• MÓDULO 2: CONCEITO DE VARIÁVEL
o Tipos de Dados
o Variáveis
o Saída de Dados
o Caracteres de Controle
o Constantes
o Entrada de Dados
o Expressões
o Operadores matemáticos
o Operadores de atribuição
o Precedência dos Operadores
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o Tipos de Dados
Em Linguagem C é possível representar dois modos de tipos de dados:
Números : inteiros (int) ou reais, ou seja, com vírgulas (float).
Ponteiros (pointer): usados para armazenar o endereço de outros dados, eles "apontam" para outro
dado.
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o Tipos de Dados
Os dados podem assumir cinco tipos básicos em C que são:
•char: Caracter: O valor armazenado é um caractere. Caracateres geralmente são armazenados em
códigos (usualmente o código ASCII).
•int: Número inteiro é o tipo padrão e o tamanho do conjunto que pode ser representado normalmente
depende da máquina em que o programa está rodando.
•float: Número em ponto flutuante de precisão simples. São conhecidos normalmente como números
reais.
•double: Número em ponto flutuante de precisão dupla
•void: Este tipo serve para indicar que um resultado não tem um tipo definido. Uma das aplicações deste
tipo em C é criar um tipo vazio que pode posteriormente ser modificado para um dos tipos anteriores
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o Tipos de Dados - Modificadores
Modificadores podem ser aplicados a estes tipos.
Estes modificadores são palavras que alteram o tamanho do conjunto de valores que o tipo pode
representar.
Por exemplo, um modificador permite que possam ser armazenados números inteiros maiores.
Um outro modificador obriga que só números sem sinal possam ser armazenados pela variável.
Deste modo não é necessário guardar o bit de sinal do número e somente números positivos são
armazenados. O resultado prático é que o conjunto praticamente dobra de tamanho.
A Tabela abaixo mostra todos os tipos básicos definidos no padrão ANSI.
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o Tipos de Dados
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o Tipos de Dados – Representação dos Dados
O padrão IEEE para aritmética de ponto flutuante (IEEE 754) é o padrão mais amplamente
utilizado para o cálculo de ponto flutuante.
A Norma IEEE 754-2008 define os formatos adequados para representar números em ponto
flutuante de precisão simples (32 bits) e de precisão dupla (64 bits).
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o Tipos de Dados
Número inteiro (int)
Um número inteiro é um número sem vírgula, que pode ser expresso em diferentes bases:
• Base decimal: o número inteiro é representado por uma sequência de unidades (de 0 a 9),
que não deve começar com o dígito 0.
• Base hexadecimal: o número inteiro é representado por uma sequência de unidades (de 0 a
9 ou de A a F (ou de a a f)), que deve começar com 0x ou 0X.
• Base octal: o número inteiro é representado por uma sequência de unidades (incluindo
apenas os dígitos de 0 a 7), que deve começar com 0.
Os inteiros ão assinados por padrão, o que significa que eles têm um sinal.
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o Tipos de Dados
Número com vírgula (float)
Um número com vírgula flutuante é um número com vírgula, porém, ele pode ser representado
de várias maneiras:
um inteiro decimal : 895
um número com um ponto (e não uma vírgula) : 845.32
uma fração: 27/11
um número exponencial, ou seja, um número (possivelmente com vírgula) seguido da
letra e(ou E) e de um inteiro correspondente à potência de 10 (assinado ou não, isto é,
precedido por um "+" ou um "-"):
2.75e-2
35.8E+10
.25e-2
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o Tipos de Dados
Número com vírgula (float)
Os números do tipo float são codificados em 32 bits, incluindo:
23 bits para a mantissa
8 bits para o expoente
1 bit para o sinal
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o Tipos de Dados
Número com vírgula (float)
Os números do tipo duplo são codificados em 64 bits, incluindo:
52 bits para a mantissa
11 bits para o expoente
1 bit para o sinal
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o Tipos de Dados
Número com vírgula (float)
Os números do tipo longo duplo são codificados em 80 bits, incluindo:
64 bits para a mantissa
15 bits para o expoente
1 bit para o sinal
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o Tipos de Dados
Número com vírgula (float)
A precisão dos números reais é aproximada. Ela depende do número de casas decimais;
dependendo do tipo de real, ela será no mínimo:
de 6 números para o tipo float
de 15 números para o tipo double
de 17 números para o tipo long double
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o Tipos de Dados
Caractere (char)
O tipo char (do inglês character) armazena o valor ASCII de um caractere, ou seja, um número
inteiro!
Por padrão, os números são assinados, isso significa que eles têm um sinal.
Para armazenar informações sobre o sinal (em binário), os computadores usam o complemento
de dois. (obs: o complemento de 1 simplesmente vai inverter os bits.)
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o Tipos de Dados
Caractere (char)
na memória, o valor que codifica o caractere – ASCII ( American Standard Code for Information
Interchange; "Código Padrão Americano para o Intercâmbio de Informação“)
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o Tipos de Dados
Caractere (char)
#include <stdio.h>
int main(void)
{
int i;
for (i = 32; i <= 126; i++)
{
printf("%c [%d]n", i, i);
}
return 0;
}
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o Tipos de Dados
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o Declaração- Constante
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o Declaração - Constantes
Circuitos Digitais
MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C
o Declaração - Variáveis

IES GF - Linguagem de Programação Estruturada - Parte 2

  • 1.
    Linguagem de ProgramaçãoEstruturada (C) Prof. Ramon Mayor Martins , M.Sc. Eng. mayor@linuxmail.org Parte 2 São José – 2015 – 2 IES - Instituto de Ensino Superior da Grande Florianópolis
  • 2.
    Circuitos Digitais PLANO DEENSINO IV – CONTEÚDO PROGRAMÁTICO • MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C • MÓDULO 2: CONCEITO DE VARIÁVEL
  • 3.
    Circuitos Digitais PLANO DEENSINO IV – CONTEÚDO PROGRAMÁTICO • MÓDULO 1: CONCEITOS BÀSICOS LINGUAGEM C • MÓDULO 2: CONCEITO DE VARIÁVEL o Tipos de Dados o Variáveis o Saída de Dados o Caracteres de Controle o Constantes o Entrada de Dados o Expressões o Operadores matemáticos o Operadores de atribuição o Precedência dos Operadores
  • 4.
    Circuitos Digitais MÓDULO 1:CONCEITOS BÀSICOS LINGUAGEM C o Tipos de Dados Em Linguagem C é possível representar dois modos de tipos de dados: Números : inteiros (int) ou reais, ou seja, com vírgulas (float). Ponteiros (pointer): usados para armazenar o endereço de outros dados, eles "apontam" para outro dado.
  • 5.
    Circuitos Digitais MÓDULO 1:CONCEITOS BÀSICOS LINGUAGEM C o Tipos de Dados Os dados podem assumir cinco tipos básicos em C que são: •char: Caracter: O valor armazenado é um caractere. Caracateres geralmente são armazenados em códigos (usualmente o código ASCII). •int: Número inteiro é o tipo padrão e o tamanho do conjunto que pode ser representado normalmente depende da máquina em que o programa está rodando. •float: Número em ponto flutuante de precisão simples. São conhecidos normalmente como números reais. •double: Número em ponto flutuante de precisão dupla •void: Este tipo serve para indicar que um resultado não tem um tipo definido. Uma das aplicações deste tipo em C é criar um tipo vazio que pode posteriormente ser modificado para um dos tipos anteriores
  • 6.
    Circuitos Digitais MÓDULO 1:CONCEITOS BÀSICOS LINGUAGEM C o Tipos de Dados - Modificadores Modificadores podem ser aplicados a estes tipos. Estes modificadores são palavras que alteram o tamanho do conjunto de valores que o tipo pode representar. Por exemplo, um modificador permite que possam ser armazenados números inteiros maiores. Um outro modificador obriga que só números sem sinal possam ser armazenados pela variável. Deste modo não é necessário guardar o bit de sinal do número e somente números positivos são armazenados. O resultado prático é que o conjunto praticamente dobra de tamanho. A Tabela abaixo mostra todos os tipos básicos definidos no padrão ANSI.
  • 7.
    Circuitos Digitais MÓDULO 1:CONCEITOS BÀSICOS LINGUAGEM C o Tipos de Dados
  • 8.
    Circuitos Digitais MÓDULO 1:CONCEITOS BÀSICOS LINGUAGEM C o Tipos de Dados – Representação dos Dados O padrão IEEE para aritmética de ponto flutuante (IEEE 754) é o padrão mais amplamente utilizado para o cálculo de ponto flutuante. A Norma IEEE 754-2008 define os formatos adequados para representar números em ponto flutuante de precisão simples (32 bits) e de precisão dupla (64 bits).
  • 9.
    Circuitos Digitais MÓDULO 1:CONCEITOS BÀSICOS LINGUAGEM C o Tipos de Dados Número inteiro (int) Um número inteiro é um número sem vírgula, que pode ser expresso em diferentes bases: • Base decimal: o número inteiro é representado por uma sequência de unidades (de 0 a 9), que não deve começar com o dígito 0. • Base hexadecimal: o número inteiro é representado por uma sequência de unidades (de 0 a 9 ou de A a F (ou de a a f)), que deve começar com 0x ou 0X. • Base octal: o número inteiro é representado por uma sequência de unidades (incluindo apenas os dígitos de 0 a 7), que deve começar com 0. Os inteiros ão assinados por padrão, o que significa que eles têm um sinal.
  • 10.
    Circuitos Digitais MÓDULO 1:CONCEITOS BÀSICOS LINGUAGEM C o Tipos de Dados Número com vírgula (float) Um número com vírgula flutuante é um número com vírgula, porém, ele pode ser representado de várias maneiras: um inteiro decimal : 895 um número com um ponto (e não uma vírgula) : 845.32 uma fração: 27/11 um número exponencial, ou seja, um número (possivelmente com vírgula) seguido da letra e(ou E) e de um inteiro correspondente à potência de 10 (assinado ou não, isto é, precedido por um "+" ou um "-"): 2.75e-2 35.8E+10 .25e-2
  • 11.
    Circuitos Digitais MÓDULO 1:CONCEITOS BÀSICOS LINGUAGEM C o Tipos de Dados Número com vírgula (float) Os números do tipo float são codificados em 32 bits, incluindo: 23 bits para a mantissa 8 bits para o expoente 1 bit para o sinal
  • 12.
    Circuitos Digitais MÓDULO 1:CONCEITOS BÀSICOS LINGUAGEM C o Tipos de Dados Número com vírgula (float) Os números do tipo duplo são codificados em 64 bits, incluindo: 52 bits para a mantissa 11 bits para o expoente 1 bit para o sinal
  • 13.
    Circuitos Digitais MÓDULO 1:CONCEITOS BÀSICOS LINGUAGEM C o Tipos de Dados Número com vírgula (float) Os números do tipo longo duplo são codificados em 80 bits, incluindo: 64 bits para a mantissa 15 bits para o expoente 1 bit para o sinal
  • 14.
    Circuitos Digitais MÓDULO 1:CONCEITOS BÀSICOS LINGUAGEM C o Tipos de Dados Número com vírgula (float) A precisão dos números reais é aproximada. Ela depende do número de casas decimais; dependendo do tipo de real, ela será no mínimo: de 6 números para o tipo float de 15 números para o tipo double de 17 números para o tipo long double
  • 15.
    Circuitos Digitais MÓDULO 1:CONCEITOS BÀSICOS LINGUAGEM C o Tipos de Dados Caractere (char) O tipo char (do inglês character) armazena o valor ASCII de um caractere, ou seja, um número inteiro! Por padrão, os números são assinados, isso significa que eles têm um sinal. Para armazenar informações sobre o sinal (em binário), os computadores usam o complemento de dois. (obs: o complemento de 1 simplesmente vai inverter os bits.)
  • 16.
    Circuitos Digitais MÓDULO 1:CONCEITOS BÀSICOS LINGUAGEM C o Tipos de Dados Caractere (char) na memória, o valor que codifica o caractere – ASCII ( American Standard Code for Information Interchange; "Código Padrão Americano para o Intercâmbio de Informação“)
  • 17.
    Circuitos Digitais MÓDULO 1:CONCEITOS BÀSICOS LINGUAGEM C o Tipos de Dados Caractere (char) #include <stdio.h> int main(void) { int i; for (i = 32; i <= 126; i++) { printf("%c [%d]n", i, i); } return 0; }
  • 18.
    Circuitos Digitais MÓDULO 1:CONCEITOS BÀSICOS LINGUAGEM C o Tipos de Dados
  • 19.
    Circuitos Digitais MÓDULO 1:CONCEITOS BÀSICOS LINGUAGEM C o Declaração- Constante
  • 20.
    Circuitos Digitais MÓDULO 1:CONCEITOS BÀSICOS LINGUAGEM C o Declaração - Constantes
  • 21.
    Circuitos Digitais MÓDULO 1:CONCEITOS BÀSICOS LINGUAGEM C o Declaração - Variáveis