Introdução à Computação - Jorge Macêdo

Slides:



Advertisements
Apresentações semelhantes
ICC - 1. Histórico e Conceitos básicos
Advertisements

Introdução a Algoritmos
Linguagem de Programação I
Sistemas distribuídos Metas de Projeto Prof. Diovani Milhorim
Linguagem de Montagem Visão geral.
Engenharia de Software
Engenharia de Software
LABORATÓRIO DE PROGRAMAÇÃO
ICC – Matrizes Jorge Macêdo.
Faculdade de Ciências Sociais de Aplicadas de Petrolina – FACAPE
Introdução a Informática
INTRODUÇÃO À PROGRAMAÇÃO
Curso Sistemas de Informação I Disciplina: Arquitetura de Software
Softwares.
Linguagens de Programação
Análise e Projeto de Sistemas
Prof. Msc. Raul Paradeda Aula 2 Introdução
Introdução a Linguagem de Programação C
Introdução a Programação
Professor Fernando Luís
Paradigmas de programação
Lógica de Programação UNIDADE 1 – Introdução a) Computador
Sistemas Operacionais
Tomada de Decisão e Sistemas de Informação
Desafios do desenvolvimento de software
Prof.Alfredo Parteli Gomes
Fase de Elaboração: Fluxo de Requisitos
Algoritmos paralelos eficientes para alguns problemas de processamento de Cadeia de Caracteres Alunos: Diego Alencar dos Santos Melo Felipe Formagini Brant.
Sistemas Distribuídos
Linguagem de Programação II
ENGENHARIA DE AUTOMAÇÃO INDUSTRIAL
Introdução a Linguagem de Programação C
IFSul – Campus Venâncio Aires
Introdução a Programação
UMA VISÃO GERAL DA LINGUAGEM C
Caracterização e Objetivos das LP
Laboratório I Mateus Raeder Material baseado nos originais da
ICC – 4.2. Aritmética Binária
Engenharia de Software
SISTEMAS OPERACIONAIS
02/08/2011 Professor Leomir J. Borba- –
Definição A rigor, tudo o que pode ser armazenado eletronicamente pode ser chamado de software. Consideraremos aqui, como software, apenas os conjuntos.
Introdução à Engenharia de Software
ALGORITMOS Intensivo Janeiro e Fevereiro de 2011
Fundamentos de Arquitetura da Computação
Laboratório de Programação I Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Algumas notas sobre a linguagem de programação C
Qualidade de Software Aula 4
Engenharia de Software
CLP - Controlador Lógico Programável
Aula 1 – Profª Danielle Costa
Componentes de um Sistema de Computação
Linguagens de Programação Introdução Prof. Renato Melo.
Algoritmos e Programação I
Engenharia de Software
Software Básico Introdução à Organização de Computadores Capítulo 1 Mitsuo Takaki
Introdução à Computação - Jorge Macêdo1 ICC – Software Jorge Macêdo.
Algoritmos e Programação MC102
Linguagens de Programação
Engenharia de Software
Sistemas Operacionais
Introdução à lógica de programação
Aula 02 de Eng. de Requisitos
LÓGICA DE PROGRAMAÇÃO Curso: Técnico em Informática Professor: Ronaldo Disciplina: Lógica de Programação.
Módulo I – Softwares: Linguagens de Programação Prof.: Rogério Morais.
COMPILADORES 02 Prof. Marcos. COMPILADORES Do Programa à Execução Computadores das mais variadas arquiteturas têm funcionamento:
 Processamento de dados: requer a execução de uma série de passos, o programa (software)  Cada passo é uma instrução, ou ordem de comando, dada ao.
Ewerton Patrick, Fernando Henrique, Jéssica Rebeca.
Transcrição da apresentação:

Introdução à Computação - Jorge Macêdo ICC – Algoritmos 1 Jorge Macêdo Introdução à Computação - Jorge Macêdo

Programação I - Jorge Macêdo O que é software? Termo associado aos programas de computador. Visão muito restritiva. Software compreende: Programa Documentação Do sistema De usuário Programação I - Jorge Macêdo 2

Programação I - Jorge Macêdo O que é software? Produtos Genéricos Produzidos por uma organização de desenvolvimento e vendidos no mercado Pacotes de software Produtos sob encomenda (ou personalizados)‏ Encomendados por um cliente particular e desenvolvidos por uma empresa de software Sistemas de controle de dispositivos eletrônicos Programação I - Jorge Macêdo 3

Atributos de um bom software Além dos serviços que eles fornecem existem outros atributos associados Não estão diretamente associados ao que o software faz Estes Atributos: Refletem seu comportamento quando em funcionamento, A estrutura e Organização do programa fonte e também A Documentação associada. Programação I - Jorge Macêdo 4

Atributos de um bom software Dependendo da aplicação do sistema, o conjunto de atributos pode mudar. Exemplos Um sistema bancário deve ser seguro; Um jogo interativo deve tem uma resposta rápida; Um sistema de controle telefonia precisa ser confiável. Programação I - Jorge Macêdo 5

Objetivo da Engenharia de Programas Confeccionar programas com qualidade. Programa com qualidade: Produz resultados úteis e confiáveis na oportunidade certa. É fácil de usar, fácil de corrigir caso ocorra alguma falha. Fácil de modificar quando houver uma alteração de requisitos e passível de evolução. Opera com economia de recursos, foi desenvolvido no prazo estipulado e a um custo aceitável. Programação I - Jorge Macêdo 6

A importância do Software Durante as 3 primeiras décadas da era do computador, o principal desafio era desenvolver um HARDWARE de baixo custo e alto desempenho. O hoje o desafio é melhorar a qualidade (e reduzir os custos) das soluções baseadas em SOFTWARE! Programação I - Jorge Macêdo 7

Linguagem de Programação A comunicação com o computador também é feita através de um conjunto de regras, originando a: Linguagem de Programação! Exemplo: Pascal, C, Delphi, Java, etc. Programação I - Jorge Macêdo 8

Definição de Programas Programas são seqüências finitas de ordens que têm o objetivo de resolver um problema, apresentar uma figura, calcular valores, tomar ou auxiliar decisões. Programação I - Jorge Macêdo 9

Programação I - Jorge Macêdo Lógica de Programação Para se programar em uma linguagem é necessário possuir Lógica de Programação. Lógica de Programação consiste em compreender claramente os diversos passos e funções que são realizados na execução de um programa. Programação I - Jorge Macêdo 10

Programação I - Jorge Macêdo Algoritmo Algoritmo é uma seqüência de instruções organizadas de forma lógica e estruturada (sem desvios), expressas em linguagem natural (Português estruturado), que tem por finalidade resolver um problema ou descrever uma tarefa. Programação I - Jorge Macêdo 11

Exemplo – Escovar os Dentes Escovar os dentes pela manhã. Algoritmo Escovar_dentes Colocar creme dental na escova Escova os dentes Enxaguar a boca com água Enxugar a boca Fim_do_algoritmo. Programação I - Jorge Macêdo 12

Introdução à Computação - Jorge Macêdo Introdução ao C C é uma linguagem de programação de propósito geral Tem como meta características como: Portabilidade e Flexibilidade Não é atada a nenhum S.O. ou uma máquina particular. Tida como linguagem de programação de sistemas Bastante utilizada na construção de compiladores e S.O.’s Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Introdução ao C A primeira versão foi implementada para o sistema operacional UNIX pela Bell Laboratories Dennis M. Ritchie e Ken Thompson Implementaram no início da década de 1970 Rodava em um PDP11 da DEC (Digital Equipment Corporation)‏ C Difundiu-se rapidamente (1983) ANSI (American National Standard Institurte) padronizou a linguagem Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Introdução ao C Tornou-se popular como ferramenta para programação de computadores pessoais Para fabricantes de software comercial Para usuários finais interessados em programação Introdução à Computação - Jorge Macêdo

C comparado a outras linguagens Alto Nível Devemos entender como a capacidade da linguagem de compreender instruções em “dialetos” próximos ao Inglês Ex: Ada e Pascal Baixo Nível Para aquelas linguagens que se aproximam do Assembly, que a linguagem própria da máquina Introdução à Computação - Jorge Macêdo

C comparado a outras linguagens Quanto mais clara uma linguagem for para o humano (simplicidade >) Mais obscura o será para a máquina (velocidade <). Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Programa Introdução à Computação - Jorge Macêdo

Compilação e Interpretação C é uma linguagem compilada: lê todo o código fonte e gera o código objeto (ling. de máquina) uma única vez. Linguagens Interpretadas: lê o código fonte, traduz e executa cada vez que o programa for executado. Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Interpretação Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Compilação Introdução à Computação - Jorge Macêdo

Estrutura Básica de um Programa em C /* Primeiro Programa em C */ #include <stdio.h> main()‏ { printf("Meu primeiro programa em C\n"); } Introdução à Computação - Jorge Macêdo

Estrutura Básica de um Programa em C /* Primeiro Programa em C */ #include <stdio.h> main()‏ { printf("Meu primeiro programa em C\n"); } Introdução à Computação - Jorge Macêdo

Estrutura Básica de um Programa em C /* Primeiro Programa em C */ #include <stdio.h> main()‏ { printf("Meu primeiro programa em C\n"); } Introdução à Computação - Jorge Macêdo

Estrutura Básica de um Programa em C /* Primeiro Programa em C */ #include <stdio.h> main()‏ { printf("Meu primeiro programa em C\n"); } Introdução à Computação - Jorge Macêdo

Estrutura Básica de um Programa em C /* Primeiro Programa em C */ #include <stdio.h> main()‏ { printf("Meu primeiro programa em C\n"); } Introdução à Computação - Jorge Macêdo

Estrutura Básica de um Programa em C /* Primeiro Programa em C */ #include <stdio.h> main()‏ { printf("Meu primeiro programa em C\n"); } Introdução à Computação - Jorge Macêdo

Estrutura Básica de um Programa em C /* Primeiro Programa em C */ #include <stdio.h> main()‏ { printf("Meu primeiro programa em C\n"); } Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Fluxograma Tem por objetivo buscar a solução de um dado problema dividindo-o em pequenas partes. Essa divisão visa facilitar a compreensão do problema. Após a fase de interpretação do problema e da definição das variáveis a serem utilizadas, pode-se diagramar o algoritmo com o uso de fluxogramas. Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Fluxograma Componentes mas utilizados Terminador Comando Entrada de Dados Exibir Decisão Introdução à Computação - Jorge Macêdo

Exemplo em Fluxograma Início Meu primeiro progrma em C Fim Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Variável Variável: “objeto” que pode assumir diversos valores; Espaço de memória de um certo tipo de dado associado a um nome para referenciar seu conteúdo. Podem estar declaradas no início do arquivo fonte (globais)‏ São visíveis em todo o programa fonte Ou em funções (locais)‏ Visíveis somente nas funções onde são declaradas Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Nomes de Variáveis Podem ser formados por letras e números Deve começar por uma letra Sublinhado também pode ser considerado uma letra. Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Exemplo 01 /* Programa : Exemplo de variáveis! */ #include <stdio.h> void main()‏ { int num; /* declaracao */ num = 2; /* inicializa */ printf(“Este é o número dois: %d”, num); /*acessa a variável */ getchar(); } Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Exemplo 01 Início num ← 2 Este e o numero dois: ESCREVA(num)‏ Fim Introdução à Computação - Jorge Macêdo

Variáveis - Continuação Em C todas as variáveis devem ser declaradas Se você tiver mais de uma variável do mesmo tipo, poderá declará-las de uma única vez separando seus nomes por vírgulas. int aviao, foguete, helicoptero; O operador de atribuição ( = ) é usado “colocar” valores em uma variável Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Tipos de Dados O tipo de uma variável informa a quantidade de memória, em bytes, que esta irá ocupar e a forma como o seu conteúdo será armazenado. Em C existem apenas 5 tipos básicos de variáveis, sendo: int,float,double,char e void Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Tipos de Dados Sem valor void Real de Ponto Flutuante de Dupla Precisão double Real de Ponto Flutuante float Inteiro int Caracter char Categoria Identificador Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Modificadores Com exceção de void, os tipos de dados básicos podem estar acompanhados por “modificadores” na declaração de variáveis. Os “modificadores” de tipos oferecidos em C são: signed,unsigned,long e short Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Modificadores Reduz precisão short Estende precisão long Bit mais significante é parte do número (só +)‏ unsigned Bit mais significante é usado como sinal signed Efeito Modificadores Introdução à Computação - Jorge Macêdo

Tipos de Dados Resultantes ±1,7E-308 a ±1,7E+308 8 Bytes double long float ±3,4E-38 a ±3,4E+38 4 Bytes float 0 a 4.294.967.295 unsigned long int -2.147.483.648 a +2.147.483.647 (signed) long int 0 a 65.535 2 Bytes (short) unsigned int -32.768 a +32.767 (short) (signed) int 0 a 255 1 Byte unsigned char -128 a +127 (signed) char Valores Possíveis Tamanho Tipo Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Dica A escolha de nomes significativos para suas variáveis pode ajudá-lo a entender o que o programa faz e prevenir erros. Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Palavras-chave Uma variável não pode ter o mesmo nome de uma palavra-chave de C. As Palavras-chave em C: void static extern continue unsigned sizeof int enum long const union signed if else char typedef short goto double case while switch return for do break volatile struct register float default auto Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Constantes Um constante tem valor fixo e inalterável. Há duas maneiras de declarar constantes em C: a) usando a diretiva #define do pré-processador: #define < nome da constante > < valor > Esta diretiva faz com que toda aparição do nome da constante no código seja substituída antes da compilação pelo valor atribuído. A diretiva deve ser colocada no inicio do arquivo e tem valor global. Não é reservado espaço de memória no momento da declaração define. Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Constantes Exemplo: #define tamanho 400 #define true 1 #define false 0 /*não usa ";" nem "=" */ b) utilizando a palavra-chave "const": const < tipo > < nome > = < valor >; Esta forma reserva espaço de memória para uma variável do tipo declarado. Uma constante assim declarada só pode aparecer do lado direito de qualquer equação. Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Constantes Exemplo: const char letra = 'a'; const int size = 400; const double gravidade = 9.81; Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Constantes Em C uma constante caractere é escrita entre aspas simples, uma constante cadeia de caracteres entre aspa duplas e constantes numéricas com o número propriamente dito. Exemplos de constantes: caractere: ‘a’ cadeia de caracteres: “Bom Dia !!!!” número: -3.141523 Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Constantes – Exemplo 02 /* Programa: Exemplo do uso de Constantes */ #define TAMANHO 4 void main()‏ { const char c = ‘c’; const int num = 10; int val = TAMANHO; } Introdução à Computação - Jorge Macêdo

Entrada/Saída Console As rotinas de entrada/saída do console se encontram nas bibliotecas "stdio.h" e "conio.h" #include <stdio.h> #include <conio.h> Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo printf()‏ A função printf() é uma das funções de E/S (entrada e saída) que podem ser usadas em C. Ela não faz parte da definição de C mas todos os sistemas têm uma versão de printf() implementada. Ela permite a saída formatada na tela. Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo printf()‏ Exemplos: printf(“Bom Dia!!!!”); printf(“Este é o número dois: %d”, num); A função printf()pode ter um ou vários argumentos. Sintaxe de printf(): printf(“string-formatação”, < lista de parâmetros >); Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo printf()‏ A string de formatação pode conter caracteres que serão exibidos na tela e códigos de formatação que indicam o formato em que os argumentos devem ser impressos. Os caracteres que não podem ser obtidos diretamente do teclado para dentro do programa (como a mudança de linha) são escritos em C, como a combinação do sinal \ (barra invertida) com outros caracteres Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo printf()‏ A string de formatação define a forma como os parâmetros serão apresentados e tem os seguintes campos: "%[Flags] [largura] [.precisão] < tipo > [\Escape Sequence]" Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo printf() - Flags apresenta ponto decimal para reais apresenta Ox para hexadecimais Apresenta zero no início para octais # Apresenta branco se o valor (da variável) for positivo, sinal de – se valor negativo Branco Apresenta sinal (+ ou -) do valor da variável + Justifica saída à esquerda - Efeito Flags largura = número máximo de caracteres a mostrar precisão = número de casas após a vírgula a mostrar Introdução à Computação - Jorge Macêdo

printf() – Escape Sequence Valor em Hexadecimal \x Tabulação \t Retorno do Cursor \r Valor em Octal \o Nova Linha \n Saltar Página de Formulário \f Backspace (Retrocesso)‏ \b Tocar Sino (Bell)‏ \a Nulo \0 Aspas \” Apóstrofo \’ Barra \\ Efeito Escape Sequence Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo printf() - tipo Hexadecimal %x Inteiro decimal sem sinal (unsigned int)‏ %u Apontador de strings, emite caracteres até aparecer zero %s Octal %o Real Longo (double)‏ %lf Decimal Longo %l, %ld Real (float)‏ %f Formato científico %e, %E Inteiro decimal %d, %i Caracter %c Formato Tipo Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Exemplo 03 /* Programa de Exemplo da formatação da saída com Printf() */ #include <stdio.h> int main()‏ { float x; double y = -203.4572345; int a, b; a = b = 12; x = 3.141523; printf("Bom dia"); printf("\n\t\tBom dia\n"); /* pula linha após escrever bom dia */ printf("O valor de x é %7.3f\n", x); printf("Os valores de i, j e y são: %d %d %lf \n", a,b,y); } Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Exemplo 03 /* Programa de Exemplo da formatação da saída com Printf() */ #include <stdio.h> int main()‏ { float x; double y = -203.4572345; int a, b; a = b = 12; x = 3.141523; printf("Bom dia"); printf("\n\t\tBom dia\n"); /* pula linha após escrever bom dia */ printf("O valor de x eh %6.3f\n", x); printf("Os valores de i, j e y sao: %d, %d, %lf \n", a,b,y); } Bom dia O valor de x eh 3.142 Os valores de i, j e y sao: 12, 12, -203.457235 Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Observação Caso você queira imprimir na tela os caracteres especiais ‘\’ ou ‘%’, você deve escrevê-los na função printf() de forma duplicada O que indicará ao compilador que este não se trata de um parâmetro da função printf() mas sim que deseja-se imprimir realmente este caractere. Introdução à Computação - Jorge Macêdo

Introdução à Computação - Jorge Macêdo Exemplo #include <stdio.h> void main()‏ { int reajuste = 10; printf(“O reajuste foi de %d%%\n”, reajuste); } A saída será: O reajuste foi de 10% Introdução à Computação - Jorge Macêdo