Programação II. Introdução à Linguagem C

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

Download "Programação II. Introdução à Linguagem C"

Transcrição

1 Programação II Introdução à Linguagem C

2 Um Pouco da História da Linguagem C Origem: década de 70 (Dennis Ritchie) BCPL B C. Prover acesso de baixo nível ao hardware (CPU, I/Os e periféricos) e se entender bem com o Assembly. Portável para que o SO executasse em diferentes plataformas de hardware, além de ter um bom desempenho e otimizar o uso de memória.

3 Um Pouco da História da Linguagem C Dennis Ritchie

4 A Necessidade de uma Padronização Foi criado um padrão para C pelo ANSI (American National Standards Institute), em 1989 como ANSI X Programming Language C, conhecido com ANSI C ou C89. Um ano depois o padrão foi adotado pela ISO (International Organization for Standardization) como ISO/IEC 9899:1990, também chamado de C90. Na prática, C89 (ANSI C) e C90 (ISO C) referem-se ao mesmo padrão.

5 A Necessidade de uma Padronização (2) A partir de 1990, a ISO ficou responsável pela evolução do padrão. Na década de 90 a ISO corrigiu alguns detalhes e publicou em 1999 o ISO/IEC 9899:1999, que ficou conhecido como C99. C1X é um nome não-oficial para um trabalho que começou em 2007, com o objetivo de revisar e definir um novo padrão para a linguagem C.

6 Características da Linguagem C É uma linguagem estruturada. Médio nível. Foi criada, influenciada e testada por programadores. É a mais popular entre os excelentes programadores.

7 Popularidade da Linguagem C

8 Popularidade da Linguagem C(2)

9 Compiladores x Interpretadores Compilador lê o programa inteiro, converte-o em um código-objeto (ou código de máquina) de modo que o computador consiga executá-lo diretamente. Interpretador lê o código-fonte linha a linha, executando a instrução específica daquela linha. Vantagens e desvantagens?

10 Características do Programa em C Declarações globais. Funções definidas pelo programador. Função main().

11 Características do Programa em C Declarações globais. Funções definidas pelo programador. Função main().

12 A função main() É o ponto de entrada de uma aplicação C. Uma aplicação C se inicia no método main e, a partir dele, invoca diversas outras funções. Por fim, essa função retorna um valor inteiro. Esse valor retornado não é impresso, serve apenas para indicar ao sistema operacional ou um aplicativo, qual foi o código de retorno. O retorno zero indica que o aplicativo encerrou conforme esperado. Os outros valores podem ser definidos conforme a necessidade de cada aplicação.

13 Palavras Reservadas em C auto double int struct break else long switch case enum register typedef char extern return union const float short unsigned continue for signed void default goto sizeof volatile do if static while

14 Processo de Compilação Criar o programa. Compilar o programa. Linkeditar o programa com as funções necessárias da biblioteca. Com o uso de uma IDE, este processo é mais transparente.

15 Mapa de Memória em C Quatro regiões logicamente distintas: Código do programa; Variáveis globais; Pilha (stack variáveis locais e endereços de funções); Heap (região de memória livre a ser requisitada alocação dinâmica). Pilha Heap Variáveis Globais Código do Programa

16 C e C++ C++ é uma versão estendida e melhorada da linguagem C que é projetada para suportar programação orientada a objetos (POO). C++ contém e suporta toda a linguagem C e mais um conjunto de extensões orientadas a objetos. Você não pode programar em C++ se não souber C e tudo que aprender em C, poderá ser utilizado em C++.

17 IDEs Integrated Development Environment ou Ambiente de Desenvolvimento Integrado: Eclipse. Dev-Cpp.

18 Sintaxe Expressões É o elemento mais fundamental da linguagem C. São mais gerais e mais poderosas que na maioria das outras linguagens de programação. As expressões são formadas por: dados (representados por variáveis ou constantes); operadores. Exemplos: * (7 3) (-b + sqrt(delta)) / (2 * a) calculararea(raio=3.98)

19 Sintaxe Tipos Básicos Caractere (char); Inteiro (int); Ponto flutuante (float); Ponto flutuante de precisão dupla (double); Sem valor (void). C não tem um tipo lógico (utiliza-se valores inteiros: 0 (false) e diferente de zero (true). Modificadores: signed, unsigned, long e short.

20 Sintaxe Tipos Básicos char: representa um caractere ASCII; 1 byte; na verdade, é um inteiro sem sinal (0 a 255).

21 Sintaxe Tipos Básicos int: representa um inteiro; 4 bytes (normalmente). float: representa um número decimal; 4 bytes (normalmente). double: representa um número decimal com maior precisão que float; 8 bytes (normalmente). void: determina que uma função não retorna nada.

22 Sintaxe Identificadores São os nomes de variáveis, funções, rótulos e vários outros objetos definidos pelo usuário. São case-sensitive (C é case-sensitive). Identificador válido: A primeira letra deve ser uma letra ou um underline ( _ ); As letras subsequentes devem ser letras, números ou underline. Exemplos: idade, nome, sexo, telefone1, a1, A1, _x, _y,...

23 Sintaxe Variáveis Uma variável é uma posição nomeada de memória, que é utilizada para guardar um valor que pode ser modificado pelo programa. Todas as variáveis devem ser declaradas e inicializadas antes de serem utilizadas (C89).

24 Sintaxe Variáveis Uma variável pode ser declarada: dentro de funções (variáveis locais); como parâmetros de funções (parâmetros formais); fora de todas as funções (variáveis globais).

25 Sintaxe Variáveis Quais são as variáveis locais e globais? E os parâmetros formais?

26 Mapa de Memória em C Quatro regiões logicamente distintas: Código do programa; Variáveis globais; Pilha Pilha (stack variáveis locais e endereços de funções); Heap (região de memória livre a ser requisitada alocação dinâmica). Heap Variáveis Globais Código do Programa

27 Sintaxe Variáveis Quais são as variáveis locais e globais? E os parâmetros formais? Locais: resultado (main).

28 Sintaxe Variáveis Quais são as variáveis locais e globais? E os parâmetros formais? Locais: resultado (main). Globais: PI (fora de função).

29 Sintaxe Variáveis Quais são as variáveis locais e globais? E os parâmetros formais? Locais: resultado (main). Globais: PI (fora de função). Parâmetros Formais: valor1, valor2 (soma).

30 Sintaxe Modificadores de Acesso const: o valor da variável NÃO pode ser modificado pelo programa. Esse tipo de variável é útil quando se precisa garantir que um valor seja mantido até o final da execução do programa. Exemplos: 1) const double pi = ; 2) const int maioridade = 18;

31 Sintaxe Modificadores de Acesso volatile: o valor da variável PODE ser alterada de uma forma não especificada pelo programa, por comandos que fazem parte de outros programas (sistemas em tempo real ou programas concorrentes). Exemplos: 1) volatile char *port = 0x30; 2) volatile double dolar = 3.49;

32 Sintaxe Especificadores de Armazenamento extern: informa ao compilador que os tipos e nomes de variável que o seguem foram declarados em outro arquivo fonte.

33 Sintaxe Especificadores de Armazenamento extern: informa ao compilador que os tipos e nomes de variável que o seguem foram declarados em outro arquivo fonte. register: Variável armazenada de tal modo que seja o mais rápido possível.

34 Sintaxe Especificadores de Armazenamento extern: informa ao compilador que os tipos e nomes de variável que o seguem foram declarados em outro arquivo fonte. register: Variável armazenada de tal modo que seja o mais rápido possível. auto: Declaração de variáveis locais, porém não é utilizada. Por padrão, todas as variáveis não globais são auto.

35 Sintaxe Especificadores de Armazenamento static: mantém seus valores entre as chamadas (variáveis permanentes). É inicializada na primeira vez que a função é chamada. O que será impresso?

36 Sintaxe Especificadores de Armazenamento static: mantém seus valores entre as chamadas (variáveis permanentes). É inicializada na primeira vez que a função é chamada.

37 Sintaxe Constantes São valores fixos que o programa não pode alterar.

38 Sintaxe Constantes São valores fixos que o programa não pode alterar. 1) Constante inteira: 1, 2, 55, 89,

39 Sintaxe Constantes São valores fixos que o programa não pode alterar. 1) Constante inteira: 1, 2, 55, 89, 2) Constante ponto flutuante: 0.55, 3.14, 6.78,

40 Sintaxe Constantes São valores fixos que o programa não pode alterar. 1) Constante inteira: 1, 2, 55, 89, 2) Constante ponto flutuante: 0.55, 3.14, 6.78, 3) Constante caracter: 'A', 'f', 'X',

41 Sintaxe Constantes São valores fixos que o programa não pode alterar. 1) Constante inteira: 1, 2, 55, 89, 2) Constante ponto flutuante: 0.55, 3.14, 6.78, 3) Constante caracter: 'A', 'f', 'X', 4) Constante hexadecimal: 0xF (15), 0x18 (24),

42 Sintaxe Constantes São valores fixos que o programa não pode alterar. 1) Constante inteira: 1, 2, 55, 89, 2) Constante ponto flutuante: 0.55, 3.14, 6.78, 3) Constante caracter: 'A', 'f', 'X', 4) Constante hexadecimal: 0xF (15), 0x18 (24), 5) Constante octal: 017 (15), 025 (21),

43 Sintaxe Constantes São valores fixos que o programa não pode alterar. 1) Constante inteira: 1, 2, 55, 89, 2) Constante ponto flutuante: 0.55, 3.14, 6.78, 3) Constante caracter: 'A', 'f', 'X', 4) Constante hexadecimal: 0xF (15), 0x18 (24), 5) Constante octal: 017 (15), 025 (21), 6) Constante string: constantes em C, s, Oi...

44 Sintaxe Constantes Constantes caracter de barra invertida: \n (nova linha) \r (retorno do cursor em direção à margem esquerda) \t (tabulação horizontal em direção à margem direita) \' (aspas simples) \ (aspas duplas) \0 (nulo) \\ (barra invertida) \a (alerta - beep)

45 Sintaxe Operadores Aritméticos: + (soma); - (subtração); * (multiplicação); / (divisão); % (resto da divisão).

46 Sintaxe Operadores Aritméticos: atribuições compostas. += x += 2 (x = x + 2)

47 Sintaxe Operadores Aritméticos: atribuições compostas. += x += 2 (x = x + 2) -= x -= 2 (x = x 2);

48 Sintaxe Operadores Aritméticos: atribuições compostas. += x += 2 (x = x + 2) -= x -= 2 (x = x 2); *= x *= 2 (x = x * 2);

49 Sintaxe Operadores Aritméticos: atribuições compostas. += x += 2 (x = x + 2) -= x -= 2 (x = x 2); *= x *= 2 (x = x * 2); /= x /= 2 (x = x / 2);

50 Sintaxe Operadores Aritméticos: atribuições compostas. += x += 2 (x = x + 2) -= x -= 2 (x = x 2); *= x *= 2 (x = x * 2); /= x /= 2 (x = x / 2); %= x%= 2 (x = x % 2).

51 Sintaxe Operadores Aritméticos: atribuições compostas. += x += 2 (x = x + 2) -= x -= 2 (x = x 2); *= x *= 2 (x = x * 2); /= x /= 2 (x = x / 2); %= x%= 2 (x = x % 2).

52 Sintaxe Operadores Aritméticos: atribuições compostas. += x += 2 (x = x + 2) -= x -= 2 (x = x 2); *= x *= 2 (x = x * 2); /= x /= 2 (x = x / 2); %= x%= 2 (x = x % 2).

53 Sintaxe Operadores Aritméticos: incremento e decremento. ++ incrementa 1 -- decrementa 1

54 Sintaxe Operadores Aritméticos: incremento e decremento. ++ incrementa 1 -- decrementa 1 A posição faz diferença: ++ antes da variável: incrementa e retorna (pré). -- depois da variável: retorna e incrementa (pós).

55 Sintaxe Operadores Aritméticos: incremento e decremento. ++ incrementa 1 -- decrementa 1

56 Sintaxe Operadores Aritméticos: incremento e decremento. ++ incrementa 1 -- decrementa 1

57 Sintaxe Operadores Relacionais: == (comparação)!= (não igual / diferença) < (menor) <= (menor ou igual) > (maior) >= (maior ou igual)

58 Sintaxe Operadores Lógicos: && (and / e)

59 Sintaxe Operadores Lógicos: && (and / e) (or / ou)

60 Sintaxe Operadores Lógicos: && (and / e) (or / ou)! (not / não)

61 Sintaxe Operadores Bit a bit: ~ (complemento de um) << (deslocamento à esquerda) >> (deslocamento à direita) >>> (deslocamento à direita com sinal)

62 Sintaxe Comentários Comentário até o final da linha: Tudo digitado após ele na linha, é considerado comentário. int idade; // Variável para armazenar a idade do usuário. Comentário de bloco: Tudo escrito entre /* e */ é considerado comentário. /* Estou dentro de um comentário de bloco. Neste exemplo, o comentário ocupa três linhas. */

63 Sintaxe Estruturas de Decisão if if ( condição-1 ){ A condição retorna um tipo booleano. } comando-1; comando-2; comando-3; Os comandos somente serão executados se a condição for verdadeira. if ( condição-2 ){ } comando-1; Se existe somente um comando não é obrigatório o uso das chaves. Mas vamos sempre usar, combinado?!

64 Sintaxe Estruturas de Decisão if if ( condição-1 ){ Se a sentença for verdadeira, então... comando-1; comando-2; comando-3; } else{ } comando-4; comando-5; comando-6; Senão...

65 Sintaxe Estruturas de Decisão switch switch ( variável ){ } case 1: comando-1; break; case 2: comando-2; break; default: comando-padrão; Uma variável do tipo char ou int, é comparada com cada valor de case. Se um valor igual foi encontrado, as instruções depois do teste são executadas. Se nenhum valor for igual, a instrução default é executada. O comando break indica o fim do bloco.

66 Sintaxe Estruturas de Decisão Operador ternário: é útil para condicionais curtas e simples. Sintaxe: Operador ternário variável = <condição>? severdade : sefalso; Exemplo: int v1 = 2, v2 = 3; int r = ( v1 > v2 )? v1 : v2; // Qual o valor de r?

67 Sintaxe Exercícios

68 Sintaxe Estruturas de Repetição while: considerado um loop (laço) de pré-teste. while ( condição ){ comando-1; comando-2; comando-n; } Testa a condição antes de executar o bloco de comandos.

69 Sintaxe Estruturas de Repetição A variável de controle, que é testada na condição do while, deve ser inicializada e incrementada (ou decrementada).

70 Sintaxe Estruturas de Repetição Este código-fonte tem problema?

71 Sintaxe Estruturas de Repetição Este código-fonte tem problema?

72 Sintaxe Estruturas de Repetição Este código-fonte tem problema?

73 Sintaxe Estruturas de Repetição do..while: considerado um loop (laço) pós-teste. do{ comando-1; comando-2; comando-n; }while ( condição ); Testa a condição depois de executar o bloco de comandos.

74 Sintaxe Estruturas de Repetição A variável de controle, que é testada na condição do do..while, deve ser inicializada e incrementada (ou decrementada).

75 Sintaxe Estruturas de Repetição for: é composto por inicialização, condição e operação. for( inicialização; condição; operação ){ comando-1; comando-2; comando-n; }

76 Sintaxe Estruturas de Repetição for: é composto por inicialização, condição e operação. for( inicialização; condição; operação ){ } comando-1; comando-2; comando-n; Executado uma única vez no início do loop

77 Sintaxe Estruturas de Repetição for: é composto por inicialização, condição e operação. for( inicialização; condição; operação ){ } comando-1; comando-2; comando-n; Executado uma única vez no início do loop Executado antes de cada iteração.

78 Sintaxe Estruturas de Repetição for: é composto por inicialização, condição e operação. for( inicialização; condição; operação ){ } comando-1; comando-2; comando-n; Executado uma única vez no início do loop Executado antes de cada iteração. Executado ao final de cada iteração.

79 Sintaxe Estruturas de Repetição O que será impresso?

80 Sintaxe Estruturas de Repetição O que será impresso?

81 Sintaxe Estruturas de Repetição O que será impresso?

82 Sintaxe Estruturas de Repetição O que será impresso?

83 Sintaxe Estruturas de Repetição O que será impresso?

84 Sintaxe Estruturas de Repetição O que será impresso?

85 Sintaxe Estruturas de Repetição O que será impresso?

86 Sintaxe Estruturas de Repetição O ponto-e-vírgula indica o fim da instrução!!!

87 Sintaxe Estruturas de Repetição O que será impresso?

88 Vetores São coleções de um mesmo tipo em sequência. Podem ser de tipos primitivos (char, int, float, double), de um outro arranjo, de uma estrutura, de enumeração, etc... Estrutura homogênea de dados.

89 Declaração. Vetores

90 Vetores Acesso: é possível alterar ou recuperar qualquer elemento armazenado. Em C, o índice de um vetor inicia-se na posição 0 (zero). int idades[3]; O vetor idades[3] armazena três elementos. A indexação inicia-se em 0 (zero) e termina em 2 (3-1).

91 Vetores Vetor de caracteres: é como qualquer outro vetor. Se ele tem tamanho n, ele tem n posições disponíveis indexadas de 0 a n 1. char letras[3] = {'A', 'B', 'C'}; Para leitura e impressão utiliza-se o caracter %c. Tamanho pode ser obtido pela função sizeof().

92 Vetores Vetor de string: É finalizado pelo caracter '\0'. Se ele tem tamanho n, ele tem n posições disponíveis indexadas de 0 a n 2. char nomecidade[50]; gets(nome); Para leitura utiliza-se a função gets() e para impressão o caracter %s. Tamanho pode ser obtido pela função strlen().

93 Vetores Vetor multidimensional: É um vetor de vetor. O mais comum é o bidimensional, visto como uma matriz. int matrizidades[3][4]; // matriz de 3 linhas e 4 colunas Linhas Colunas

94 Funções Um programa em C é uma coleção de funções. Uma função PODE receber parâmetros, declarar variáveis locais, conter instruções e retornar um valor. Uma função NÃO PODE declarar outra função (por isso C não é classificada integralmente como estruturada em blocos).

95 Funções Uma das funções deve se chamar main. A função deve ser declarada antes do local onde é chamada. Uma função deve ser de um dos tipos básicos: int, float, double, char, void.

96 Funções Exemplo Parâmetros formais Chamada da função soma()

97 Funções A instrução return efetua o término da função. Uma função pode ou não retornar um valor para a função chamadora. Uma função pode ou não ter parâmetros formais.

98 Funções Exemplo Chamada da função soma()

99 Funções Exemplo Retorno da função

100 Funções Exemplo Prototipação (assinatura) Chamada da função soma() Declaração da função soma()

101 Funções A passagem de parâmetros é realizada para que a função receba os valores com os quais vai trabalhar (realizar o seu processamento). A passagem de parâmetros em C é sempre POR VALOR, ou seja, os valores são copiados da origem para o destino. Uma função pode ou não ter parâmetros formais.

102 Funções A passagem de parâmetros em C é sempre POR VALOR, ou seja, os valores são copiados da origem para o destino.

103 Funções Uma função pode retrornar valores de qualquer tipo (exceto vetores e outras funções). Uma função do tipo void não retorna nada. A expressão após o return é o valor retornado. O valor do retorno de uma função pode ser ignorado.

104 Funções O término de uma função ocorre quando: A chave de fechamento é encontrada; Ou quando o return é executado.

105 Funções Biblioteca Padrão Funções de E/S (stdio.h) printf(), scanf(), fprintf(), fscanf(), gets(), fwrite(), fread(),... Funções matemáticas (math.h) sin(), cos(), pow(), sqrt(),... Teste e manipulação de caracteres (ctype.h) isdigit(), isalpha(), toupper(),...

106 Funções Biblioteca Padrão Funções de uso geral (stdlib.h) malloc(), free(), exit(), rand(),... Manipulação de strings e vetores (string.h) strcpy(), strcmp(), strcat(), strlen(),... Manipulação de datas e horas (time.h) time(), clock(), localtime(),...

107 Ponteiros São variáveis que armazenam um endereço de memória, geralmente a posição de outra variável. Se uma variável p possui o endereço da variável x, então é correto dizer que p aponta para x. Por isso, este tipo de variável recebe o nome de ponteiro (apontador).

108 Ponteiros A declaração de um ponteiro é feita de acordo com as regras de declaração de identificadores em C. O símbolo * indica que a variável é ponteiro. tipo *nome-da-variável-ponteiro; Exemplos: int *pvalor; // ponteiro para variável inteira float *psalario; // ponteiro para variável float

109 Ponteiros Um ponteiro aponta para outra variável. Porém, é preciso inicializá-la, pois seu valor inicial é lixo de memória. O valor inicial de um ponteiro deve ser NULL. int *pvalor = NULL; // não aponta para nenhum endereço. Usa-se o %p para imprimir o endereço de memória: printf( O ponteiro pvalor aponta para %p, pvalor);

110 Ponteiros Existem dois operadores especiais para ponteiros: * e &. O operador & é unário e retorna o endereço de memória do seu operando (variável).

111 Ponteiros

112 Ponteiros

113 Ponteiros No exemplo anterior, a variável pvalor recebe o endereço de memória que contém a variável valor. O endereço não tem nenhuma relação com o valor da variável valor. O operador & pode ser lido como retorna o endereço de.

114 Logo, no exemplo acima, aux recebe o valor da variável apontada por pvalor. Ponteiros O operador * é o complemento de &. É um operador unário que retorna o valor da variável localizada na posição de memória que o segue. int aux = *pvalor; O operador * pode ser lido como retorna o valor da variável apontada por.

115 Ponteiros

116 Ponteiros valor = 11 int valor = 11;

117 Ponteiros valor = 11 pvalor int valor = 11; int *pvalor;

118 Ponteiros valor = 11 Pvalor = 1001 int valor = 11; int *pvalor; pvalor = &valor;

119 Ponteiros valor = 11 aux Pvalor = 1001 int valor = 11, aux; int *pvalor; pvalor = &valor;

120 Ponteiros valor = 11 aux = 11 Pvalor = 1001 int valor = 11, aux; int *pvalor; pvalor = &valor; aux = *pvalor;

121 Ponteiros valor = 11 aux = Pvalor = 1001 int valor = 11, aux; int *pvalor; pvalor = &valor; aux = *pvalor; // * acessa o conteúdo do endereço

122 Ponteiros valor = 11 aux = 11 Pvalor = 1001 int valor = 11, aux; int *pvalor; pvalor = &valor; aux = *pvalor; // * acessa o conteúdo do endereço

123 Ponteiros valor = 22 aux = 11 Pvalor = 1001 int valor = 11, aux; int *pvalor; pvalor = &valor; aux = *pvalor; // * acessa o conteúdo do endereço valor = 22;

124 Ponteiros valor = 22 aux = 11 Pvalor = 1001 int valor = 11, aux; int *pvalor; pvalor = &valor; aux = *pvalor; // * acessa o conteúdo do endereço valor = 22; *pvalor = 33; // O que será alterado?

125 Ponteiros valor = 33 aux = 11 Pvalor = 1001 int valor = 11, aux; int *pvalor; pvalor = &valor; aux = *pvalor; // * acessa o conteúdo do endereço valor = 22; *pvalor = 33; // O conteúdo da variável valor.

126 Ponteiros valor = 33 aux = 11 Pvalor = 1001 int valor = 11, aux; int *pvalor; pvalor = &valor; aux = *pvalor; // * acessa o conteúdo do endereço valor = 22; *pvalor = 33; pvalor = 44; // O que será alterado?

127 Ponteiros????? valor = 33 aux = 11 Pvalor = 44 int valor = 11, aux; int *pvalor; pvalor = &valor; aux = *pvalor; // * acessa o conteúdo do endereço valor = 22; *pvalor = 33; pvalor = 44; // O endereço para onde pvalor aponta.

128 Ponteiros Embora em C a passagem de parâmetros seja por valor, é possível simular uma chamada por referência. Passa-se o endereço de uma variável para um ponteiro (parâmetro formal na função). O endereço da variável é passado para a função, permitindo que o valor da variável seja alterado na função que recebeu seu endereço.

129 Ponteiros

130 Ponteiros

131 Ponteiros

132 Exercícios 1) Escreva um programa que leia dois valores inteiros para as variáveis num1 e num2. Depois, faça uma função para trocar os valores entre num1 e num2. Ou seja, o valor de num1 é gravado em num2 e o valor de num2 é gravado em num1, sem perder os valores originais. Esta função deve passar os valores por valor. 2) Faça uma função para o exercício anterior que utilize a passagem de parâmetros por referência (via ponteiros).

133 Ponteiros 1) Escreva um programa que leia dois valores inteiros para as variáveis num1 e num2. Depois, faça uma função para trocar os valores entre num1 e num2. Ou seja, o valor de num1 é gravado em num2 e o valor de num2 é gravado em num1, sem perder os valores originais. Esta função deve passar os valores por valor. 2) Faça uma função para o exercício anterior que utilize a passagem de parâmetros por referência (via ponteiros).

134 Ponteiros e Funções

135 Ponteiros e Funções main num1 num2 num3???

136 Ponteiros e Funções main num1 num2 num3 5??

137 Ponteiros e Funções main num1 num2 num3 5 3?

138 Ponteiros e Funções main num1 num2 num3 5 3?

139 Ponteiros e Funções funcaoteste n1 n2 return 5 3? main num1 num2 num3 5 3?

140 Ponteiros e Funções funcaoteste n1 n2 return 5 8? main num1 num2 num3 5 3?

141 Ponteiros e Funções funcaoteste n1 n2 return main num1 num2 num3 5 3?

142 Ponteiros e Funções main num1 num2 num

143 Ponteiros e Funções main num1 num2 num

144 Ponteiros e Funções

145 Ponteiros e Funções main num1 num2 num3???

146 Ponteiros e Funções main num1 num2 num3 5??

147 Ponteiros e Funções main num1 num2 num3 5 3?

148 Ponteiros e Funções main num1 num2 num3 5 3?

149 Ponteiros e Funções funcaoteste n1 n2 return 5? main num1 num2 num3 5 3?

150 Ponteiros e Funções funcaoteste n1 n2 return 5? main num1 num2 num3 5 8?

151 Ponteiros e Funções funcaoteste n1 n2 return 5 12 main num1 num2 num3 5 8?

152 Ponteiros e Funções main num1 num2 num

153 Ponteiros e Funções main num1 num2 num

154 Bibliografia C Completo e Total (Herbert Schildt). Linguagem C (Luis Damas). Apostila C Ansi (Ricardo Terra).

Estruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões.

Estruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões. 1 Estruturas da linguagem C 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões. Identificadores Os identificadores seguem a duas regras: 1. Devem ser começados por letras

Leia mais

Linguagens de Programação PROGRAMAÇÃO DE COMPUTADORES. Linguagem C. Linguagem C Estrutura Básica. Constante (literais) Linguagem C Primeiro Programa

Linguagens de Programação PROGRAMAÇÃO DE COMPUTADORES. Linguagem C. Linguagem C Estrutura Básica. Constante (literais) Linguagem C Primeiro Programa Linguagens de Programação PROGRAMAÇÃO DE COMPUTADORES Linguagem C - Introdução Linguagens de Máquina Representação numérica Difícil utilização e compreensão Específica para cada máquina Linguagens Simbólicas(Assembly)

Leia mais

Introdução à Linguagem C

Introdução à Linguagem C Introdução à Linguagem C Eduardo Simões de Albuquerque Instituto de Informática UFG 13/03/2006 1 História Inventada e desenvolvida por Dennis Ritchie em um DEC- PDP 11 Originária de: BCPL desenvolvida

Leia mais

Hello World. Linguagem C. Tipos de Dados. Palavras Reservadas. Operadores Aritméticos. Pré e pós incremento e pré e pós decremento

Hello World. Linguagem C. Tipos de Dados. Palavras Reservadas. Operadores Aritméticos. Pré e pós incremento e pré e pós decremento Hello World Linguagem C printf("hello world!\n"); main é a função principal, a execução do programa começa por ela printf é uma função usada para enviar dados para o vídeo Palavras Reservadas auto double

Leia mais

PROGRAMAÇÃO I E N T R A DA E S A Í DA D E DA D O S

PROGRAMAÇÃO I E N T R A DA E S A Í DA D E DA D O S PROGRAMAÇÃO I VA R I Á V E I S, C O N S TA N T E S, O P E R A D O R E S E N T R A DA E S A Í DA D E DA D O S Variáveis 2 Variáveis são locais onde são armazenados os valores na memória. Toda variável é

Leia mais

Linguagem C. Ricardo Terra. rterrabh@gmail.com. Ricardo Terra (rterrabh@gmail.com) Linguagem C 1 de agosto de 2012 1 / 341

Linguagem C. Ricardo Terra. rterrabh@gmail.com. Ricardo Terra (rterrabh@gmail.com) Linguagem C 1 de agosto de 2012 1 / 341 Linguagem C Ricardo Terra rterrabh@gmail.com Ricardo Terra (rterrabh@gmail.com) Linguagem C 1 de agosto de 2012 1 / 341 Conteúdo 1 Introdução Tópicos Importantes 2 Sintaxe Básica 3 Ponteiros 4 Tópicos

Leia mais

Universidade Estadual de Mato Grosso do Sul Ciência da Computação Algoritmos e Estruturas de Dados I (AED-I) Prof. Nilton

Universidade Estadual de Mato Grosso do Sul Ciência da Computação Algoritmos e Estruturas de Dados I (AED-I) Prof. Nilton Universidade Estadual de Mato Grosso do Sul Ciência da Computação Algoritmos e Estruturas de Dados I (AED-I) Prof. Nilton nilton@comp.uems.br Introdução A linguagem C foi inventada por Dennis Ritchie e

Leia mais

Linguagem C Princípios Básicos (parte 1)

Linguagem C Princípios Básicos (parte 1) Linguagem C Princípios Básicos (parte 1) Objetivos O principal objetivo deste artigo é explicar alguns conceitos fundamentais de programação em C. No final será implementado um programa envolvendo todos

Leia mais

A Linguagem C. A forma de um programa em C

A Linguagem C. A forma de um programa em C A Linguagem C Criada em 1972 por D. M. Ritchie e K. Thompson. Tornou-se uma das mais importantes e populares, principalmente pela portabilidade e flexibilidade. Foi projetada para o desenvolvimento de

Leia mais

Algoritmos e Estruturas de Dados I IEC012. Linguagem C - Guia de bolso - Prof. César Melo

Algoritmos e Estruturas de Dados I IEC012. Linguagem C - Guia de bolso - Prof. César Melo Algoritmos e Estruturas de Dados I IEC012 Linguagem C - Guia de bolso - Prof. César Melo Histórico A linguagem C é uma linguagem de programação inventada na década de 1970 por Dennis Ritchie Brian Kennigaham.

Leia mais

Revisão C++ - Parte 1

Revisão C++ - Parte 1 Revisão C++ - Parte 1 Prof. Gustavo Leitão Campus Natal Central Disciplina Programação para Ambiente de Redes 5/3/2010 Objetivo da Aula 5/3/2010 5/3/2010 OBJETIVO DA AULA Revisar os principais comandos

Leia mais

Anhanguera Educacional S.A. Centro Universitário Ibero-Americano

Anhanguera Educacional S.A. Centro Universitário Ibero-Americano O C++ foi inicialmente desenvolvido por Bjarne Stroustrup durante a década de 1980 com o objetivo de melhorar a linguagem de programação C, mantendo a compatibilidade com esta linguagem. Exemplos de Aplicações

Leia mais

Linguagem C: Variáveis e Operadores. Prof. Leonardo Barreto Campos 1

Linguagem C: Variáveis e Operadores. Prof. Leonardo Barreto Campos 1 Linguagem C: Variáveis e Operadores Prof. Leonardo Barreto Campos Sumário Variáveis: Tipos de variáveis; Nome da variável; Palavras reservadas; A função printf(); A função scanf(); Variáveis locais; Variáveis

Leia mais

Variáveis primitivas e Controle de fluxo

Variáveis primitivas e Controle de fluxo Variáveis primitivas e Controle de fluxo Material baseado na apostila FJ-11: Java e Orientação a Objetos do curso Caelum, Ensino e Inovação, disponível para download em http://www.caelum.com.br/apostilas/

Leia mais

Slides trabalhados durante a quinta aula

Slides trabalhados durante a quinta aula Slides trabalhados durante a quinta aula prática Estruturas de Controle de Fluxo 3. Laços de repetição (continuação) Exercício: Construa um algoritmo, representando-o através de um pseudocódigo e de um

Leia mais

Métodos Computacionais

Métodos Computacionais Métodos Computacionais Objetivos da Disciplina e Introdução a Linguagem C Construções Básicas Objetivos da Disciplina Objetivo Geral Discutir técnicas de programação e estruturação de dados para o desenvolvimento

Leia mais

Introdução a Programação de Jogos

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

Leia mais

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO LÓGICA DE PROGRAMAÇÃO PROFª. M.Sc. JULIANA H Q BENACCHIO Primeiro programa em C #include int main() { int num1, num2, result; scanf("%d",&num1); scanf("%d",&num2); result = num1 + num2; printf("%d",

Leia mais

Fundamentos de Programação. Linguagem C++ Introdução, identificadores, tipos de dados. Prof. Bruno E. G. Gomes IFRN

Fundamentos de Programação. Linguagem C++ Introdução, identificadores, tipos de dados. Prof. Bruno E. G. Gomes IFRN Fundamentos de Programação Linguagem C++ Introdução, identificadores, tipos de dados Prof. Bruno E. G. Gomes IFRN 1 Linguagem de Programação Constituída por símbolos e por regras para combinar esses símbolos

Leia mais

Introdução à Linguagem C

Introdução à Linguagem C Engenharia de CONTROLE e AUTOMAÇÃO Introdução à Linguagem C Aula 02 DPEE 1038 Estrutura de Dados para Automação Curso de Engenharia de Controle e Automação Universidade Federal de Santa Maria beltrame@mail.ufsm.br

Leia mais

4. Estruturas Fundamentais de Programação em C

4. Estruturas Fundamentais de Programação em C 4. Estruturas Fundamentais de Programação em C 4.1. Imprimindo Mensagens e Valores no Monitor de Vídeo A biblioteca de entrada e saída (stdio.h) possui a função printf que imprime mensagens e valores diretamente

Leia mais

INTRODUÇÃO À LINGUAGEM PASCAL PREFÁCIO

INTRODUÇÃO À LINGUAGEM PASCAL PREFÁCIO INTRODUÇÃO À LINGUAGEM PASCAL CESAR BEZERRA TEIXEIRA,MSC PREFÁCIO A linguagem C foi desenvolvida no início da década de 70 por dois pesquisadores do Bell Laboratories, Brian Kernihgan e Dennis Ritchie,

Leia mais

Universidade Federal do Espírito Santo. Programação I Tipos de Dados Básicos - C Professora: Norminda Luiza

Universidade Federal do Espírito Santo. Programação I Tipos de Dados Básicos - C Professora: Norminda Luiza Universidade Federal do Espírito Santo Programação I Tipos de Dados Básicos - C Professora: Norminda Luiza Variáveis Tipos de Dados Básicos Formação dos identificadores o nome deve começar com uma letra

Leia mais

4 Variáveis. Unesp Campus de Guaratinguetá

4 Variáveis. Unesp Campus de Guaratinguetá 4 Variáveis Unesp Campus de Guaratinguetá Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro Ministrado por: Prof. André Amarante Composição do Hardware MEMÓRIA UNIDADES FUNCIONAIS

Leia mais

Métodos Computacionais. Operadores, Expressões Aritméticas e Entrada/Saída de Dados

Métodos Computacionais. Operadores, Expressões Aritméticas e Entrada/Saída de Dados Métodos Computacionais Operadores, Expressões Aritméticas e Entrada/Saída de Dados Tópicos da Aula Hoje aprenderemos a escrever um programa em C que pode realizar cálculos Conceito de expressão Tipos de

Leia mais

Linguagem C para Microcontroladores

Linguagem C para Microcontroladores RESUMO Linguagem C para Microcontroladores Prof. Glauber G. O. Brante UTFPR Universidade Tecnológica Federal do Paraná DAELT Departamento Acadêmico de Eletrotécnica Sumário 1 Introdução...................................

Leia mais

Aula 5 Oficina de Programação Introdução ao C. Profa. Elaine Faria UFU

Aula 5 Oficina de Programação Introdução ao C. Profa. Elaine Faria UFU Aula 5 Oficina de Programação Introdução ao C Profa. Elaine Faria UFU - 2017 Linguagem de Programação Para que o computador consiga ler um programa e entender o que fazer, este programa deve ser escrito

Leia mais

Referências. Linguagem C. Tipos de variáveis em XC8. Tipos de variáveis. Tipos de variáveis em XC 8 Exemplo. Radicais numéricos em C

Referências. Linguagem C. Tipos de variáveis em XC8. Tipos de variáveis. Tipos de variáveis em XC 8 Exemplo. Radicais numéricos em C Referências Linguagem C Jun Okamoto Jr. Kernighan, Brian W. and Ritchie, Dennis M. The C Programming Language (ANSI C); Prentice Hall; 2ª Edição; 1988 Microchip Technology Inc. MPLAB XC8 C Compiler User

Leia mais

Introdução à Linguagem C++

Introdução à Linguagem C++ Introdução à Linguagem C++ C++: Definição C++ C A Linguagem de Programação C++ pode ser definida como uma extensão da Linguagem C; Todo código de programação em Linguagem C pode a priori ser compilado

Leia mais

Introdução à Computação MAC0110

Introdução à Computação MAC0110 Introdução à Computação MAC0110 Prof. Dr. Paulo Miranda IME-USP Aula 2 Variáveis e Atribuições Memória Principal: Introdução Vimos que a CPU usa a memória principal para guardar as informações que estão

Leia mais

Linguagem C: Ponteiros. Prof. Leonardo Barreto Campos 1

Linguagem C: Ponteiros. Prof. Leonardo Barreto Campos 1 Linguagem C: Ponteiros Prof. Leonardo Barreto Campos 1 Sumário Ponteiros; Variáveis ponteiros; Operadores de ponteiros; Expressões com ponteiros; Atribuição de ponteiros; Aritmética de ponteiros; Comparação

Leia mais

Estruturas de Dados Aula 2: Estruturas Estáticas 02/03/2011

Estruturas de Dados Aula 2: Estruturas Estáticas 02/03/2011 Estruturas de Dados Aula 2: Estruturas Estáticas 02/03/2011 Tipos Básicos Quantos valores distintos podemos representar com o tipo char? Operadores de Incremento e Decremento ++ e -- Incrementa ou decrementa

Leia mais

Programação: Vetores

Programação: Vetores Programação de Computadores I Aula 09 Programação: Vetores José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/62 Motivação Problema Faça um programa que leia

Leia mais

Linguagem C Controle do Fluxo de Execução. Lógica de Programação

Linguagem C Controle do Fluxo de Execução. Lógica de Programação Linguagem C Controle do Fluxo de Execução Lógica de Programação Caro(a) aluno(a), Aqui começaremos a escrever os nossos primeiros programas em uma Linguagem de Programação. Divirta-se!!! Estrutura Seqüencial

Leia mais

Linguagem C: Introdução

Linguagem C: Introdução Linguagem C: Introdução Linguagem C É uma Linguagem de programação genérica que é utilizada para a criação de programas diversos como: Processadores de texto Planilhas eletrônicas Sistemas operacionais

Leia mais

Fundamentos de Programação. Linguagem C++ aula II - Variáveis e constantes. Prof.: Bruno Gomes

Fundamentos de Programação. Linguagem C++ aula II - Variáveis e constantes. Prof.: Bruno Gomes Fundamentos de Programação Linguagem C++ aula II - Variáveis e constantes Prof.: Bruno Gomes 1 Variáveis Representa uma porção da memória que pode ser utilizada pelo programa para armazenar informações

Leia mais

Sumário. Introdução à Ciência da Computação. Ponteiros em C. Introdução. Definição. Por quê ponteiros são importantes?

Sumário. Introdução à Ciência da Computação. Ponteiros em C. Introdução. Definição. Por quê ponteiros são importantes? Introdução à Ciência da Computação Ponteiros em C Prof. Ricardo J. G. B. Campello Sumário Introdução Definição de Ponteiros Declaração de Ponteiros em C Manipulação de Ponteiros em C Operações Ponteiros

Leia mais

PROGRAMAS BÁSICOS EM C++ Disciplina: Introdução à Ciência da Computação Prof. Modesto Antonio Chaves Universidade estadual do Sudoeste da Bahia

PROGRAMAS BÁSICOS EM C++ Disciplina: Introdução à Ciência da Computação Prof. Modesto Antonio Chaves Universidade estadual do Sudoeste da Bahia PROGRAMAS BÁSICOS EM C++ Disciplina: Introdução à Ciência da Computação Prof. Modesto Antonio Chaves Universidade estadual do Sudoeste da Bahia Calculo da área de um triângulo Algoritmo Área Var base,

Leia mais

Estrutura de Programas e Tipos de Dados Simples

Estrutura de Programas e Tipos de Dados Simples SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Estrutura de Programas e Tipos de Dados Simples Prof. Vanderlei Bonato: vbonato@icmc.usp.br Prof. Claudio Fabiano Motta Toledo: claudio@icmc.usp.br

Leia mais

CURSO BÁSICO DE PROGRAMAÇÃO AULA 15. Revisão Vetores e Matrizes Trabalho

CURSO BÁSICO DE PROGRAMAÇÃO AULA 15. Revisão Vetores e Matrizes Trabalho CURSO BÁSICO DE PROGRAMAÇÃO AULA 15 Revisão Vetores e Matrizes Trabalho Definição: Introdução a Linguagem C Vetores Estrutura que permite armazenar um conjunto de dados do mesmo tipo na mesma variável;

Leia mais

Alocação Dinâmica em C

Alocação Dinâmica em C Universidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação Alocação Dinâmica em C Profa Rosana Braga Adaptado de material preparado pela profa Silvana Maria Affonso de Lara

Leia mais

Disciplina de Algoritmos e Programação

Disciplina de Algoritmos e Programação Disciplina de Algoritmos e Programação Aula Passada Prática com declaração e inicialização de variáveis Capacidade de representação (estouro de representação) Tamanho ocupado pela variável na memória (comando

Leia mais

Algoritmos e Estruturas de Dados I (DCC/003) 2013/1. Estruturas Básicas. Aula Tópico 4

Algoritmos e Estruturas de Dados I (DCC/003) 2013/1. Estruturas Básicas. Aula Tópico 4 Algoritmos e Estruturas de Dados I (DCC/003) 2013/1 Estruturas Básicas Aula Tópico 4 1 Problema 3 Exibir o maior número inteiro que pode ser representado no computador. 2 Qual o maior número inteiro? Para

Leia mais

Java 2 Standard Edition Tipos, literais, operadores e controle de fluxo

Java 2 Standard Edition Tipos, literais, operadores e controle de fluxo Java 2 Standard Edition Tipos, literais, operadores e controle de fluxo Helder da Rocha www.argonavis.com.br 1 Operadores e controle de fluxo da execução Este módulo explora as estruturas procedurais da

Leia mais

Introdução à Linguagem C Variáveis e Expressões

Introdução à Linguagem C Variáveis e Expressões INF1005: Programação 1 Introdução à Linguagem C Variáveis e Expressões 08/03/10 (c) Paula Rodrigues 1 Tópicos Principais Programando em C Funções Variáveis Define Operadores e Expressões Entrada e Saída

Leia mais

Linguagem C. Prof.ª Márcia Jani Cícero

Linguagem C. Prof.ª Márcia Jani Cícero Linguagem C Prof.ª Márcia Jani Cícero A estrutura Básica de um Programa em C Consiste em uma ou várias funções ou programas. main( ) // primeira função a ser executada // inicia a função // termina a função

Leia mais

Módulo 5 Vetores e Alocação Dinâmica

Módulo 5 Vetores e Alocação Dinâmica Estruturas de Dados Módulo 5 Vetores e Alocação Dinâmica 1/9/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora

Leia mais

Variáveis, Tipos de Dados e Operadores

Variáveis, Tipos de Dados e Operadores ! Variáveis, Tipos de Dados e Operadores Engenharias Informática Aplicada 2.o sem/2013 Profa Suely (e-mail: smaoki@yahoo.com) VARIÁVEL VARIÁVEL É um local lógico, ligado a um endereço físico da memória

Leia mais

INTRODUÇÃO A LINGUAGEM C

INTRODUÇÃO A LINGUAGEM C INTRODUÇÃO A LINGUAGEM C Aula 01 Programação em Microinformática Prof. Allbert Velleniche de Aquino Almeida E-mail: professor@allbert.com.br Site: http://www.allbert.com.br Histórico O C nasceu na década

Leia mais

TÉCNICO DE INFORMÁTICA - SISTEMAS

TÉCNICO DE INFORMÁTICA - SISTEMAS 782 - Programação em C/C++ - estrutura básica e conceitos fundamentais Linguagens de programação Linguagem de programação são conjuntos de palavras formais, utilizadas na escrita de programas, para enunciar

Leia mais

Tipos, Literais, Operadores

Tipos, Literais, Operadores Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não

Leia mais

Resumo da Introdução de Prática de Programação com C. A Linguagem C

Resumo da Introdução de Prática de Programação com C. A Linguagem C Resumo da Introdução de Prática de Programação com C A Linguagem C O C nasceu na década de 70. Seu inventor, Dennis Ritchie, implementou-o pela primeira vez usando um DEC PDP-11 rodando o sistema operacional

Leia mais

Estrutura do programa

Estrutura do programa Linguagem C Estrutura do programa Exemplo: #include #include main() { printf( Ola, mundo! ); system( pause ); }

Leia mais

Tipos de Dados, Variáveis e Entrada e Saída em C. DCC 120 Laboratório de Programação

Tipos de Dados, Variáveis e Entrada e Saída em C. DCC 120 Laboratório de Programação Tipos de Dados, Variáveis e Entrada e Saída em C DCC 120 Laboratório de Programação Variáveis Uma variável representa um espaço na memória do computador para armazenar um determinado tipo de dado. Em C,

Leia mais

Linguagem C. Eliane Pozzebon

Linguagem C. Eliane Pozzebon Linguagem C Eliane Pozzebon Material de Apoio de C Site da disciplina: http://www.univasf.edu.br/~eliane.pozzebon Slides de aulas Exercícios Dev-C++: um ambiente de programação interativo e gratuito para

Leia mais

Módulo 1. Introdução. AEDS I C++ (Rone Ilídio)

Módulo 1. Introdução. AEDS I C++ (Rone Ilídio) Módulo 1 Introdução AEDS I C++ (Rone Ilídio) Introdução Linguagens de Programação Fonte Compilador Executável SO I Hardware C++ - Características Evolução do C, ou seja, possui a mesma sintaxe É uma linguagem

Leia mais

Introdução à Programação. Introdução a Linguagem C. Prof. José Honorato F. Nunes

Introdução à Programação. Introdução a Linguagem C. Prof. José Honorato F. Nunes Introdução à Programação Introdução a Linguagem C Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br Resumo da aula Introdução Variáveis Tipos de dados Operadores e Expressões: Operadores

Leia mais

Capítulo 2 Operadores. A função scanf()

Capítulo 2 Operadores. A função scanf() Capítulo 2 Operadores A função scanf() A função scanf() é outra das funções de E/S implementadas em todos os compiladores e nos permite ler dados formatados da entrada padrão (teclado). Sintaxe: scanf(

Leia mais

Elementos de programação em C

Elementos de programação em C Elementos de programação em C Literais e constantes Francisco A. C. Pinheiro, Elementos de Programação em C, Bookman, 2012. Visite os sítios do livro para obter material adicional: www.bookman.com.br e

Leia mais

Métodos Computacionais. Funções, Escopo de Variáveis e Ponteiros

Métodos Computacionais. Funções, Escopo de Variáveis e Ponteiros Métodos Computacionais Funções, Escopo de Variáveis e Ponteiros Tópicos da Aula Hoje vamos detalhar funções em C Escrevendo funções Comando return Passagem de argumentos por valor Execução de uma função

Leia mais

Lógica e Linguagem de Programação Convertendo um algoritmo em pseudocódigo para a linguagem C Professor: Danilo Giacobo

Lógica e Linguagem de Programação Convertendo um algoritmo em pseudocódigo para a linguagem C Professor: Danilo Giacobo Lógica e Linguagem de Programação Convertendo um algoritmo em pseudocódigo para a linguagem C Professor: Danilo Giacobo Este documento explica como transformar um algoritmo escrito na forma pseudocódigo

Leia mais

Programação Básica. Estrutura de um algoritmo

Programação Básica. Estrutura de um algoritmo Programação Básica Estrutura de um algoritmo Código-fonte Como vimos na aula anterior um algoritmo pode ser representado usando um fluxograma Um algoritmo pode também ser representado usando texto Esse

Leia mais

Matrizes em C. Lucas Ferrari de Oliveira Professor Adjunto. Universidade Federal do Paraná

Matrizes em C. Lucas Ferrari de Oliveira Professor Adjunto. Universidade Federal do Paraná em C Lucas Ferrari de Oliveira Professor Adjunto Universidade Federal do Paraná Uma matriz é uma coleção de variáveis do mesmo tipo que é referenciada por um nome comum; Em C todas as matrizes consistem

Leia mais

INF1007: Programação 2. 0 Revisão. 06/08/2015 (c) Dept. de Informática - PUC-Rio 1

INF1007: Programação 2. 0 Revisão. 06/08/2015 (c) Dept. de Informática - PUC-Rio 1 INF1007: Programação 2 0 Revisão 06/08/2015 (c) Dept. de Informática - PUC-Rio 1 Tópicos Principais Variáveis e Constantes Operadores e Expressões Entrada e Saída Tomada de Decisão Construção com laços

Leia mais

INFORMÁTICA APLICADA AULA 03 LINGUAGEM DE PROGRAMAÇÃO C++

INFORMÁTICA APLICADA AULA 03 LINGUAGEM DE PROGRAMAÇÃO C++ UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: Bacharelado em Ciências e Tecnologia INFORMÁTICA APLICADA AULA 03 LINGUAGEM DE PROGRAMAÇÃO C++ Profª ª Danielle Casillo OPERADORES Um operador é um símbolo

Leia mais

Conceitos Básicos da Linguagem C++ Prof. Leonardo Barreto Campos 1

Conceitos Básicos da Linguagem C++ Prof. Leonardo Barreto Campos 1 Conceitos Básicos da Linguagem C++ Prof. Leonardo Barreto Campos 1 Sumário As Origens da Linguagem C++; Primeiro Programa em C++; Declaração e Leitura de Variáveis; Estruturas de Seleção; if; switch; Estruturas

Leia mais

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis Introdução a classes e objetos Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis Estruturas de Seleção if... else Operador condicional (? : ) switch Aula de Hoje Estruturas de Repetição: while/do... while/for

Leia mais

Strings. Introdução. Definição de strings. Criação/Declaração de strings. Inicialização de strings. Manipulação de strings. Exemplos.

Strings. Introdução. Definição de strings. Criação/Declaração de strings. Inicialização de strings. Manipulação de strings. Exemplos. Introdução Definição de strings. Criação/Declaração de strings. Inicialização de strings. Manipulação de strings. Exemplos. 1 definições Uma string é uma sequência, um conjunto, ou uma cadeia de caracteres.

Leia mais

Bacharelado em Ciência e Tecnologia Processamento da Informação. Equivalência Portugol Java. Linguagem Java

Bacharelado em Ciência e Tecnologia Processamento da Informação. Equivalência Portugol Java. Linguagem Java Linguagem Java Objetivos Compreender como desenvolver algoritmos básicos em JAVA Aprender como escrever programas na Linguagem JAVA baseando-se na Linguagem Portugol aprender as sintaxes equivalentes entre

Leia mais

PROGRAMAÇÃO A. Estrutura Sequencial

PROGRAMAÇÃO A. Estrutura Sequencial PROGRAMAÇÃO A Estrutura Sequencial INTRODUÇÃO A estrutura mais simples que um algoritmo pode ter é conhecida como sequencial. Nessa estrutura os passos do algoritmo são executados, um a um, na ordem em

Leia mais

INF 1620 P3-25/11/05 Questão 1 Nome:

INF 1620 P3-25/11/05 Questão 1 Nome: INF 1620 P3-25/11/05 Questão 1 Dizemos que uma matriz quadrada é um quadrado mágico se a soma dos elementos de cada linha, a soma dos elementos de cada coluna e a soma dos elementos de sua diagonal principal

Leia mais

SISTEMAS DE PROGRAMAÇÃO I UNIDADE 2 PROGRAMAÇÃO BÁSICA EM C

SISTEMAS DE PROGRAMAÇÃO I UNIDADE 2 PROGRAMAÇÃO BÁSICA EM C SISTEMAS DE PROGRAMAÇÃO I UNIDADE 2 PROGRAMAÇÃO BÁSICA EM C TURMA: º Período DISCIPLINA: Sistemas Embarcados I PROFESSOR: Pedro Pacheco Bacheti pedro.exercicios@gmail.com www.sites.google.com/site/professorengpedro

Leia mais

Representação de Dados

Representação de Dados Representação de Dados Representação binária Exemplo: 15213 10 11101101101101 2 Vantagens: Implementação eletrônica Possibilidade de armazenar elementos com dois estados Transmissão eletrônica confiável

Leia mais

Estruturas de Dados Aulas 3 e 4: Uso da. 14/03/2011 e 16/03/2011

Estruturas de Dados Aulas 3 e 4: Uso da. 14/03/2011 e 16/03/2011 Estruturas de Dados Aulas 3 e 4: Uso da memória e Vetores 14/03/2011 e 16/03/2011 Uso da memória Existem 3 maneiras de reservar o espaço da memória: Variáveis globais (estáticas) Espaço existe enquanto

Leia mais

Linguagem C. Programação Estruturada. Fundamentos da Linguagem. Prof. Luis Nícolas de Amorim Trigo nicolas.trigo@ifsertao-pe.edu.

Linguagem C. Programação Estruturada. Fundamentos da Linguagem. Prof. Luis Nícolas de Amorim Trigo nicolas.trigo@ifsertao-pe.edu. Programação Estruturada Linguagem C Fundamentos da Linguagem Prof. Luis Nícolas de Amorim Trigo nicolas.trigo@ifsertao-pe.edu.br Sumário Estrutura Básica Bibliotecas Básicas Tipos de Dados Básicos Variáveis/Declaração

Leia mais

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: ponteiros e alocação dinâmica

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: ponteiros e alocação dinâmica Universidade Federal de Uberlândia Faculdade de Computação Linguagem C: ponteiros e alocação dinâmica Prof. Renato Pimentel 1 Ponteiros 2 Prof. Renato Pimentel 1 Ponteiros: introdução Toda a informação

Leia mais

ALGORITMOS E ESTRUTURAS DE DADOS CES-11

ALGORITMOS E ESTRUTURAS DE DADOS CES-11 ALGORITMOS E ESTRUTURAS DE DADOS CES-11 Prof. Paulo André Castro pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac IECE - ITA Revisão CES-11 Tipos escalares primitivos Tipos constituídos

Leia mais

Cerne. Conhecimento para o Desenvolvimento (21) (11) MSN:

Cerne. Conhecimento para o Desenvolvimento (21) (11) MSN: Conhecimento para o Desenvolvimento Cerne Tecnologia e Treinamento Apostila Visual C++ Express Aplicado à Eletrônica (21) 4063-9798 (11) 4063-1877 E-mail: cerne@cerne-tec.com.br MSN: cerne-tec@hotmail.com

Leia mais

Tipos Abstratos de Dados. Estrutura de Dados

Tipos Abstratos de Dados. Estrutura de Dados Tipos Abstratos de Dados Tipo Abstrato de Dados ou TAD Idéia principal: desvincular o tipo de dado (valores e operações) de sua implementação: O que o tipo faz e não como ele faz! Vantagens da desvinculação:

Leia mais

Controle de Fluxo. Laços e Desvios incondicionais

Controle de Fluxo. Laços e Desvios incondicionais Controle de Fluxo Laços e Desvios incondicionais Laços Em C, há três comandos de ITERAÇÃO ou LAÇOS: for while do... while Estes permitem que um conjunto de instruções seja executado até que ocorra uma

Leia mais

Introdução à linguagem C++

Introdução à linguagem C++ Estrutura de Dados e Algoritmos e Programação e Computadores II Aula 2: Introdução à linguagem C++ Introdução à linguagem C++ Conceitos básicos: variáveis, tipos de dados, constantes, I/O, etc. Estruturas

Leia mais

A LINGUAGEM DE PROGRAMAÇÃO C

A LINGUAGEM DE PROGRAMAÇÃO C Seminário de Linguagens de Programação A LINGUAGEM DE PROGRAMAÇÃO C Guilherme Pina Cardim Ruben de Best Prof. Dr. Rogério Eduardo Garcia A Linguagem C C é uma linguagem de programação de finalidade geral

Leia mais

Comandos de entrada. e saída. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada.

Comandos de entrada. e saída. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada. e saída Biblioteca stdio.h Comandos Função scanf() Função gets() Função getchar() Material cedido pelo prof. Daniel Callegari scanf() Rotina de entrada que lê todos os tipos de dados. Protótipo: int scanf(const

Leia mais

Disciplina de Algoritmos e Programação

Disciplina de Algoritmos e Programação Disciplina de Algoritmos e Programação Aula Passada 1º Programa: olamundo.c #include // biblioteca padrão de E/S /* Programa Olá Mundo */ int main(void) { printf( Olá mundo\n ); //exibe Olá mundo

Leia mais

Lição 4 Fundamentos da programação

Lição 4 Fundamentos da programação Lição 4 Fundamentos da programação Introdução à Programação I 1 Objetivos Ao final desta lição, o estudante será capaz de: Identificar as partes básicas de um programa em Java Reconhecer as diferenças

Leia mais

a) Calcule o valor médio de CPI apresentado na execução deste programa P, utilizando-se C1 sem e com otimização.

a) Calcule o valor médio de CPI apresentado na execução deste programa P, utilizando-se C1 sem e com otimização. UNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO Sistemas de Computação 2016.2 Profa.: Simone Martins Lista 1 1. Um programa P foi compilado com um compilador

Leia mais

Ambiente de desenvolvimento

Ambiente de desenvolvimento Linguagem C Ambiente de desenvolvimento Um programa em C passa por seis fases até a execução: 1) Edição 2) Pré-processamento 3) Compilação 4) Linking 5) Carregamento 6) Execução Etapa 1: Criação do programa

Leia mais

ITENS FUNDAMENTAIS Programando em C++

ITENS FUNDAMENTAIS Programando em C++ INFORMÁTICA E COMPUTAÇÃO - CMP 1060 AULA 3 ITENS FUNDAMENTAIS Programando em C++ 1. Constantes São valores que são mantidos fixos pelo compilador. Tipo de Dado Exemplos de Constantes char b \n \0 int 2

Leia mais

Métodos Computacionais. Comandos Condicionais e de Repetição em C

Métodos Computacionais. Comandos Condicionais e de Repetição em C Métodos Computacionais Comandos Condicionais e de Repetição em C Tópicos da Aula Hoje vamos acrescentar comportamentos mais complexos a programas em C Comandos Condicionais if-else switch Comandos de Repetição

Leia mais

Aula 4 Estruturas de Controle

Aula 4 Estruturas de Controle UNIP Universidade Paulista Ciência da Computação Aula 4 Estruturas de Controle Prof. Célio Ricardo Castelano 1 Tópicos Abordados 1) Instruções de seleção em Java: 2) Instruções de repetição em Java: 2

Leia mais

Programação Aplicada à Engenharia

Programação Aplicada à Engenharia Universidade Federal Rural do Semi-Árido Departamento de Ciências Ambientais Programação Aplicada à Engenharia Aula 07: Aritmética e Tomada de decisão Silvio Fernandes 2009.1 1 Operadores Aritméticos Operadores

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Programação Variáveis em C Slides da Profa. Roseli Romero Comandos de Entrada e Saída O objetivo de escrevermos programas é em última análise, a obtenção de resultados (Saídas) depois da elaboração

Leia mais

100 Exercícios Teóricos não resolvidos

100 Exercícios Teóricos não resolvidos 1 GUIA DE ESTUDO LINGUAGEM DE PROGRAMAÇÃO C++ 100 Exercícios Teóricos não resolvidos Prof. Universitário e Consultor Silva Quiala Msc, Bsc, HND Uso exclusivo para estudantes ( Versão Adaptada) 21 de Setembro

Leia mais

Introdução à Linguagem C

Introdução à Linguagem C Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa Prof. Yandre Maldonado - 2 Linguagem C: Desenvolvida por Dennis Ritchie nos laboratórios da AT&T Bell (EUA) no início dos anos 70; Algol

Leia mais

Linguagem C Operadores

Linguagem C Operadores Linguagem C Operadores Objetivos Abordar os conceitos sobre os Operadores demonstrando o seu uso com exemplos para um melhor aprendizado. Pré-requisitos É necessário que o leitor tenha acompanhado o artigo

Leia mais

Algoritmos RESUMO - LINGUAGEM C

Algoritmos RESUMO - LINGUAGEM C Algoritmos RESUMO - LINGUAGEM C 1 Sintaxe da linguagem C Componentes reconhecidos pela linguagem C (sintaxe da linguagem): tipos propriedades dos dados; declarações partes do programa, podendo dar significado

Leia mais

Vetores. e o programa deverá ler os valores separadamente:

Vetores. e o programa deverá ler os valores separadamente: Vetores Vetor é um tipo de dado usado para representar uma certa quantidade de variáveis de valores homogêneos (do mesmo tipo). Imagine o seguinte problema: calcular a média das notas da prova de 5 alunos.

Leia mais

Algoritmos: Conceitos Fundamentais. Slides de autoria de Rosely Sanches e Simone Senger de Souza

Algoritmos: Conceitos Fundamentais. Slides de autoria de Rosely Sanches e Simone Senger de Souza Algoritmos: Conceitos Fundamentais Slides de autoria de Rosely Sanches e Simone Senger de Souza DADOS E EXPRESSÕES Uso da Informação Computador manipula informações contidas em sua memória. Classificadas

Leia mais

Introdução à Computação

Introdução à Computação Introdução à Computação Linguagem C Aula de hoje Introdução Vetores (revisão) Relacionamento entre vetores e ponteiros Professor: André de Carvalho Definição: coleção de valores de dados individuais com

Leia mais

11 - Estrutura de um programa em C

11 - Estrutura de um programa em C 11 - Estrutura de um programa em C directivas para o compilador { main ( ) declarações instruções } -É possível utilizar comentários, exemplo: /* Comentário */ que não são traduzidos pelo compilador, pois

Leia mais