Curso de C. Introdução by Arnaldo V. Moura e Daniel F. Ferber 3/10/ :43 AM

Documentos relacionados
Curso de C. Introdução by Arnaldo V. Moura e Daniel F. Ferber

Ambiente de desenvolvimento

ENGENHARIA DE PRODUÇÃO PROGRAMAÇÃO Algoritmos Conceitos Iniciais. Prof. Luiz Fernando Laguardia Campos FMS

ALGORITMOS AULA 01. Baseado nas aulas do Prof. Jorgiano Vidal

INSTITUTO FEDERAL DE! EDUCAÇÃO, CIÊNCIA E TECNOLOGIA RIO GRANDE DO NORTE

Estruturas de Repetição

Introdução a Programação de Jogos

Algoritmos e Programação

Conceitos Básicos de Programação

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

Introdução à Programação

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

Introdução à Programação

3. Linguagem de Programação C

3. Linguagem de Programação C

Programação em C. Variáveis e Expressões. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação

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

Introdução a Computação

INF 1005 Programação I

GABARITO Questão a b c d e

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

Apresentação da ferramenta de programação. Comandos de entrada e saída. Prof. Alex Camargo

Fundamentos de Programação 1

Introdução à linguagem de programação C. Alexandre Mota

Conhecendo a Linguagem de Programação C

Faculdade de Computação

4) Defina o que vem a ser um algoritmo, e porque, o mesmo depende do processo.

LINGUAGEM E TÉCNICAS DE PROGRAMAÇÃO

Classificação das linguagens de programação

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

USP - ICMC - SSC SSC o. Semestre Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria

Algoritmos e Estruturas de Dados I (DCC/003) Introdução à Programação de Computadores. Aula - Tópico 1

Conceitos básicos. Computação eletrônica: Gurvan Huiban

Estrutura de Dados Básica

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA RIO GRANDE DO NORTE

ESTRUTURAS CONDICIONAIS. Introdução à Ciência da ComputaçãoI Simone Senger de Souza

ESTRUTURAS CONDICIONAIS. Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza

Introdução à Programação

Aula 3: Algoritmos: Formalização e Construção

Variáveis e Memória. Revisão. Conceitos. Operações sobre a memória

Fundamentos de Programação

TE091 Programação Orientada a Objetos Engenharia Elétrica

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

Máquinas. Visão geral O que você precisa Fatores de sucesso O futuro. realizar algo, precisa que alguém m lhe indique o que fazer V.V.

SSC304 Introdução à Programação Para Engenharias. Introdução a Linguagem C. GE4 Bio

GFM015 Introdução à Computação

Programação 1. Atribuição, operadores aritméticos, entrada de dados. Técnico em Eletrônica Semestre 5 02

Algoritmos e Técnicas de Programação. Professora Luciana Faria

1 Introdução e Conceitos básicos

LINGUAGEM E TECNICAS DE PROGRAMAÇÃO

Programação de Computadores II

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

Laboratório de Introdução à Ciência da Computação I

Aula 4 Introdução ao C

Estrutura e Funcionamento dos Computadores (Conceitos Básicos)

Revisão. Profa Marina Gomes

Aula 3 Primeiros programas

Introdução a Programação de Jogos

Linguagens de Programação

Aula 2: Introdução a Linguagem C

Linguagem de Programação C

Modulo 4: while do while (limites de variáveis)

Operações em Arquivos. MC102 Felipe Bergo

Linguagem C: Introdução

Laboratório de Introdução à Ciência da Computação I

Algoritmos e Estruturas de Dados I (DCC/003) Funções

11 - Estrutura de um programa em C

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO E DO DESPORTO CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS CEFET-MG UNIDADE DE ENSINO

Carlos Eduardo Batista. Centro de Informática - UFPB

PROGRAMAÇÃO I. Introdução

Laboratório de Introdução à Ciência da Computação I

Sumário. Computador. Processador. Computador Noção de algoritmo Linguagem de programação Léxico, sintaxe e semântica Gramáticas Fluxogramas

Introdução à Programação Aula 16. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

Introdução à linguagem C

Curso de C. Declaração de Variáveis 18/3/ :48 1

Material sobre Funções AEDS 1

Introdução à Programação em C

MAC2166 Introdução à Computação para Engenharia Escola Politécnica Primeira Prova 07 de abril de 2008

Aula 01 Algoritmos e lógica de programação e introdução ao C++

Estrutura de Programas e Tipos de Dados Simples

Programação de Computadores II

Programação de Computadores IV

Estruturas de Repetição

Disciplina: Introdução a Programação. IPRJ/UERJ Professora: Sílvia Mara da Costa Campos Victer. Índice: Aula1 - Introdução Programa Algoritmo

Programação II. Aula 3

A Linguagem C. A forma de um programa em C

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

Programação. Module Introduction. Cap. 1 Fundamentos de Computadores

Capítulo 1: Introdução à Linguagem C. Pontifícia Universidade Católica Departamento de Informática

Algoritmos RESUMO - LINGUAGEM C

Utilização da Linguagem C

SSC300- Linguagens de Programação e Aplicações Profa Vânia de Oliveira Neves. ICMC/USP São Carlos

Conceitos Básicos de C

Algoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza

Linguagem de Programação

Transcrição:

Curso de C Introdução 1

Introdução Roteiro: Recordando Algoritmos Linguagem de Programação O computador Instruções de Máquina Níveis de Abstração Compilação 2

Algoritmos Recordando: Algoritmo: conjunto finito de instruções Usualmente, começa com a primeira instrução Execução seqüencial, uma instrução de cada vez, com possibilidade de saltos para outras instruções Instruções individuais suficientemente elementares, ou primitivas Sempre deve alcançar uma instrução PARE, para terminar a execução do algoritmo. Utiliza dados (entrada) e gera um resultado (saída) 3

Algoritmos Exemplo: Calcular o máximo divisor comum Entrada Condição Saída Salto Algoritmo em Português 1. Leia dois números. 2. Divida o primeiro pelo segundo e guarde o resto. 3. Se o resto for diferente de 0 (zero), então salta para passo 5 4. Escreva o segundo número e PARE. 5. Substitua o primeiro número pelo segundo. 6. Substitua o segundo número pelo resto da divisão. 7. Retorne ao passo 2. Início Fim 4

Algoritmos Cada instrução precisa ser: Não ambígua Uma única operação bem definida Tecnologicamente viável Representações possíveis: Diagramas Modelos matemáticos Linguagens de programação 5

Algoritmo em Português Algoritmos 1. Leia dois números. 2. Divida o primeiro pelo segundo e guarde o resto. 3. Se o resto for diferente de 0 (zero), então salta para passo 5 4. Escreva o segundo número e PARE. 5. Substitua o primeiro número pelo segundo. 6. Substitua o segundo número pelo resto da divisão. 7. Retorne ao passo 2. Exemplo: Calcular o máximo divisor comum Potencialmente ambíguo Não é uma única instrução bem definida 6

Linguagem de Programação Opções de representar algoritmos: Diagramas Uma linguagem específica para escrever algoritmos Linguagens de programação 7

Linguagem de programação Conceito: A linguagem de programação é um veículo para se escrever algoritmos. Características: Vocabulário restrito Regras de sintaxe Verificação automática da sintaxe 8

Exemplo Exemplo: Calcular o máximo divisor comum Início Entrada Saída Fim Linguagem de Programação int a, b, r; scanf( %d %d, &a, &b); do { r = a % b; if (r == 0) break; a = b; b = r; }; printf( O MDC é %d, a); return; Palavra chave Símbolos específicos de operações Regra: ponto-e-virgula após cada operação 9

O Computador Conceito: Realiza processamento sobre dados armazenados no computador. Executa operações matemáticas e lógicas sobre dados. Recebe dados do meio externo (entrada) Apresenta os resultados para o meio externo (saída) Armazenamento Processamento Entrada Teclado, mouse, rede, scanner, webcam, câmera digital... memória, fitas, discos, CDs Saída Monitor, impressora, caixa de som 10

O Computador Instruções de Máquina: Representam operações primitivas sobre dados. Em formato digital próprio (código de máquina) Armazenamento dados Processamento Entrada instruções resultados Saída O computador é uma máquina rápida e eficiente para simular algoritmos! 11

O Computador Exemplo: Calcular o máximo divisor comum Início Entrada Condição Salto Saída Fim IN ax IN bx divisao: MOV dx, 0 DIV bx CMP dx, 0 JE fim MOV ax, bx MOV bx, dx JMP divisao fim: OUT bx HLT Instruções de Máquina Detalhes do computador: Controle de circuito eletrônico Descrição detalhista Representação pouco intuitiva 12

Níveis de Abstração Dois casos extremos: Português: Fácil, intuitivo Computador não entende Ambíguo, mal definido Linguagem de Máquina: Complexo e trabalhoso Única forma aceita pelo computador Preciso, bem definido Envolve detalhes específicos do computador, irrelevantes para o algoritmo complexidade Português Ling. Programação Linguagem de Máquina abstração 13

Níveis de Abstração Objetivos: Descrição precisa do algoritmo Independente do computador Nível de complexidade intermediário! Português complexidade Ling. Programação Linguagem de Máquina abstração Linguagem de programação 14

Construção do Programa Passo 1: Elaborar um algoritmo Passo 2: Reescrever o algoritmo em C Passo 3: Acionar o compilador Algoritmo Programador Programa C Compilador Programa Executável 15

Construção do Programa Passo 4: Testar o programa Erros? Verificar programa em C Continuam erros? Verificar o algoritmo! Algoritmo Programador Programa C Compilador Programa Executável Erros? 16

Curso de C Primeiro Programa 17

Primeiro Programa Roteiro: O primeiro programa em C Estrutura do código fonte Comentários Diretivas de compilador Procedimento principal Estilo do código fonte 18

O Programa Bom Dia : Exemplo /* PrimeirosPassos.c: Nosso primeiro programa em C */ #include <stdio.h // mais um comentario #include <stdlib.h int main(int argc, char* argv[]) { printf("o primeiro programa lhe deseja um bom dia!"); return 0; } 19

Estrutura do Código Fonte Comentários Diretivas de compilador Procedimento principal /* PrimeirosPassos.c */ #include <stdio.h #include <stdlib.h int main(int argc, char* argv[]) { printf("bom dia!"); return 0; } Pontuação Instrução Instrução 20

Estrutura do Código Fonte Comentários: Texto ignorado pelo compilador Documentação útil para descrever trechos do algoritmo Possível em qualquer posição do código fonte Duas formas para comentários: Uma linha: // Comentário... Várias linhas: /* Comentário... mais comentários... */ // PrimeirosPassos.c: Nosso primeiro programa em C /* PrimeirosPassos.c: Nosso primeiro programa em C */ /* PrimeirosPassos.c: Nosso primeiro programa em C */ 21

Diretivas de Compilador: Estrutura do Código Fonte Informam outros arquivos que devem ser consultados antes de compilar Definem parâmetros utilizados pelo compilador Colocadas no início do código fonte #include <stdio.h #include <stdlib.h #include <math.h 22

Procedimento principal: Seqüência de instruções Estrutura do Código Fonte Pontuação: ponto-e-vírgula termina instruções Chaves agrupam instruções relacionadas int main(int argc, char* argv[]) { printf("bom dia!"); return 0; } 23

Procedimento principal: Estrutura do Código Fonte Siga sempre o seguinte esqueleto: int main(int argc, char* argv[]) {... Algoritmo Obrigatório... return 0; } Obrigatório 24

Práticas interessantes: Estrutura do Código Fonte Linhas em branco são ignoradas int main(int argc, char* argv[]) { printf("bom dia!"); return 0; } int main(int argc, char* argv[]) { printf("bom dia!"); (recomendado) (permitido) } return 0; 25

Estrutura do Código Fonte Práticas interessantes: Espaços e tabulações são ignoradas int main(int argc, char* argv[]) { printf("bom dia!"); return 0; } (recomendado) (permitido, mais confuso) int main(int argc, char* argv[]) { printf("bom dia!"); return 0; } 26

Estrutura do Código Fonte Práticas interessantes: De preferência, uma instrução por linha int main(int argc, char* argv[]) { printf("bom dia!"); return 0; } (recomendado) (permitido, mais confuso) int main(int argc, char* argv[]) { printf("bom dia!"); return 0; } 27

Curso C Primeiro Programa no Microsoft Visual Studio.net 28

Primeiro Programa Roteiro: Criar um novo projeto Escrever o programa Compilar Executar 29

Primeiro Programa Projeto Visual Studio: Criar um projeto para cada programa! Um projeto contém: Arquivos em Linguagem de Programação Configuração Programa compilado Projeto: tipo e recursos disponíveis: Interface Gráfica Ferramentas adicionais de programação 30

Primeiro Programa Criar projeto: 1 2 3 31

Escolher tipo de projeto: Primeiro Programa 1 3 2 32

Configurar projeto: Primeiro Programa 33

Configurar projeto: Primeiro Programa 1 2 3 34

Primeiro Programa Adicionar arquivo de código fonte: 3 1 2 35

Primeiro Programa Adicionar arquivo de código fonte: 1 2 36

Editar código fonte: Primeiro Programa Abrir o arquivo que armazenará o código fonte: 1. Duplo-clicar sobre o nome do arquivo: main.c 2. O conteúdo do arquivo é mostrado na tela. 37

Primeiro Programa 38

Primeiro Programa Executar: 39