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

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

Fundamentos de programação

Apresentações semelhantes


Apresentação em tema: "Fundamentos de programação"— Transcrição da apresentação:

1 Fundamentos de programação

2 UTFPR – Fundamentos de Programação
Um programa de computador é um conjunto de instruções que descrevem uma tarefa a ser realizada por um computador com o objetivo de resolver um problema. Programa pode referir-se às instruções escritas de acordo com a sintaxe e a semântica definidas por uma linguagem de programação (código fonte) ou à forma executável desse código. Um programa é basicamente composto por: Entrada Obtenção de dados para o programa trabalhar (receber dados do usuário ou de outras fontes) Processamento Manipulação de constantes e de variáveis Resolução de expressões matemáticas Execução de instruções sequenciais, de decisão e de repetição Manipulação de dados em bases de dados e arquivos ... Saída Informar dados de processamento (para o usuário, armazená-los, transmiti-los, acionar dispositivos...) UTFPR – Fundamentos de Programação

3 1.1 Estrutura básica de um programa
Entrada Variáveis e constantes Processamento Instruções Saída Texto, conteúdo de variáveis e formatação fluxo de execução sequencial fluxo de execução com desvio fluxo de execução com repetição UTFPR – Fundamentos de Programação

4 1.2 Método para construir um programa
Método para a construção de um programa: Entender o problema; Retirar do problema as entradas de dados necessárias; Definir as saídas que o programa deve fornecer; Determinar o que deve ser feito para transformar as entradas nas saídas (o algoritmo), resolver o problema; Determinar o tipo de dado a ser manipulado, definindo as variáveis e as constantes necessárias; Definir as instruções e as estruturas de decisão e de repetição necessárias; Apresentar os resultados; Verificar se as instruções definidas resolvem o problema da maneira esperada; Teste de mesa, por exemplo. UTFPR – Fundamentos de Programação

5 UTFPR – Fundamentos de Programação
1.4 Considerações No início do programa colocar o enunciado do problema; Comentar as partes mais complexas ou relevantes do programa; Utilizar espaços e linhas em branco para melhorar a legibilidade do programa, mas sem abusar dos mesmos; Escolher nomes representativos para os identificadores; Um comando por linha é suficiente; Utilizar parênteses para aumentar a legibilidade das expressões e evitar erros; Utilizar identação adequada. Identar o código é fundamental para sua legibilidade. UTFPR – Fundamentos de Programação

6 UTFPR – Fundamentos de Programação
2 Linguagem C Linguagem C Criada por Dennis M.Ritchie em 1972, nos laboratórios Bell. Definida por uma norma ANSI em 1988. UTFPR – Fundamentos de Programação

7 2.1 Palavras reservadas da linguagem C
Palavras chave da linguagem 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 * ANSI UTFPR – Fundamentos de Programação

8 2.2 Estrutura de um programa C
Estrutura básica de um programa C /* Programa em Linguagem C */ //comentário #include <stdio.h> //biblioteca com funções int main(void)//função principal {//marca o início do bloco de instruções /*instruções: declaração de variáveis e constantes obtenção de valores para variáveis operações lógicas e aritméticas estruturas sequenciais, de decisão e de repetição apresentação de resultados*/ }//marca o fim do bloco de instruções e da função main UTFPR – Fundamentos de Programação

9 2.2 Estrutura de um programa C
Um programa em C é constituído por uma ou mais funções. Em um programa C executável deve existir uma e somente uma função com a identificação main Estrutura básica de um programa em C: #include “biblioteca” Nome_da_funcao ( ) //pode ser a main ou outra função { Variáveis locais; Instruções; } Exemplo: # include <stdio.h> int main(void) int varlocal; //instrução que declara uma variável local varlocal = 3; //instrução varlocal = varlocal + 5; //instrução printf(“Conteúdo da variável %d”,varlocal); //instrução UTFPR – Fundamentos de Programação

10 UTFPR – Fundamentos de Programação
2.2.1 Diretiva include #include biblioteca Instrui o compilador a ler o conteúdo de um arquivo e a considerar o conteúdo desse arquivo. O nome do arquivo deve estar entre aspas (procura-o inicialmente no diretório atual) ou entre símbolos de menor e de maior (procura-o nos diretórios padrão de include para o compilador). #include “biblioteca1.h” #include “arquivo1.c” #include <stdio.h> Recomendação: “ ” para incluir arquivos do projeto; < > para incluir os arquivos de cabeçalho padrão. UTFPR – Fundamentos de Programação

11 2.2.2 Ponto e vírgula e Chaves
Toda a instrução, ou comando, em C termina obrigatoriamente com “;” Chaves: Utilizadas para definir um bloco ou um conjunto de instruções relacionadas e logicamente conectadas. Um bloco começa com uma { e termina com uma } UTFPR – Fundamentos de Programação

12 UTFPR – Fundamentos de Programação
2.2.3 Bloco de comandos Um bloco de comandos ou conjunto de instruções pode ser colocado em qualquer lugar em que seja possível a colocação de uma única instrução. Exemplo: #include <stdio.h> //contém o scanf e o printf int main (void) { int total, a=1, b=2; if (a<b) scanf(“%d”,&total); printf (“%d\n”, total); } prinf(“\n a:%d e b:%d”,a,b); Bloco de comandos Bloco de comandos UTFPR – Fundamentos de Programação

13 UTFPR – Fundamentos de Programação
2.2.4 Comentários Comentários são anotações desconsideradas na compilação/interpretação ou execução do programa. /* ... */ - comentário com início e fim delimitado, ou de múltiplas linhas // - é comentado a partir da especificação // até o final da respectiva linha Exemplos: /* o imposto deve considerar a alíquota do ICMS. */ preco = precobruto + imposto; //mostrar o valor armazenado na variável preço printf (“Preço do produto é %.2f", preco); printf (“Preço do produto é %.2f", preco); //imprimir o preço UTFPR – Fundamentos de Programação

14 UTFPR – Fundamentos de Programação
2.2.5 Instruções Instruções terminam sempre com ponto e vírgula (;) Instrução de atribuição de um valor para uma variável variável = valor; //variável “recebe” valor Exemplos: a = 3; x = 3+4/2; y= sqrt(3*a); Instrução para chamada a (uso de) uma função nome_da_função (parâmetros); printf(“Informe um valor: ”); scanf(“%d”, &Valor); funcao1(1,Valor, ‘r’); UTFPR – Fundamentos de Programação

15 3 Elementos fundamentais da linguagem C
Tipos de dados; Variáveis e constantes; Operadores aritméticos, relacionais e lógicos; Instruções de entrada e saída; Estrutura sequencial; Estruturas de controle decisão; Estruturas de controle repetição; Estruturas de dados homogêneos; Estruturas de dados heterogêneos; Funções. UTFPR – Fundamentos de Programação

16 UTFPR – Fundamentos de Programação
3.1 Tipos de dados Tipos de dados representam os tipos de valores que podem ser manipulados por um programa: Básicos: inteiros: int reais ou ponto flutuante: float e double caracteres: char sem valor: void Derivados dos tipos básicos: Vetores (array) de caracteres (string) e numéricos, unidimensionais e multidimensionais (matriz) registros (struct) arquivos em disco (file) ... Objetos (orientação a objetos) Agrupam dados (atributos do objeto) e funções (métodos) que manipulam esses dados. UTFPR – Fundamentos de Programação

17 3.1 Tipos de dados Tipos de dados básicos char 8 0 a 255 int
Tamanho em bits Faixa char 8 0 a 255 int 16 (depende da arquitetura de hardware) a 32767 float 32 -3.4E-38 a 3.4E38 seis dígitos de precisão double 64 -1.7E-308 a 1.7E308 dez dígitos de precisão void Sem valor UTFPR – Fundamentos de Programação

18 3.1.1 Tipos de dados: modificadores de tipos
Exemplo: long int -> 32(bits), faixa a unsigned char -> 8 (bits), faixa de 0 a 255 Modificador Aplica-se a Significa short int Menor dimensão long int, double Maior dimensão signed char, int Com sinal unsigned Sem sinal Os modificadores signed, unsigned, short e long podem ser aplicados aos tipos básicos char e int; long pode ser aplicado a double (long float tem o mesmo significado que double); Signed com int é redundante; unsigned com ponto flutuante pode ser permitido mas reduz portabilidade; UTFPR – Fundamentos de Programação

19 3.1.2 Tipos de dados: modelador
Modelador de tipo (type cast) Um modelador é aplicado a um valor, expressão ou variável. Ele força o mesmo a ser de um tipo especificado. Forma geral: (tipo) valor/expressão/variável Exemplo: #include <stdio.h> int main (void)        {    int Num=10; float F; F = (float) Num/7;  /* Uso do modelador transforma Num em float e posteriormente é realizada a divisão por 7, resultando uma divisão float*/ printf (“Resultado: %f",F); } Sem o modelador o C faria uma divisão inteira entre 10 e 7. O resultado seria 1 que seria convertido para float, mas continuaria a ser 1.0. Com o modelador, Num é transformado em float (10.0), dividido por inteiro, e resultado é float porque um dos divisores é float. UTFPR – Fundamentos de Programação

20 UTFPR – Fundamentos de Programação
3.2 Variáveis Uma variável indica uma posição de memória reservada, identificada por um nome (identificador), que pode ser utilizada para armazenar um valor de um tipo de dado especificado e esse valor poder ser recuperado. Uma variável possui um nome que a identifica e um tipo que determina o conteúdo que ela pode armazenar. Esse tipo determina a “quantidade” necessária de células de memória para armazenar um dado desse tipo. Memória Variável Nome UTFPR – Fundamentos de Programação

21 3.3 Português estruturado: mapeamento de variáveis na memória
O computador trabalha diretamente com os identificadores (os nomes definidos para as variáveis). A manipulação das células de memória é feita por meio dos seus endereços. O tradutor (compilador ou interpretador) faz uma associação entre os identificadores e os endereços de memória reservados para as mesmas. UTFPR – Fundamentos de Programação

22 UTFPR – Fundamentos de Programação
3.3 Português estruturado: Tabela de Símbolos Forma de associação entre as variáveis e os seus respectivos endereços de memória UTFPR – Fundamentos de Programação

23 UTFPR – Fundamentos de Programação
3.2 Variáveis Todas as variáveis em C devem ser declaradas. Forma geral de declaração: tipo identificador_da_variável; tipo é qualquer tipo de dado válido (char, int, float, double) mais qualquer modificador válido para o respectivo tipo de dado (long, short, signed, unsigned). identificardor_da_variável é o nome da variável, utilizado para acessar o seu conteúdo e para atribuir-lhe um valor para ser armazenado no endereço de memória reservado para a mesma. UTFPR – Fundamentos de Programação

24 UTFPR – Fundamentos de Programação
3.2 Variáveis Identificadores são nomes de variáveis, funções e outros elementos definidos pelos usuários. Podem possuir até 32 caracteres; O primeiro caractere deve ser letra ou sublinhado e os caracteres subsequentes podem ser letras, números ou sublinhados; C é case sensitive; Nome, NOME, NoMe - são identificadores distintos O nome (identificador) não pode ser o nome de uma palavra chave: auto, static, extern, int, long, if, while, do, UTFPR – Fundamentos de Programação

25 3.2.1 Declaração de variáveis
Exemplos de declaração de variáveis int Valor; float Preco; char Sexo; double Fatorial; Cada variável possui um espaço de memória reservado correspondente ao tamanho do seu tipo declarado. Nome da variável Tipo de dado UTFPR – Fundamentos de Programação

26 3.2.2 Inicialização de variáveis
As variáveis em C podem receber um valor no momento da sua declaração. Isso é determinado inicialização da variável. int Valor = 1; float Preco = ; char Sexo = 'F'; double Fatorial = 1; Valor de inicialização Nome da variável Tipo de dado UTFPR – Fundamentos de Programação

27 UTFPR – Fundamentos de Programação
3.2.3 Lista de variáveis Lista_de_variáveis - um ou mais nomes de identificadores separados por vírgula. Exemplos: int contador, i, j, valor1=0; double balanco_anual, balanco_mensal; UTFPR – Fundamentos de Programação

28 3.2.4 Atribuição a uma variável
1) NomeDaVariável = um valor (uma constante); 2) NomeDaVariável = uma variável; 3) NomeDaVariável = uma expressão; 4) NomeDaVariável = chamada a uma função; Semântica do comando de atribuição: 1) Armazena o valor atribuído à variável a partir da posição inicial do endereço de memória reservado para ela; 2) Copia o conteúdo da variável de origem armazenando-o a partir da posição inicial do endereço de memória reservado para a variável de destino; 3) Resolve a expressão matemática, em seguida armazena o resultado a partir da posição inicial do endereço de memória reservado para a variável; 4) Executa a função e armazena o seu retorno a partir da posição inicial do endereço de memória reservado para a variável. Obs. Se o tipo do valor atribuído à variável e o tipo da variável que recebe este valor forem distintos, pode ocorrer erro de incompatibilidade de tipo ou perda de informação. UTFPR – Fundamentos de Programação

29 3.3 Função de entrada de dados
Leitura de dados pela entrada padrão (teclado) scanf (“string de controle”, lista de argumentos); Onde: string de controle identifica o tipo de dado que será lido. lista de argumentos são os identificadores das variáveis que armazenarão os valores lidos. Exemplos: scanf(“%d”,&idade); scanf(“%s”,nome); %X X tipo de dado a ser lido Para strings (%s), o caractere & não deve ser usado. UTFPR – Fundamentos de Programação

30 3.3.1 Operador de Endereço & Saída: valor = 2, endereço = 0023FF70
Quando & é utilizado precedendo uma variável está sendo indicado o endereço dessa variável na memória. Exemplo: #include <stdio.h> int main (void) { int num; printf(“Informe um número: ”); scanf(“%d”,&num); /*No endereço reservado para a variável num será armazenado o valor informado para essa variável*/ printf (“valor = %d , endereço = %p”,num, &num); } Saída: valor = 2, endereço = 0023FF70 (o endereço varia conforme a memória da máquina) UTFPR – Fundamentos de Programação

31 3.3.2 Função de saída de dados
Apresentação de dados na saída padrão (monitor de vídeo) printf (“texto, strings de controle e caracteres de formatação”, lista de argumentos); Onde: Texto que será impresso literalmente ou caracteres de formatação. Strings de controle identificam o tipo de dado contido nas variáveis cujo conteúdo será mostrado. Caracteres de formatação indicam instruções como quebra de linha e tabulação. Lista de argumentos são os identificadores das variáveis que contêm constantes, chamadas a funções e expressões que possuem os valores a serem impressos, de acordo com os caracteres de formatação. Exemplo: printf(“\nSua idade é: %d anos\n”, idade); UTFPR – Fundamentos de Programação

32 3.3.2 Função de saída de dados
saída formatada com printf #include <stdio.h> int main(void) { printf (“%3.1f \n”, ); printf (“%.0f \n”, ); } X.Yf X quantidade de caracteres antes do ponto decimal Y quantidade de caracteres depois do ponto decimal Saída: 3456 UTFPR – Fundamentos de Programação

33 3.3.2 Função de saída de dados
Caracteres de formatação: \n nova linha \r enter \t tabulação (tab) \b retrocesso \” aspas \\ barra %% símbolo de % UTFPR – Fundamentos de Programação

34 3.3.3 Função de entrada/saída
Strings de controle: %c ® caractere %d ou %i ® inteiro %ld ® inteiro longo %e ® número ou notação científica %f ® ponto flutuante %o ® octal %x ® hexadecimal %s ® string (cadeia de caracteres) %lf ® double %Iu ® endereço de memória UTFPR – Fundamentos de Programação

35 UTFPR – Fundamentos de Programação
3.4 Operadores Operadores são elementos funcionais que atuam sobre operandos e produzem um determinado resultado. Uma expressão é composta de operadores e operandos. A expressão relaciona dois operandos (os números 3 e 2) por meio do operador de adição (+). Um operando pode ser o conteúdo de uma variável, o retorno de uma função ou um valor constante. UTFPR – Fundamentos de Programação

36 3.4 Operadores: expressões
Uma expressão matemática é um conjunto de variáveis e constantes numéricas relacionadas por meio de operadores aritméticos compondo uma fórmula que, uma vez avaliada, resulta um valor. O conceito de expressão aplicado à computação assume uma conotação mais ampla: uma expressão é uma combinação de variáveis, funções, constantes e operadores, e que, uma vez avaliada, resulta um valor. As variáveis e funções, constantes são os operandos. UTFPR – Fundamentos de Programação

37 UTFPR – Fundamentos de Programação
3.4 Operadores: expressão Triângulo de base (b) e altura (h) H B área = b x h 2 area = (b * h) / 2; matemática computacional A fórmula da área do triângulo utiliza três variáveis: b e h, que contém as dimensões do triângulo, e area que armazena o valor calculado (o resultado da expressão). Há, ainda, uma constante (2) e os operadores de multiplicação (*) e divisão (/). UTFPR – Fundamentos de Programação

38 UTFPR – Fundamentos de Programação
3.4 Operadores Operadores unários atuam sobre um único operando. Ex. O sinal de (-) na frente de um número, cuja função é inverter seu sinal. Operadores binários, quando atuam sobre dois operandos. Ex. soma, subtração, multiplicação e divisão. operadores resultado aritméticos numérico lógicos lógico relacionais lógico UTFPR – Fundamentos de Programação

39 3.4.1 Operadores aritméticos
Ação + Adição - Subtração * Multiplicação / Divisão % Resto da divisão inteira Subtração (unário) -- Decremento ++ Incremento UTFPR – Fundamentos de Programação

40 3.4.1.1 Incremento e Decremento
x = x + 1; é o mesmo que x++; x = x - 1; é o mesmo que x--; Exemplos: x = 10; y = ++x; coloca 11 em x e y recebe 11 y = x++; coloca 10 em y e x recebe 11 y = --x; coloca 9 em x e y recebe 9 y = x--; coloca 10 em y e x recebe 9 UTFPR – Fundamentos de Programação

41 3.4.2 Operadores relacionais
== igual a != diferente de > maior que < menor que >= maior ou igual a <= menor ou igual a Var X Var Y Teste lógico Resultado X=2 Y=3 X == Y Falso X != Y Verdadeiro X >= Y X < Y UTFPR – Fundamentos de Programação

42 UTFPR – Fundamentos de Programação
3.4.3 Operadores lógicos ! negação lógica && “e” lógico, conjunção || “ou” lógico, disjunção Condição1 Var1 = 3 Condição2 Var2 = 3 Condição1 & Condição2 Condição1 | | Condição2 ! Condição1 Var1 > 2 V Var2 > 1 F Var2 == 2 Var1 > 5 Var2 > 2 Var2 < 2 UTFPR – Fundamentos de Programação

43 UTFPR – Fundamentos de Programação
3.4.4 Operadores lógicos Em C, o resultado da comparação será o valor ZERO se o resultado de um teste lógico é FALSO e um valor DIFERENTE DE ZERO (normalmente 1) se resultado de um teste lógico é VERDADEIRO. Exemplo: #include <stdio.h> int main(void) { int verdadeiro, falso;   verdadeiro = (15 < 20); falso = (15 == 20); printf(“Verdadeiro= %d, Falso= %d”, verdadeiro, falso); } Saída: Verdadeiro = 1, Falso = 0 UTFPR – Fundamentos de Programação

44 3.4.5 Precedência de operadores
Maior precedência () [] -> ! (unário) (cast) * / % + - == != ! && || ? ; =  +=  -=  *=  /= etc. Menor precedência , O uso de parênteses altera a precedência dos operadores. operadores de mesma precedência, são executados da esquerda para a direita. UTFPR – Fundamentos de Programação

45 UTFPR – Fundamentos de Programação
Referências SCHILDT, H. C Completo e total, 3ª ed. São Paulo: Makron Books, 1996. MIZRANI, V. V. Treinamento em linguagem C: curso completo - módulo 1. São Paulo: McGraw-Hill, 1990. Materiais obtidos na Internet Auxílio do professor Omero F. Bertol UTFPR – Fundamentos de Programação


Carregar ppt "Fundamentos de programação"

Apresentações semelhantes


Anúncios Google