Tipos de Dados. George Darmiton da Cunha Cavalcanti

Tamanho: px
Começar a partir da página:

Download "Tipos de Dados. George Darmiton da Cunha Cavalcanti (gdcc@cin.ufpe.br)"

Transcrição

1 Tipos de Dados George Darmiton da Cunha Cavalcanti

2 Tópicos Introdução Tipos de Dados Primitivos Tipos Cadeia de Caracteres Tipos Definidos pelo Usuário Tipos Matriz Matrizes Associativas Tipos Registro Tipos União Tipos Conjunto Tipos Ponteiro

3 Introdução Um tipo de dado define uma coleção de dados e um conjunto de operações pré-definidas sobre esses dados Um descritor é um conjunto de atributos de uma variável Um objeto representa uma instância de um tipo de dado abstrato definido pelo usuário Uma questão fundamental de projeto: Quais operações são fornecidas para variáveis do tipo e como elas são especificadas?

4 Tipos de Dados Primitivos Tipos de dados não-definidos em termos de outros tipos são chamados tipos de dados primitivos Praticamente todas as linguagens de programação oferecem um conjunto de tipos de dados primitivos Alguns tipos de dados primitivos são reflexos do hardware Por exemplo: os inteiros Outros exigem um pequeno suporte de software para sua implementação

5 Tipos de Dados Primitivos: Inteiro Quase sempre um reflexo do hardware Assim, seu mapeamento é trivial Muitos computadores suportam diferentes tamanhos para inteiros Em Java, diferentes tamanhos para inteiros byte, short, int, long

6 Tipos de Dados Primitivos: Ponto-flutuante Modelam os números reais, mas são aproximações Linguagens para fins científicos suportam pelo menos dois tipos pontoflutuante (float e double) IEEE Floating-Point Standard 754

7 Tipos de Dados Primitivos: Ponto-flutuante

8 Tipos de Dados Primitivos: Decimal Para aplicações comerciais (moeda) Essencial para COBOL C# oferece um tipo de dado decimal Armazena um número fixo de dígitos decimais Vantagem Precisão Desvantagens Faixa de valores restrita Desperdício de memória

9 Tipos de Dados Primitivos: Booleano Mais simples de todos Faixa de valores Dois elementos, um para true e um para false Pode ser implementado como bits, mas geralmente são como bytes Vantagem: legibilidade

10 Tipos de Dados Primitivos: Caractere Armazenados como codificações numéricas O código mais usado: ASCII Uma alternativa, codificação de 16-bit: Unicode Inclui caracteres da maioria das linguagens naturais Usado em Java C# e JavaScript também suportam Unicode

11 Tipos Cadeia de Caracteres Valores consistem em seqüências de caracteres Questões de projeto: É um tipo primitivo ou apenas um tipo especial de vetores de caracteres? As cadeias devem ter tamanho estático ou dinâmico?

12 As Cadeias e Suas Operações Operações típicas: Atribuição e cópia Comparação (=, >, etc.) Concatenação Referências a subcadeias Pattern matching

13 Cadeias nas Linguagens C e C++ Não primitivo Usam vetores char e uma biblioteca de funções que oferecem operações (string.h) SNOBOL4 (uma linguagem de manipulação de cadeias) Primitivo Muitas operações, incluindo pattern matching elaborados Java Primitivo através da classe String

14 Opções de Tamanho da Cadeia Estático COBOL, FORTRAN 90, Pascal, Ada e Java classe String Tamanho dinâmico limitado: C e C++ Um caractere especial é usado para indicar o final da cadeia, em vez de manter seu tamanho Dinâmico (sem máximo): SNOBOL4, Perl, JavaScript Ada suporta todas as opções acima

15 Tipos Cadeia de Caracteres: Avaliação São importantes para a capacidade de escrita de uma linguagem Como um tipo primitivo com tamanho estático, não é caro Por que não usá-las? Tamanho dinâmico é mais flexível Mas o custo compensa?

16 Implementação dos Tipos Cadeias de Caracteres Tamanho estático descritor em tempo de compilação Tamanho dinâmico limitado Podem exigir um descritor em tempo de execução para armazenar tanto o tamanho máximo como o tamanho atual (mas não em C e C++) Tamanho dinâmico Exigem um descritor em tempo de execução Exigem um gerenciamento de armazenagem mais complexo Alocação e desalocação

17 Implementação dos Tipos Cadeias de Caracteres

18 Implementação dos Tipos Cadeias de Caracteres

19 Tipos ordinais definidos pelo usuário Um tipo ordinário é aquele cuja faixa de valores possíveis pode ser associada ao conjunto dos números inteiros positivos Tipos Enumeração Tipos Subfaixa Exemplos de tipos ordinários em Java integer char boolean

20 Tipos Enumeração Todos os valores possíveis, os quais se tornam constantes simbólicas, são enumerados na definição Exemplo C# enum days {mon, tue, wed, thu, fri, sat, sun};

21 Tipos Enumeração Questões de projeto Deve-se permitir que um literal constante apareça em mais de uma definição de tipo e, se assim for, como o tipo de uma ocorrência desse literal é verificado no programa? É possível fazer coerção de valores de enumeração para inteiros?

22 Tipos Enumeração: Avaliação Vantagens em termos de legibilidade Não é necessário codificar uma cor como um número Vantagens em termos de confiabilidade Operações (não permite adicionar cores) Nenhum variável de enumeração será assinalada para valores fora de sua faixa

23 Tipos Subfaixa É uma subsequência de um ordinal Exemplo: é uma subfaixa dos inteiros Projeto em Ada type Days is (mon, tue, wed, thu, fri, sat, sun); subtype Weekdays is Days range mon..fri; subtype Index is Integer range ; Day1: Days; Day2: Weekday; Day2 := Day1;

24 Tipos Subfaixa: Avaliação Legibilidade Informam ao leitor que as variáveis podem armazenar apenas uma faixa de valores Confiabilidade A atribuição de um valor a uma variável fora de sua faixa pode ser detectado pelo compilador como sendo um erro

25 Tipos Matriz Uma matriz é um agregado homogêneo de dados cujo elemento individual é identificado por sua posição no agregado em relação ao primeiro.

26 Questões de Projeto Quais tipos são legais para os subscritos? As expressões de subscrito nas referências a elementos são verificados quanto à faixa? Quando as faixas de subscrito são vinculadas? Quando a alocação da matriz se desenvolve? Quantos subscritos são permitidos? Matrizes podem ser inicializadas quando têm seu armazenamento alocado? Quais tipos de fatias são permitidos, se for o caso?

27 Matrizes e Índices Índices (ou subscritos) fazem mapeamento para elementos array_name(index_value_list) element Sintaxe do Índice FORTRAN, PL/I e Ada usam parênteses Ada usa parênteses para mostrar uma uniformidade entre matrizes e chamadas de funções, pois ambos são mapeamentos Outras linguagens usam colchetes

28 Tipos dos Índices FORTRAN, C: apenas inteiros Pascal: qualquer tipo ordinário inteiro, Boolean, Char, enumeração Ada: inteiro ou enumeração (incluindo Boolean e Char) Java: apenas inteiros C, C++, Perl e Fortran não especificam faixa para checagem Java, ML e C# especificam a checagem da faixa

29 Vinculações de Subscritos e Categorias de Matrizes Matriz Estática As faixas de subscrito estão estaticamente vinculadas e a alocação de armazenamento é estática (feita antes da execução) Vantagem: eficiência (em alocação dinâmica) Matriz Fixa Dinâmica na Pilha Faixas de subscrito estão estaticamente vinculadas, mas a alocação é feita no momento da declaração durante a execução Vantagem: eficiência de espaço

30 Vinculações de Subscritos e Categorias de Matrizes Matriz Dinâmica na Pilha Faixas de subscritos estão dinamicamente vinculadas e a alocação de armazenamento é dinâmica (feita durante a execução) Vantagem: flexibilidade (o tamanho de uma matriz não precisa ser conhecido antes da sua utilização) Matriz Dinâmica no Monte A vinculação das faixas dos índices e a alocação são dinâmicas e podem mudar várias vezes Vantagem: flexibilidade (matrizes podem crescer ou encolher durante a execução do programa)

31 Vinculações de Subscritos e Categorias de Matrizes Matrizes C e C++ que incluem static são estáticas Matrizes C e C++ sem static são fixas dinâmicas na pilha Matrizes Ada podem ser dinâmicas na pilha C e C++ também oferecem matrizes dinâmicas (malloc e free) Perl e JavaScript suportam matrizes dinâmicas

32 Inicialização de Matrizes Algumas linguagens permitem a inicialização no momento em que o armazenamento é alocado Exemplos: C, C++, Java e C# int list [] = {4, 5, 7, 83} Cadeias de caracteres em C e C++ char name [] = freddie ; Matrizes de strings em C e C++ char *names [] = { Bob, Jake, Joe ]; Java inicialização de objetos String String[] names = { Bob, Jake, Joe };

33 Operações com Matrizes APL permite poderosas operações para matrizes, como também operadores unários Exemplo: inverte os elementos das colunas Ada permite atribuição e concatenação de matrizes FORTRAN oferece operações elementares pois são operações entre pares de elementos de matriz Exemplo: operador + entre duas matrizes resulta em uma matriz que é a soma dos pares de elementos das duas matrizes

34 Fatias Uma fatia (slice) de uma matriz é alguma subestrutura desta Fatias são úteis em linguagens que possuem operadores sobre matrizes

35 Fatias: Exemplos Fortran 95 Integer, Dimension (10) :: Vector Integer, Dimension (3,3) :: Mat Integer, Dimension (3,3,3) :: Cube Vector (3:6) é um vetor de 4 elementos

36 Fatias: Exemplos

37 Acessando Matrizes (multidimensionais) Duas maneiras comumente usadas Ordem da linha maior (por linhas) Usado na maioria das linguagens Ordem da coluna maior (por colunas) Usando em Fortran

38 Acessando Matrizes (multidimensionais) Exemplo de matriz Ordem da linha maior (por linhas) 3,4,7,6,2,5,1,3,8 Ordem da coluna maior 3,6,1,4,2,3,7,5,8

39 Localizando um elemento em uma matriz multidimensional Formato geral location (a[i,j]) = address of a[row_lb,col_lb] + (((I - row_lb)*n) + (j - col_lb)) * element_size

40 Matrizes Associativas Uma matriz associativa é um conjunto nãoordenado de elementos indexados por um número igual de valores chamados chaves Chaves definidas pelos usuários devem ser armazenadas Questões de projeto Qual é a forma de referência dos elementos? O tamanho de uma matriz associativa é estático ou dinâmico?

41 Matrizes associativas em Perl Nomes começam com %; literais são delimitados por parênteses %hi_temps = ("Mon"=>77, "Tue"=>79, Wed =>65, ); Os nomes de variáveis escalares iniciamse com $ $hi_temps{"wed"} = 83; Elementos podem ser removidos delete $hi_temps{"tue"};

42 Tipos Registro Um registro é um agregado possivelmente homogêneo de elementos de dados Cada elemento individual é identificado por seu nome Questões de projeto Qual é a forma sintática das referências a campos? São permitidas referências elípticas?

43 Definições de Registros COBOL usa números para aninhar registros; outras linguagens usam definições recursivas 01 EMP-REGISTER. 02 EMP-NAME. 05 FIRST PIC X(20). 05 MID PIC X(10). 05 LAST PIC X(20). 02 HOURLY-RATE PIC 99V99.

44 Definição de Registros em Ada type Emp_Rec_Type is record First: String (1..20); Mid: String (1..10); Last: String (1..20); Hourly_Rate: Float; end record; Emp_Rec: Emp_Rec_Type;

45 Referências a Campos do Registro A maioria das linguagens usam um ponto na notação Emp_Rec.Name Referências elípticas (exemplo em Pascal) empregado.nome := Bob ; empregado.idade := 42; empregado.salario := ; with empregado do begin nome := Bob ; idade := 42; salario := ; end;

46 Avaliação e comparação com matrizes O projeto de registros é direto e, seu uso, seguro Registros são usados quando os dados formam uma coleção heterogênea Acesso aos elementos das matrizes são mais lentos do que para registros, pois os índices são dinâmicos (nomes de campos são estáticos) Índices dinâmicos podem ser usados para acessar campos dos registros, mas rejeitaria a verificação de tipos e também seria mais lento

47 Implementação de Tipos Registro

48 Tipos União Uma união é um tipo que pode armazenar diferentes valores de tipo durante a execução do programa Questões de projeto A verificação de tipos deve ser exigida? Note que qualquer verificação de tipos deve ser dinâmica.

49 Discriminantes vs. Uniões Livres Fortran, C e C++ oferecem construções de união que não há nenhum suporte na linguagem para verificação de tipos A união nessas linguagens são chamadas de uniões livres A verificação de tipos em uniões exige que cada construtor de união inclua um indicador de tipo, chamado discriminante Suportado por Pascal e por Ada

50 Uniões em Ada type Shape is (Circle, Triangle, Rectangle); type Colors is (Red, Green, Blue); type Figure (Form: Shape) is record Filled: Boolean; Color: Colors; case Form is when Circle => Diameter: Float; when Triangle => Leftside, Rightside: Integer; Angle: Float; when Rectangle => Side1, Side2: Integer; end case; end record;

51 Estrutura de um registro variante Uma união discriminada de três variáveis de forma

52 Avaliação de Uniões Construções potencialmente inseguras Não permitem verificação de tipos das referências a uniões Um dos motivos pelos quais FORTRAN, Pascal, C e C++ não são fortemente tipificadas Java e C# não suportam uniões Reflexo da crescente motivação por linguagens de programação mais seguras

53 Tipos Ponteiro Um tipo ponteiro é aquele em que as variáveis têm uma faixa de valores que consistem em endereços de memória e um valor especial, nil Oferece o poder de endereçamento indireto Oferece uma alternativa para gerenciar endereçamento dinamicamente

54 Questões de projeto de ponteiros Quais são o escopo e o tempo de vida de uma variável de ponteiro? Qual é o tempo de vida de uma variável dinâmica no monte? Os ponteiros são restritos quanto ao tipo de valor para o qual eles apontam?

55 Operações com Ponteiros Duas operações fundamentais Atribuição e desreferenciamento Atribuição é usada para fixar o valor de uma variável de ponteiro em um endereço útil Desreferenciamento referencia o valor da célula de memória (não apenas o endereço) Dereferenciamento pode ser implícito ou explícito C++ usa uma operação explícita * j = *ptr fixará j ao valor ao valor alocado em ptr

56 Ilustração de atribuição de ponteiro A operação de atribuição j = *ptr

57 Problemas com Ponteiros Ponteiros Pendurados (Dangling pointers) Um ponteiro que contém o endereço de uma variável dinâmica no monte desalocada Variáveis dinâmicas no monte perdidas Uma variável dinâmica no monte alocada não mais acessível ao programa usuário (geralmente chamada de lixo) Ponteiro p1 é ajustado para apontar para uma variável dinâmica no monte recém-criada Mais tarde, ponteiro p1 é ajustado para outra variável dinâmica no monte recém-criada Vazamento de memória

58 Sumário Os tipos de dados de uma linguagem são uma grande parte daquilo que determina o seu estilo e seu uso Os tipos de dados primitivos da maioria das linguagens imperativas incluem os tipos numérico, caractere e booleano Os tipos enumeração e a subfaixa definidos pelo usuário são convenientes e aumentam a legibilidade e a confiabilidade dos programas Matrizes e registros estão presentes na maioria das linguagens de programação Ponteiros são usados para dar flexibilidade de endereçamento e para controlar o gerenciamento de armazenamento dinâmica

Tipos de Dados. George Darmiton da Cunha Cavalcanti

Tipos de Dados. George Darmiton da Cunha Cavalcanti Tipos de Dados George Darmiton da Cunha Cavalcanti (gdcc@cin.ufpe.br) Tópicos Introdução Tipos de Dados Primitivos Tipos Cadeia de Caracteres Tipos Definidos pelo Usuário Tipos Matriz Matrizes Associativas

Leia mais

Conceitos de Linguagens de Programação

Conceitos de Linguagens de Programação Conceitos de Linguagens de Programação Aula 07 Nomes, Vinculações, Escopos e Tipos de Dados Edirlei Soares de Lima Introdução Linguagens de programação imperativas são abstrações

Leia mais

Paradigmas de Programação

Paradigmas de Programação Paradigmas de Programação Tipos de Dados Aula 5 Prof.: Edilberto M. Silva http://www.edilms.eti.br Prof. Edilberto Silva / edilms.eti.br Tipos de Dados Sistema de tipos Tipos de Dados e Domínios Métodos

Leia mais

Programação Estruturada. Programação Estruturada. Idéias Básicas da Programação Estruturada

Programação Estruturada. Programação Estruturada. Idéias Básicas da Programação Estruturada Programação Estruturada Programação Estruturada Paradigmas de Linguagens de Programação As linguagens desse paradigma são muitas vezes chamadas de linguagens convencionais, procedurais ou imperativas.

Leia mais

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008 Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,

Leia mais

E/S CPU. Memória (Instruções e dados) 2 PARADIGMA IMPERATIVO. Instruções e dados. Resultados das operações. Unidade lógica e aritmética

E/S CPU. Memória (Instruções e dados) 2 PARADIGMA IMPERATIVO. Instruções e dados. Resultados das operações. Unidade lógica e aritmética 2 PARADIGMA IMPERATIVO 2.1 CONCEITO As linguagens que pertencem ao paradigma imperativo tomam por base a perspectiva da máquina. Ou seja, no modo como o computador executa programas em linguagem de máquina.

Leia mais

Linguagens de Programação Aula 10

Linguagens de Programação Aula 10 Linguagens de Programação Aula 10 Celso Olivete Júnior olivete@fct.unesp.br Na aula passada As sentenças de controle das LP imperativas ocorrem em diversas categorias: seleção, seleção múltipla, iteração

Leia mais

JSP - ORIENTADO A OBJETOS

JSP - ORIENTADO A OBJETOS JSP Orientação a Objetos... 2 CLASSE:... 2 MÉTODOS:... 2 Método de Retorno... 2 Método de Execução... 2 Tipos de Dados... 3 Boolean... 3 Float... 3 Integer... 4 String... 4 Array... 4 Primeira:... 4 Segunda:...

Leia mais

Tipos de Dados Simples

Tipos de Dados Simples Programação 11543: Engenharia Informática 6638: Tecnologias e Sistemas de Informação Cap. 3 Tipos de Dados Simples Tipos de Dados Simples Objectivos: Hierarquia de tipos de dados Tipos de dados simples

Leia mais

Identificação das variáveis de entrada; resultados/variáveis de saída e método ou solução. (procedimentos e funções)

Identificação das variáveis de entrada; resultados/variáveis de saída e método ou solução. (procedimentos e funções) Aulas anteriores... Formulação adequada do problema Identificação das variáveis de entrada; resultados/variáveis de saída e método ou solução Definição do algoritmo Método de decomposição hierárquica utilizando

Leia mais

Estrutura de Dados Básica

Estrutura de Dados Básica Estrutura de Dados Básica Professor: Osvaldo Kotaro Takai. Aula 4: Tipos de Dados O objetivo desta aula é apresentar os tipos de dados manipulados pela linguagem C, tais como vetores e matrizes, bem como

Leia mais

5 - Vetores e Matrizes Linguagem C CAPÍTULO 5 VETORES E MATRIZES

5 - Vetores e Matrizes Linguagem C CAPÍTULO 5 VETORES E MATRIZES CAPÍTULO 5 5 VETORES E MATRIZES 5.1 Vetores Um vetor armazena uma determinada quantidade de dados de mesmo tipo. Vamos supor o problema de encontrar a média de idade de 4 pessoas. O programa poderia ser:

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

AULA 02. 1. Uma linguagem de programação orientada a objetos

AULA 02. 1. Uma linguagem de programação orientada a objetos AULA 02 TECNOLOGIA JAVA O nome "Java" é usado para referir-se a 1. Uma linguagem de programação orientada a objetos 2. Uma coleção de APIs (classes, componentes, frameworks) para o desenvolvimento de aplicações

Leia mais

Sintaxe Básica de Java Parte 1

Sintaxe Básica de Java Parte 1 Sintaxe Básica de Java Parte 1 Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marcioubeno.com Fonte: Material da Profª Karina Oliveira Estrutura de Programa Um programa

Leia mais

Exemplos. char c; int i=67;... c= A ; c=c+1; if (c== B )... c=i; i=c; i++; if (i>= C )...

Exemplos. char c; int i=67;... c= A ; c=c+1; if (c== B )... c=i; i=c; i++; if (i>= C )... Caracteres Conceitos Tipo de dados simples (char), cujo valor é a codificação numérica de um caracter; Caracteres literais são representados por aspas simples, como em A e a ; Variáveis do tipo char podem

Leia mais

Algoritmos e Programação _ Departamento de Informática

Algoritmos e Programação _ Departamento de Informática 5 TIPOS DE DADOS Todo o trabalho realizado por um computador é baseado na manipulação das informações contidas em sua memória. De um modo geral estas informações podem ser classificadas em dois tipos:

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Programação Introdução a Linguagem C Construções Básicas Programa em C #include int main ( ) { Palavras Reservadas } float celsius ; float farenheit ; celsius = 30; farenheit = 9.0/5

Leia mais

Tipos de Dados, Tipos Abstratos de Dados Estruturas de Dados

Tipos de Dados, Tipos Abstratos de Dados Estruturas de Dados Tipos de Dados, Tipos Abstratos de Dados Estruturas de Dados Tipo de dados, tipo abstrato de dados, estruturas de dados Termos parecidos, mas com significados diferentes Tipo de dado Em linguagens de programação

Leia mais

PROGRAMA DE DISCIPLINA

PROGRAMA DE DISCIPLINA PROGRAMA DE DISCIPLINA Disciplina: Introdução à Programação Carga horária total: 60 Carga horária teórica: 0 Carga horária prática: 60 Código da Disciplina: CCMP0041 Período de oferta: 2010.2 Turma: CA

Leia mais

Aula 4 Pseudocódigo Tipos de Dados, Expressões e Variáveis

Aula 4 Pseudocódigo Tipos de Dados, Expressões e Variáveis 1. TIPOS DE DADOS Todo o trabalho realizado por um computador é baseado na manipulação das informações contidas em sua memória. Estas informações podem ser classificadas em dois tipos: As instruções, que

Leia mais

MC102 Algoritmos e programação de computadores Aula 3: Variáveis

MC102 Algoritmos e programação de computadores Aula 3: Variáveis MC102 Algoritmos e programação de computadores Aula 3: Variáveis Variáveis Variáveis são locais onde armazenamos valores na memória. Toda variável é caracterizada por um nome, que a identifica em um programa,

Leia mais

VIII. VARIÁVEIS. Tabela I ARQUITETURA DA MEMÓRIA. 0x0000 0x34 0x0001 0xB0 0x0002 0x23. 0xFFFF 0x00

VIII. VARIÁVEIS. Tabela I ARQUITETURA DA MEMÓRIA. 0x0000 0x34 0x0001 0xB0 0x0002 0x23. 0xFFFF 0x00 Fundamentos da Programação 32 A. Conceito Variáveis contém dados: VIII. VARIÁVEIS de entrada que o computador precisa manipular; de saída que o computador precisa imprimir; e temporários, utilizados de

Leia mais

INF 1005 Programação I

INF 1005 Programação I INF 1005 Programação I Aula 12 Cadeia de Caracteres (Strings) Edirlei Soares de Lima Caracteres Até o momento nós somente utilizamos variáveis que armazenam números (int, float ou

Leia mais

PROGRAMAÇÃO ESTRUTURADA. CC 2º Período

PROGRAMAÇÃO ESTRUTURADA. CC 2º Período PROGRAMAÇÃO ESTRUTURADA CC 2º Período PROGRAMAÇÃO ESTRUTURADA Aula 06: Ponteiros Declarando e utilizando ponteiros Ponteiros e vetores Inicializando ponteiros Ponteiros para Ponteiros Cuidados a serem

Leia mais

Estrutura de Dados. Introdução a Ponteiros. Prof. Gerson Borges Estrutura de Dados I 1

Estrutura de Dados. Introdução a Ponteiros. Prof. Gerson Borges Estrutura de Dados I 1 Estrutura de Dados Introdução a Ponteiros Prof. Gerson Borges Estrutura de Dados I 1 Sumário è Explicação da importância do planejamento de ensino; è Métodos e técnicas que iremos trabalhar durante o semestre;

Leia mais

Introdução. A verificação de tipos pode ser estática e dinâmica

Introdução. A verificação de tipos pode ser estática e dinâmica Análise Semântica Introdução Verifica se as construções sintaticamente corretas possuem significado lógico dentro da linguagem Verifica a consistência da declaração e uso dos identificadores Além disso,

Leia mais

Roteiro 1: Dados, variáveis, operadores e precedência

Roteiro 1: Dados, variáveis, operadores e precedência 1. Introdução Universidade Federal do ABC Disciplina: Processamento da Informação (BC-0505) Assunto: Dados, variáveis, operadores e precedência Roteiro 1: Dados, variáveis, operadores e precedência Nesta

Leia mais

Criar a classe Aula.java com o seguinte código: Compilar e Executar

Criar a classe Aula.java com o seguinte código: Compilar e Executar Introdução à Java Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Código Exemplo da Aula Criar a classe Aula.java com o seguinte código: public class Aula { public static void

Leia mais

A declaração de uma variável vel define o seu tipo. O tipo do dado define como ele será: Armazenado na memória. Manipulado pela ULA.

A declaração de uma variável vel define o seu tipo. O tipo do dado define como ele será: Armazenado na memória. Manipulado pela ULA. Representação de Dados Tipos de dados: Caracteres (letras, números n e símbolos). s Lógicos. Inteiros. Ponto flutuante: Notações decimais: BCD. A declaração de uma variável vel define o seu tipo. O tipo

Leia mais

INF 1005 Programação I

INF 1005 Programação I INF 1005 Programação I Aula 03 Introdução a Linguagem C Edirlei Soares de Lima Estrutura de um Programa C Inclusão de bibliotecas auxiliares: #include Definição de constantes:

Leia mais

PROGRAMA DE DISCIPLINA

PROGRAMA DE DISCIPLINA PROGRAMA DE DISCIPLINA Disciplina: INTRODUÇÃO À PROGRAMAÇÃO Carga horária total: 60 h Carga horária teórica: 30 h Carga horária prática: 30 h Código da Disciplina: CCMP0041 Período de oferta: 2015.2 Turma:

Leia mais

Sistemas Operacionais 3º bimestre. Dierone C.Foltran Jr. dcfoltran@yahoo.com

Sistemas Operacionais 3º bimestre. Dierone C.Foltran Jr. dcfoltran@yahoo.com Sistemas Operacionais 3º bimestre Dierone C.Foltran Jr. dcfoltran@yahoo.com Sistema de Arquivos (1) Todas as aplicações precisam armazenar e recuperar informações. Considerações sobre os processos: Espaço

Leia mais

Curso de C para Engenharias

Curso de C para Engenharias Aula 4 Cristiano Dalbem Dennis Balreira Gabriel Moreira Miller Biazus Raphael Lupchinski Universidade Federal do Rio Grande do Sul Instituto de Informática Grupo PET Computação Sintaxe Funções Exemplos

Leia mais

Estruturas de controle no nível de sentença

Estruturas de controle no nível de sentença Estruturas de controle no nível de sentença Linguagens de Programação Marco A L Barbosa cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual 4.0 Internacional.

Leia mais

Tipos agregados. Tipos estruturados

Tipos agregados. Tipos estruturados Tipos agregados ou Tipos estruturados permitem a implementação de agrupamentos de dados. exemplos: lista de valores que representam as taxas mensais de inflação durante um ano; ficha de cadastro de um

Leia mais

Introdução à Linguagem

Introdução à Linguagem Introdução à Linguagem Curso de Nivelamento do PPGMNE Janeiro / 2011 Juliano J. Scremin jjscremin@jjscremin.t5.com.br Um pouco de história Um pouco de história: Nascimento do Python Um pouco de história:

Leia mais

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Um Sistema Gerenciador de Banco de Dados (SGBD) é constituído por um conjunto de dados associados a um conjunto de programas para acesso a esses

Leia mais

Algoritmos e Programação Conceitos e Estruturas básicas (Variáveis, constantes, tipos de dados)

Algoritmos e Programação Conceitos e Estruturas básicas (Variáveis, constantes, tipos de dados) Algoritmos e Programação Conceitos e Estruturas básicas (Variáveis, constantes, tipos de dados) Os algoritmos são descritos em uma linguagem chamada pseudocódigo. Este nome é uma alusão à posterior implementação

Leia mais

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br LP II Estrutura de Dados Introdução e Linguagem C Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br Resumo da aula Considerações Gerais Introdução a Linguagem C Variáveis e C Tipos de

Leia mais

Aula 2 Variáveis. Precisamos armazenar os tipos de dados da aula anterior (inteiros, reais, literais e lógicos) em memória. Como fazer?

Aula 2 Variáveis. Precisamos armazenar os tipos de dados da aula anterior (inteiros, reais, literais e lógicos) em memória. Como fazer? Aula 2 Variáveis 1. Introdução Computadores precisam manipular informações. Por conseguinte, precisam armazená-las em sua memória. Para isso, usamos a abstração de variáveis. 2. Sistemas de numeração Explicar

Leia mais

3 Classes e instanciação de objectos (em Java)

3 Classes e instanciação de objectos (em Java) 3 Classes e instanciação de objectos (em Java) Suponhamos que queremos criar uma classe que especifique a estrutura e o comportamento de objectos do tipo Contador. As instâncias da classe Contador devem

Leia mais

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES 3.1 - IDENTIFICADORES Os objetos que usamos no nosso algoritmo são uma representação simbólica de um valor de dado. Assim, quando executamos a seguinte instrução:

Leia mais

Paradigmas de Linguagens de Programação. Tipos de Dados

Paradigmas de Linguagens de Programação. Tipos de Dados Tipos de Dados Cristiano Lehrer Introdução (1/2) 1956: FORTRAN I 1983: ADA INTEGER, REAL, arrays. Usuário pode criar um único tipo para cada categoria de variáveis no espaço de problemas e deixar o sistema

Leia mais

Apresentação... Nome: Vanderlei Cordeiro Frazão

Apresentação... Nome: Vanderlei Cordeiro Frazão Apresentação... Nome: Vanderlei Cordeiro Frazão Formação: - Bacharel em Sistemas de Informação (Uniguaçu) - Pós graduação em Docência no Ensino Superior (Uniguaçu) - Licenciatura em Informática (UTFPR)

Leia mais

Armazenamento de Dados. Prof. Antonio Almeida de Barros Junior

Armazenamento de Dados. Prof. Antonio Almeida de Barros Junior Armazenamento de Dados Prof. Antonio Almeida de Barros Junior 1 Armazenamento de Dados Todos os dados que utilizamos até o momento, ficavam armazenados apenas na memória. Ao final da execução dos programas,

Leia mais

AULA 1: PARADIGMAS DE PROGRAMAÇÃO

AULA 1: PARADIGMAS DE PROGRAMAÇÃO 1 AULA 1: PARADIGMAS DE PROGRAMAÇÃO Curso: Ciência da Computação Profª.: Luciana Balieiro Cosme Ementa 2 Programação Imperativa. Programação Paralela e Concorrente. Programação Lógica. Programação Funcional.

Leia mais

Introdução. Paradigmas de Linguagens. Introdução. Tipos de Dados Primitivos. Prof. Ms. Luiz Alberto Contato:

Introdução. Paradigmas de Linguagens. Introdução. Tipos de Dados Primitivos. Prof. Ms. Luiz Alberto Contato: Paradigmas de Linguagens Prof. Ms. Luiz Alberto Contato: lasf.bel@gmail.com Baseada no material do prof. Celso Olivete Júnior Introdução Um tipo de dado define uma coleção de dados e um conjunto de operações

Leia mais

Registros. Técnicas de Programação. Rafael Silva Guimarães :p://:p.ci.ifes.edu.br/informa@ca/rafael_guimaraes

Registros. Técnicas de Programação. Rafael Silva Guimarães :p://:p.ci.ifes.edu.br/informa@ca/rafael_guimaraes Rafael Silva Guimarães :p://:p.ci.ifes.edu.br/informa@ca/rafael_guimaraes Registros Técnicas de Programação Baseado no material do Prof. Rafael Vargas Mesquita Conceito de Registro (Struct) Vetores e Matrizes

Leia mais

Estruturas de Dados Pilhas, Filas e Deques

Estruturas de Dados Pilhas, Filas e Deques Estruturas de Dados Pilhas, Filas e Deques Prof. Eduardo Alchieri Estruturas de Dados Pilhas Pilhas Lista LIFO (Last In, First Out) Os elementos são colocados na estrutura (pilha) e retirados em ordem

Leia mais

Componentes da linguagem C++

Componentes da linguagem C++ Componentes da linguagem C++ C++ é uma linguagem de programação orientada a objetos (OO) que oferece suporte às características OO, além de permitir você realizar outras tarefas, similarmente a outras

Leia mais

Unidade 5: Sistemas de Representação

Unidade 5: Sistemas de Representação Arquitetura e Organização de Computadores Atualização: 9/8/ Unidade 5: Sistemas de Representação Números de Ponto Flutuante IEEE 754/8 e Caracteres ASCII Prof. Daniel Caetano Objetivo: Compreender a representação

Leia mais

Capítulo 2: Introdução à Linguagem C

Capítulo 2: Introdução à Linguagem C Capítulo 2: Introdução à Linguagem C INF1005 Programação 1 Pontifícia Universidade Católica Departamento de Informática Programa Programa é um algoritmo escrito em uma linguagem de programação. No nosso

Leia mais

Capítulo 6. Tipos de Dados

Capítulo 6. Tipos de Dados Capítulo 6 Tipos de Dados 1. Introdução Tipo de Dados: define uma coleção de valores de dados e um conjunto de operações pré-definidas sobre eles Um descritor é a coleção de atributos de uma variável Um

Leia mais

Conceituação. Linguagens de Programação Conceitos e Técnicas. Tempos de Amarração. Amarração Estática X Dinâmica. Identificador.

Conceituação. Linguagens de Programação Conceitos e Técnicas. Tempos de Amarração. Amarração Estática X Dinâmica. Identificador. Conceituação Conceitos e Técnicas Amarrações Prof. Jairo Francisco de Souza Amarração (ou binding) é uma associação entre entidades de programação, tais como entre uma variável e seu valor ou entre um

Leia mais

Expressões. Prof. Alberto Costa Neto alberto@ufs.br. Linguagens de Programação. Departamento de Computação Universidade Federal de Sergipe

Expressões. Prof. Alberto Costa Neto alberto@ufs.br. Linguagens de Programação. Departamento de Computação Universidade Federal de Sergipe Linguagens de Programação Departamento de Computação Universidade Federal de Sergipe Expressão é uma frase de um programa que ao ser avaliada retorna um valor Tipos Literais Agregados Chamadas de Função

Leia mais

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br Introdução O computador como ferramenta indispensável: Faz parte das nossas vidas; Por si só não faz nada de útil; Grande capacidade de resolução

Leia mais

Universidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática

Universidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática Folha 1-1 Introdução à Linguagem de Programação JAVA 1 Usando o editor do ambiente de desenvolvimento JBUILDER pretende-se construir e executar o programa abaixo. class Primeiro { public static void main(string[]

Leia mais

Sistema de Numeração e Conversão entre Sistemas. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h

Sistema de Numeração e Conversão entre Sistemas. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h Sistema de Numeração e Conversão entre Sistemas. Prof. Rômulo Calado Pantaleão Camara Carga Horária: 60h Representação de grandeza com sinal O bit mais significativo representa o sinal: 0 (indica um número

Leia mais

Vetores. Vetores. Figura 1 Exemplo de vetor com 10 elementos

Vetores. Vetores. Figura 1 Exemplo de vetor com 10 elementos Vetores Nos capítulos anteriores estudamos as opções disponíveis na linguagem C para representar: Números inteiros em diversos intervalos. Números fracionários com várias alternativas de precisão e magnitude.

Leia mais

Organização de Computadores 1

Organização de Computadores 1 Organização de Computadores 1 5 CONJUNTO DE INSTRUÇÕES Prof. Luiz Gustavo A. Martins Introdução O que é um conjunto de instruções? Coleção completa das instruções que a CPU é capaz de executar (entende).

Leia mais

2. OPERADORES... 6 3. ALGORITMOS, FLUXOGRAMAS E PROGRAMAS... 8 4. FUNÇÕES... 10

2. OPERADORES... 6 3. ALGORITMOS, FLUXOGRAMAS E PROGRAMAS... 8 4. FUNÇÕES... 10 1. TIPOS DE DADOS... 3 1.1 DEFINIÇÃO DE DADOS... 3 1.2 - DEFINIÇÃO DE VARIÁVEIS... 3 1.3 - VARIÁVEIS EM C... 3 1.3.1. NOME DAS VARIÁVEIS... 3 1.3.2 - TIPOS BÁSICOS... 3 1.3.3 DECLARAÇÃO DE VARIÁVEIS...

Leia mais

Resolução de problemas e desenvolvimento de algoritmos

Resolução de problemas e desenvolvimento de algoritmos SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Resolução de problemas e desenvolvimento de algoritmos Prof. Vanderlei Bonato Prof. Cláudio Fabiano Motta Toledo Sumário Análise e solução de

Leia mais

Noções sobre Objetos e Classes

Noções sobre Objetos e Classes Noções sobre Objetos e Classes Prof. Marcelo Cohen 1. Elementos de programação Revisão de programação variáveis, tipos de dados expressões e operadores cadeias de caracteres escopo de variáveis Revisão

Leia mais

Linguagens de. Aula 02. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br

Linguagens de. Aula 02. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Linguagens de Programação III Aula 02 Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Linguagens de Programação Técnica de comunicação padronizada para enviar instruções a um computador. Assim

Leia mais

Unidade IV: Ponteiros, Referências e Arrays

Unidade IV: Ponteiros, Referências e Arrays Programação com OO Acesso em Java a BD Curso: Técnico em Informática Campus: Ipanguaçu José Maria Monteiro Pontifícia Universidade Católica do Rio de Janeiro PUC-Rio Departamento Clayton Maciel de Informática

Leia mais

Programação de Computadores I. Ponteiros

Programação de Computadores I. Ponteiros Ponteiros Prof. Edwar Saliba Júnior Outubro de 2012 Unidade 13 Ponteiros 1 Identificadores e Endereços Na linguagem C, uma declaração de variável faz associação entre um identificador e endereços de memória;

Leia mais

Programação: Tipos, Variáveis e Expressões

Programação: Tipos, Variáveis e Expressões Programação de Computadores I Aula 05 Programação: Tipos, Variáveis e Expressões José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/56 Valores Valor é uma entidade

Leia mais

Programação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre

Programação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre Programação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre Cap. 02 Fundamentos de Linguagens Sumário : Linguagem, alfabeto e gramática

Leia mais

Prof. Yandre Maldonado - 1 PONTEIROS. Prof. Yandre Maldonado e Gomes da Costa

Prof. Yandre Maldonado - 1 PONTEIROS. Prof. Yandre Maldonado e Gomes da Costa Prof. Yandre Maldonado - 1 PONTEIROS Prof. Yandre Maldonado e Gomes da Costa PONTEIROS Prof. Yandre Maldonado - 2 Ponteiro é uma variável que possui o endereço de outra variável; É um poderoso recurso

Leia mais

Semântica de Referência e Vetores / Matrizes

Semântica de Referência e Vetores / Matrizes Semântica de Referência e Vetores / Matrizes Prof. Edwar Saliba Júnior Fevereiro de 2011 Unidade 04 Semântica de Referência e Vetores / Matrizes 1 Conteúdo Semântica de Java Referência entre Objetos Perda

Leia mais

Introdução a POO. Introdução a Linguagem C++ e POO

Introdução a POO. Introdução a Linguagem C++ e POO Introdução a POO Marcio Santi Linguagem C++ Introdução a Linguagem C++ e POO Programação Orientada a Objetos (POO) e C++ Recursos C++ não relacionados às classes Incompatibilidades entre C e C++ Classes

Leia mais

Fonte (livro-texto): Conceitos de Linguagens de Programação, 4ed. Robert W. Sebesta

Fonte (livro-texto): Conceitos de Linguagens de Programação, 4ed. Robert W. Sebesta 1 Fonte (livro-texto): Conceitos de Linguagens de Programação, 4ed. Robert W. Sebesta Agenda 1. Razões para estudar conceitos de LPs 2. Domínios de programação 3. Critérios de avaliação de linguagens 4.

Leia mais

Curso: Técnico de Informática Disciplina: Redes de Computadores. 1- Apresentação Binária

Curso: Técnico de Informática Disciplina: Redes de Computadores. 1- Apresentação Binária 1- Apresentação Binária Os computadores funcionam e armazenam dados mediante a utilização de chaves eletrônicas que são LIGADAS ou DESLIGADAS. Os computadores só entendem e utilizam dados existentes neste

Leia mais

Informática I. Aula 6. http://www.ic.uff.br/~bianca/informatica1/ Aula 6-12/09/2007 1

Informática I. Aula 6. http://www.ic.uff.br/~bianca/informatica1/ Aula 6-12/09/2007 1 Informática I Aula 6 http://www.ic.uff.br/~bianca/informatica1/ Aula 6-12/09/2007 1 Ementa Noções Básicas de Computação (Hardware, Software e Internet) HTML e Páginas Web Internet e a Web Javascript e

Leia mais

UFG - Instituto de Informática

UFG - Instituto de Informática UFG - Instituto de Informática Curso: Engenharia de Software Arquitetura de Software Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 9 Mapeamento em JPA Introdução O mapeamento objeto-relacional

Leia mais

Curso: Ciência da Computação Disciplina: Construção de Compiladores Período: 2010-1 Prof. Dr. Raimundo Moura

Curso: Ciência da Computação Disciplina: Construção de Compiladores Período: 2010-1 Prof. Dr. Raimundo Moura UFPI CCN DIE Curso: Ciência da Computação Disciplina: Construção de Compiladores Período: 2010-1 Prof. Dr. Raimundo Moura O projeto Desenvolver um compilador de um subconjunto básico da linguagem PORTUGOL.

Leia mais

Programação de Computadores I. Linguagem C Vetores

Programação de Computadores I. Linguagem C Vetores Linguagem C Vetores Prof. Edwar Saliba Júnior Fevereiro de 2011 Unidade 08 Vetores 1 Vetores Sintaxe: tipo_variável nome_vetor[tamanho]; Um vetor é uma variável que possui várias ocorrências de um mesmo

Leia mais

Geração e Otimização de Código

Geração e Otimização de Código Geração e Otimização de Código Representação de código intermediária Código de três endereços, P-código Técnicas para geração de código Otimização de código Prof. Thiago A. S. Pardo 1 Estrutura geral de

Leia mais

O COMPUTADOR. Introdução à Computação

O COMPUTADOR. Introdução à Computação O COMPUTADOR Introdução à Computação Sumário O Hardware O Software Linguagens de Programação Histórico da Linguagem C Componentes Básicos do Computador O HARDWARE: O equipamento propriamente dito. Inclui:

Leia mais

Métodos Os métodos de uma classe podem ser classificados como construtores, destrutores, funções ou procedimentos.

Métodos Os métodos de uma classe podem ser classificados como construtores, destrutores, funções ou procedimentos. Métodos Os métodos de uma classe podem ser classificados como construtores, destrutores, funções ou procedimentos. Construtor: método executado por uma CLASSE (e não por um objeto, instância da classe)

Leia mais

ESTRUTURA DE DADOS -VARIÁVEIS COMPOSTAS. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

ESTRUTURA DE DADOS -VARIÁVEIS COMPOSTAS. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br ESTRUTURA DE DADOS -VARIÁVEIS COMPOSTAS Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br ROTEIRO Variáveis compostas homogêneas Arrays Vetores Matrizes Variáveis compostas heterogêneas Registros

Leia mais

Projeto e Desenvolvimento de Algoritmos

Projeto e Desenvolvimento de Algoritmos Projeto e Desenvolvimento de Algoritmos Variáveis Adriano Cruz e Jonas Knopman Índice Objetivos Introdução Modelo de Memória Armazenamento de Dados Numéricos Dados Inteiros Dados Reais Armazenamento de

Leia mais

Introdução à Lógica de Programação

Introdução à Lógica de Programação Introdução à Lógica de Programação Sistemas Numéricos As informações inseridas em um computador são traduzidos em dados, ou seja, em sinais que podem ser manipulados pelo computador. O computador trabalha

Leia mais

Linguagens de Programação ( Microsoft Visual C# )

Linguagens de Programação ( Microsoft Visual C# ) Linguagens de Programação ( Microsoft Visual C# ) O C# (C Sharp) é uma linguagem de programação desenvolvida pela Microsoft. A escolha de C# para uso neste estudo, deve-se a sua simplicidade, versatilidade

Leia mais

Algoritmo. Linguagem natural: o Ambígua o Imprecisa o Incompleta. Pseudocódigo: o Portugol (livro texto) o Visualg (linguagem) Fluxograma

Algoritmo. Linguagem natural: o Ambígua o Imprecisa o Incompleta. Pseudocódigo: o Portugol (livro texto) o Visualg (linguagem) Fluxograma Roteiro: Conceitos básicos de algoritmo, linguagem, processador de linguagem e ambiente de programação; Aspectos fundamentais da organização e do funcionamento de um computador; Construções básicas de

Leia mais

13 Números Reais - Tipo float

13 Números Reais - Tipo float 13 Números Reais - Tipo float Ronaldo F. Hashimoto e Carlos H. Morimoto Até omomentonoslimitamosaouso do tipo inteiro para variáveis e expressões aritméticas. Vamos introduzir agora o tipo real. Ao final

Leia mais

Estrutura da linguagem de programação C Prof. Tiago Eugenio de Melo tiago@comunidadesol.org

Estrutura da linguagem de programação C Prof. Tiago Eugenio de Melo tiago@comunidadesol.org Estrutura da linguagem de programação C Prof. Tiago Eugenio de Melo tiago@comunidadesol.org Breve Histórico A linguagem de programação C foi criada na década de 70, por Dennis Ritchie, que a implementou,

Leia mais

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA Responda 1) Quem desenvolveu a linguagem C? Quando? 2) Existe alguma norma sobre a sintaxe da linguagem C? 3) Quais são os tipos básicos de dados disponíveis na linguagem C? 4) Quais são as principais

Leia mais

1.6. Tratamento de Exceções

1.6. Tratamento de Exceções Paradigmas de Linguagens I 1 1.6. Tratamento de Exceções Uma exceção denota um comportamento anormal, indesejado, que ocorre raramente e requer alguma ação imediata em uma parte do programa [GHE 97, DER

Leia mais

INTRODUÇÃO AO C++ SISTEMAS DE INFORMAÇÃO DR. EDNALDO B. PIZZOLATO

INTRODUÇÃO AO C++ SISTEMAS DE INFORMAÇÃO DR. EDNALDO B. PIZZOLATO INTRODUÇÃO AO C++ SISTEMAS DE INFORMAÇÃO DR. EDNALDO B. PIZZOLATO Tópicos Estrutura Básica B de Programas C e C++ Tipos de Dados Variáveis Strings Entrada e Saída de Dados no C e C++ INTRODUÇÃO O C++ aceita

Leia mais

AULA 12 CLASSES DA API JAVA. Disciplina: Programação Orientada a Objetos Professora: Alba Lopes alba.lopes@ifrn.edu.br

AULA 12 CLASSES DA API JAVA. Disciplina: Programação Orientada a Objetos Professora: Alba Lopes alba.lopes@ifrn.edu.br AULA 12 CLASSES DA API JAVA Disciplina: Programação Orientada a Objetos Professora: Alba Lopes alba.lopes@ifrn.edu.br CLASSES DA API JAVA A maioria dos programas de computador que resolvem problemas do

Leia mais

Operaçõe õ s c om o Strings Intr oduç ão a o Ponte iros o e Funçõe õ s

Operaçõe õ s c om o Strings Intr oduç ão a o Ponte iros o e Funçõe õ s Universidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação Operações com Strings Introdução a Ponteiros e Funções Profa Rosana Braga 1 Strings Strings são seqüências de caracteres

Leia mais

Linguagem de Programação JAVA

Linguagem de Programação JAVA AlinguagemJava 3 Case sensitive umavariavel É DIFERENTE DE umavariavel (aplicado para nome de classes, objetos, métodos, variáveis e constantes. Ousoincorretodealgumnomegeraráumerrodecompilação Blocosde

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Gerência de Arquivos Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Conceituação de arquivos Implementação do sistemas de arquivo Introdução Sistema de

Leia mais

Circuitos Digitais. Conteúdo. Sistema de Numeração e Códigos :: Conversões de Binário para Decimal SISTEMA DE NUMERAÇÃO E CÓDIGOS

Circuitos Digitais. Conteúdo. Sistema de Numeração e Códigos :: Conversões de Binário para Decimal SISTEMA DE NUMERAÇÃO E CÓDIGOS Ciência da Computação Sistemas de Numeração e Conversões Prof. Sergio Ribeiro Material adaptado das aulas do Prof. José Maria da UFPI Conteúdo Conversões de binário para decimal. Conversões de decimal

Leia mais

Introdução aos cálculos de datas

Introdução aos cálculos de datas Page 1 of 7 Windows SharePoint Services Introdução aos cálculos de datas Aplica-se a: Microsoft Office SharePoint Server 2007 Ocultar tudo Você pode usar fórmulas e funções em listas ou bibliotecas para

Leia mais

Lição 9 Trabalhando com bibliotecas de classes

Lição 9 Trabalhando com bibliotecas de classes Lição 9 Trabalhando com bibliotecas de classes Introdução à Programação I 1 Objetivos Ao final da lição, o estudante deverá estar apto a: Explicar o que é programação orientada a objetos e alguns de seus

Leia mais