UNIVERSIDADE LUTERANA DO BRASIL CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE SISTEMAS DE INFORMAÇÃO ESTRUTURAÇÃO DE LINGUAGENS (PASCAL E C++)

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

Download "UNIVERSIDADE LUTERANA DO BRASIL CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE SISTEMAS DE INFORMAÇÃO ESTRUTURAÇÃO DE LINGUAGENS (PASCAL E C++)"

Transcrição

1 UNIVERSIDADE LUTERANA DO BRASIL CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE SISTEMAS DE INFORMAÇÃO ESTRUTURAÇÃO DE LINGUAGENS (PASCAL E C++) MAURICIO VOLKWEIS ASTIAZARA Paradigmas de Linguagem de Programação Torres, Agosto de 2001

2 Sumário Lista de Tabelas... 4 Resumo... 5 Introdução Pascal Ambiente Run Compile Debug Tipos de Dados Tipos de Dados Inteiros Tipos de Dados Reais Tipos de Dados Caracteres Tipos de Dados Lógicos Variáveis Regras para Nomeação Declaração Escopo Comando de Atribuição Constantes Operadores Aritméticos Operadores Relacionais Operadores Lógicos Estrutura de um Programa Cabeçalho Área de Declarações Corpo de Programa Comandos de Entrada e Saída Comentários Desvio Condicional Simples Composto Iteração Procedimentos e Funções Unidades Padrão Procedures Function Construindo uma Biblioteca de Rotinas Estrutura de uma Unit C Introdução à Orientação ao Objeto Encapsular e esconder Herança Tipos de Dados

3 2.3 Variáveis Regras para Nomes de Variáveis Declarações de Variáveis Operador de Atribuição Inicializando Variáveis Constantes Constantes Numéricas Cadeia de Caracteres Constante O Qualificador const Operadores Aritméticos Operadores Aritméticos Básicos Operadores de Incremento e Decremento Operadores Aritméticos de Atribuição Operadores Relacionais Operadores Lógicos Estrutura de um Programa Forma geral das funções C O Primeiro Programa Comandos de Entrada e Saída Imprimindo Usando cout Lendo com cin e o Operador de Extração Comentários Desvio Condicional Procedimentos e Funções Classes...37 Conclusão Referências Bibliográficas

4 Lista de Tabelas Tabela 1: Tipos de dados inteiros em Pascal...8 Tabela 2: Tipos de dados reais em Pascal...8 Tabela 3: Operadores Aritméticos em Pascal...12 Tabela 4: Operadores relacionais em Pascal...12 Tabela 5: Operadores lógicos em Pascal...13 Tabela 6: Principais unidades padrão em Pascal...18 Tabela 7: Tipos de dados em C Tabela 8: Modificadores em C Tabela 9: Representação das bases numéricas em C Tabela 10: Operadores aritméticos básicos em C Tabela 11: Exemplos dos operadores aritméticos de atribuição em C Tabela 12: Operadores relacionais em C Tabela 13: Operadores lógicos em C Tabela 14: Códigos para caracteres especiais em C

5 Resumo Este trabalho mostra de forma superficial os conceitos básicos de duas linguagens de programação: Pascal e C++. Os tópicos abordados são os básicos necessários para que um programador que desconheça a linguagem consiga elaborar um pequeno programa e compreender as principais características de cada linguagem. Entre os itens apresentados estão os tipos de dados oferecidos por cada uma das linguagens bem como o modo que cada uma trabalha com eles. Abstract This work show on surface form the basic concepts about two programming languages: Pascal and C++. The approached topics are needed and basic for a programmer who unknow the language can to make a small program and to understand main characteristcs from each language. Into presents itens there are data types from each language and the way how each work with it. 5

6 Introdução Para escolhermos um linguagem de programação precisamos de certos conhecimentos básicos sobre cada uma, para que se possa fazer uma avaliação sobre qual é a mais adequada para determinado trabalho ou projeto. Este trabalho pretende mostrar de forma breve uma introdução às linguagens de programação Pascal e C++, com o objetivo de destacar as principais características e para que se tenha uma base mínima das possibilidades de cada linguagem. 6

7 1 Pascal 1.1 Ambiente O ambiente Turbo Pascal integra todos os recursos de um compilador com um editor de textos. O Turbo Pascal possui um menu de comandos com 10 opções que possibilitam executar diversas tarefas operacionais. Existem 3 formas de acessar os menus: 1. Tecla F10 seguida do uso de teclas direcionais 2. Alt+ a letra grafada em maiúsculo 3. Mouse através de clique simples As funções de editor de texto não serão mencionadas por se tratarem de funções padrão da maioria dos editores de textos, como manipulação de arquivos (novo, abrir, salvar, etc.) e edição do texto (copiar, localizar, substituir, etc). Serão focalizadas as funções de compilação e depuração de programas, que estão presentes nos menus que seguem: Run Esta opção possibilita colocar em execução o programa da janela ativa. Desta forma é possível: Rodar todo o programa (Run) Rodar o programa passo a passo com exceção das subrotinas existentes (Step Over) Rodar o programa passo a passo inclusive com as subrotinas (Trace Into) Rodar o programa até a posição do cursor (Go to Cursor) Interromper a execução de um programa durante a sua depuração (Program Reset) Efetuar a passagem de parâmetros (Parameters) Compile Esta opção possibilita compilar o programa. Desta forma, é possível: Compilar o programa da janela ativa (Compile) Recompilar apenas os programas alterados (Make) Recompilar todos os programas (Build) Determinar se o programa será compilado somente em memória ou disco (Destination) Determinar numa lista de arquivo qual será o principal que será carregado primeiro no processo de compilação (Primary File) Obter informações a respeito da última compilação executada (Information) Debug 7

8 Esta opção possibilita depurar o programa para facilitar a localização de erros lógicos. Desta forma é possível: Colocar ou retirar um ponto de parada (exame) quando da depuração de um programa (Breakpoint) Apresentar uma janela com a seqüência de chamadas efetuadas de subrotinas (Call Stack) Abrir a janela de acompanhamento de valores nas variáveis do programa (Watch) Abrir uma janela para apresentar as telas de saída do programa em execução ou depuração (Output) Exibir em sua totalidade a tela do usuário (User Screen) Permite avaliar expressões, constantes ou variáveis (Evaluate/modify) Possibilidade de se incluir expressões na tela de vigia (Add Watch) Permite a inclusão de um ponto de parada quando for executado o programa (Add Breakpoint) 1.2 Tipos de dados Os dados são representados pelas informações a serem processadas por um computador. A linguagem Pascal fornece ao programador um conjunto de tipos de dados predefinidos, podendo estes ser dos tipos numéricos (inteiros e reais), caracteres e lógicos Tipos de Dados Inteiros São caracterizados tipos inteiros de dados os dados numéricos positivos ou negativos excluindo-se qualquer número fracionário. Em Pascal este tipo de dado pode ser referenciado por um destes identificadores: 7DEHOD7LSRVGHGDGRVLQWHLURVHP3DVFDO 7LSRGH'DGR,QWHLUR )DL[DGH$EUDQJrQFLD Shortint De 128 até 127 Integer De a Longint De até Byte De 0 até 255 Word De 0 a Tipos de Dados Reais São caracterizados tipos de dados reais os dados numéricos positivos, negativos, inteiros e fracionários. Em Pascal este tipo de dado pode ser referenciado por um dos seguintes identificadores: 7DEHOD7LSRVGHGDGRVUHDLVHP3DVFDO 7LSRGH'DGR5HDO )DL[DGH$EUDQJrQFLD Real De 2,9 E-39 até 1,7 E+38 8

9 Single De 1,5 E-45 até 3,4 E+38 Double De 5,0 E-324 até 1,7 E+308 Extended De 3,4 E até 1,1 E Comp De 9,2 E+18 até 9,2 E+18 Este tipo de dado permite trabalhar com uma representação de valores em ponto flutuante que consiste de uma mantissa (parte fracionária). O tipo single usa uma mantissa de 7 a 8 dígitos, o tipo real usa uma mantissa de 11 dígitos, o tipo double usa uma mantissa de 15 a 16 dígitos e os tipos extended e comp utilizam um mantissa de 19 a 20 dígitos Tipos de Dados Caracteres São caracterizados tipos caracteres as seqüências contendo letras, números e símbolos especiais. Uma seqüência de caracteres deve ser representada entre apóstrofos ( ) também chamados de aspas simples. Exemplo da representação de uma cadeia de caracteres: Blaise Pascal ( ): filósofo e matemático francês. Este tipo de dado é referenciado pelo identificador VWULQJ podendo armazenar de 1 a 255 caracteres. Existe ainda o tipo FKDU, utilizado da mesma forma que o tipo string, porém armazena apenas um caractere Tipos de Dados Lógicos São caracterizados tipos lógicos os dados com valores 7UXH (verdadeiro) ou )DOVH (falso), sendo que este tipo somente poderá apresentar um desses valores. Este tipo também é chamado tipo booleano. Este tipo de dado é referenciado pelo identificador ERROHDQ. 1.3 Variáveis Variável é, no sentido de programação, uma região de memória de um computador, previamente identificada e que tem por finalidade armazenar informações (dados) de um programa temporariamente. Uma variável armazena apenas um valor por vez. Sendo considerado como valor o conteúdo de uma variável, desta forma, um valor está relacionado ao tipo de dado de uma variável, podendo ser um valor numérico, lógico ou caractere Regras para Nomeação O nome de uma variável é utilizado para sua identificação e posterior uso dentro de um programa, sendo assim, é necessário estabelecer algumas regras para sua utilização: O nome de uma variável deve ser atribuído com um ou mais caracteres; 9

10 O primeiro caractere não poderá ser um número, somente letra; O nome não pode possuir espaços em branco; Não poderá ser nome de variável uma palavra reservada da linguagem Pascal; Não poderão ser utilizados outros caracteres a não ser letras e números, com exceção do caractere underscore _, que poderá ser utilizado para simular a separação de palavras. Exemplos de nomes de variáveis válidos: A1 A2 Nome_Cliente Todo dado a ser armazenado na memória deve ser previamente declarado ou seja, primeiro é necessário saber qual o seu tipo para depois fazer o seu armazenamento. Estando armazenado o dado este poderá ser utilizado e manipulado a qualquer momento durante a execução do programa Declaração A área YDU é utilizada na declaração das variáveis que serão utilizadas durante a execução do programa, bem como o seu tipo. Desta forma é efetuada uma reserva de memória para que as variáveis sejam utilizadas. A declaração de variáveis é feita pela instrução YDU seguida da relação de variáveis. A relação de variáveis é composta do nome de cada variável seguido de dois pontos ( : ), seu tipo e ponto e vírgula. Como esquematizado abaixo: 9DU <nome da variável 1> : <tipo da var 1>; <nome da variável 2> : <tipo da var 2>; <nome da variável N> : <tipo da var N>; Exemplo: 9DU Nome: VWULQJ; Idade: LQWHJHU; Altura: UHDO Caso sejam do mesmo tipo, as variáveis poderão ser declaradas na mesma linha separadas por vírgula: 9DU A, B, C: LQWHJHU 10

11 Nome1, Nome2: VWULQJ Importante observar que Pascal não diferencia letras maiúsculas de minúsculas. Sendo as expressões abaixo o nome da mesma variável: NOME Nome Escopo Uma variável é considerada global quando é declarada no início do programa podendo ser utilizada por qualquer subrotina subordinada. Uma variável é local quando é declarada dentro de uma subrotina e é somente válida dentro da rotina onde está declarada Comando de Atribuição Para colocar um valor em uma variável utiliza-se o comando de atribuição simbolizado pelo dois pontos e um sinal de igual ( ). Possui a seguinte sintaxe: <nome da variável> := <expressão>; Onde expressão pode ser uma constante (diretamente um valor) ou uma expressão de cálculo. A expressão ou o seu resultado deve ser do mesmo tipo da variável. Exemplos: A:=5; Nome:= Blaise Pascal ; 1.4 Constantes Tem-se como definição de constante aquilo que é fixo ou estável. Um valor constante pode ser diretamente mencionado no código: A:=5; Nome:= Blaise Pascal ; Porém, em certos programas seja mais vantajoso o uso de alguns identificadores de constante. A área FRQVW é usada para a declaração de identificadores que representam valores constantes durante todo o programa. Exemplo: 11

12 &RQVW PI= ; Ap= Sistema Integrado de Cálculo de Geometria Espacial ; Voltas=10; O uso de identificadores de constante tem vantagens sobre o uso direto dos valores quando o valor é muito usado e ao mesmo tempo tem grande extensão de caracteres (como o PI) ou é freqüentemente alterado para fins de teste do programa. 1.5 Operadores Aritméticos Para a construções de expressões matemáticas na linguagem Pascal, utilizamos os seguintes operadores: 7DEHOD2SHUDGRUHV$ULWPpWLFRVHP3DVFDO 2SHUDGRU 'HVFULomR * Multiplicação / Divisão real Div Divisão inteira Mod Resto da divisão inteira + Adição - Subtração Contamos ainda com o auxilio de parênteses para indicar precedência (prioridade de cálculo). Veremos um exemplo de expressão matemática transformada para Pascal: Na matemática: A=5+1+2B 2 Em Pascal: A:=(5+1)/2+2*B; 1.6 Operadores Relacionais Os operados são relacionais são usados para comparar valores. Com elas é possível criar uma expressão que indica uma afirmação. O resultado é a confirmação ou negação da expressão através de um valor booleano (visto anteriormente). Os operadores relacionais são os seguintes: 7DEHOD2SHUDGRUHVUHODFLRQDLVHP3DVFDO 6tPEROR 6LJQLILFDGR 12

13 = Igual a <> Diferente de > Maior que < menor que >= Maior ou igual <= Menor ou igual Os operadores relacionais podem comparar valores numéricos (inteiros e reais) e caracteres (através do valor do caracter na tabela ASCII). Por retornarem um valor booleano podem ser armazenados numa variável do tipo boolean: 9DU a, b: ERROHDQ;... a:=20>10; b:= A > B ; Neste exemplo a variável a receberia o valor True e b o valor False. 1.7 Operadores Lógicos Conhecidos também como operadores booleanos, fazem cálculos seguindo a matemática booleana, sendo assim só operam com dados do tipo boolean. São os seguintes: 7DEHOD2SHUDGRUHVOyJLFRVHP3DVFDO Not And Or Xor 2SHUDGRU /yjlfd Retorna o oposto do valor. Este é o único operador unário. Retorna Verdadeiro somente se todos os valores forem Verdadeiros Retorna Falso somente se todos os valores forem Falsos Retorna Verdadeiro se os valores forem diferentes 1.8 Estrutura de um Programa Veremos a seguir as principais partes de um programa, na respectiva ordem em que devem aparecer Cabeçalho Consiste na identificação do programa. As regras para nomes de programa são as mesmas da nomeação de variáveis. Não poderá haver variável com o mesmo nome do programa. O cabeçalho é atribuído pela instrução SURJUDP seguida nome e de um ponto e vírgula (;) como abaixo: 13

14 3URJUDP Calculo; Área de Declarações É utilizada para validar o uso de qualquer tipo de identificador que não seja predefinido, estando esta subdividida em sete subáreas: Uses Label Const Type Var Procedure Function Corpo de Programa No corpo do programa estão as instruções que serão executadas no programa. Esta área tem início com a instrução EHJLQ e é finalizada com a instrução HQG seguida de ponto final (.). O uso dessas duas instrução caracteriza o que é chamado de bloco de comandos, como indicado abaixo: %HJLQ <instrução 1>; <instrução 2>; <instrução N>; (QG 1.9 Comandos de Entrada e Saída Os comandos de saída de dados mais utilizados para impressão em vídeo são: ZULWH e ZULWHOQ. Possuem a seguinte sintaxe: :ULWH(<expressões>); :ULWHOQ(<expressões>); Onde <expressões> é um conjunto de dados a serem impressos, separados por vírgula. Exemplos: :ULWHOQ( Saída em vídeo ); :ULWH(2001); 14

15 Assumindo que media seja uma variável que contém a média de duas outras variáveis A e B : :ULWH( Resultado da média entre, A, e, B, é, media); A diferença entre ZULWH e ZULWHOQ é que o comando ZULWHOQ após imprimir os dados acrescenta uma nova linha. O ZULWH mantém o cursor na mesma linha. O ZULWHOQ pode ser usado para imprimir uma linha em branco, bastando usá-lo sem uma expressão para ser impressa. Exemplo: :ULWH(1); :ULWH(2); :ULWHOQ(3); :ULWHOQ; :ULWHOQ( Exemplo de uso de saída em vídeo ); A saída destes comandos na tela é a seguinte: 123 Exemplo de uso de saída em vídeo Para a leitura de dados via teclado são utilizados os comandos UHDG e UHDGOQ. Possuem sintaxe semelhante à dos comandos de saída: 5HDG(<variáveis>); 5HDGOQ(<variáveis>); Onde variáveis é um conjunto de variáveis separadas por vírgula. Quando um desses comandos é encontrado, a execução do programa é interrompida aguardando a entrada dos dados que é confirmada com a tecla ENTER. Exemplo: :ULWHOQ( Entre com o valor: ); 5HDGOQ(valor); :ULWHOQ( Digite as três notas: ); 5HDGOQ(a, b, c); Para leitura de mais de uma variável, como mostrado acima, os valores podem ser separados por espaço e finalizados com um ENTER ou individualmente com um ENTER para cada valor Comentários 15

16 As linguagens sempre oferecem um meio de inserir comentários em códigos fonte para fins de documentação e aumentar facilidade de entendimento do programa. Em Pascal os comentários devem estar entre chaves ( ^` ). Os comentários podem Ter mais de uma linha. Exemplo: :ULWHOQ( Código comentado é mais inteligível. ); {mensagem para usuário. Pode ser alterada futuramente} :ULWHOQ( Fim ); {fim do programa} 1.11 Desvio Condicional Simples A instrução LI WKHQ tem por finalidade tomar uma decisão e efetuar um desvio no processamento, dependendo da condição atribuída ser Verdadeira ou Falsa. Sendo a condição verdadeira, será executada a instrução que estiver escrita após a instrução LIWKHQ. Esta instrução como a maioria dos comandos em Pascal é delimitado por um ponto e vírgula. Caso seja necessário executar mais de uma instrução para a condição verdadeira, estas deverão estar mencionadas dentro de bloco, que é definido com as instruções EHJLQ e HQG.,I <valor booleano> WKHQ <instrução para valor verdadeiro>;,i <valor booleano> WKHQ %HJLQ <instrução 1>; <instrução 2>; <instrução N>; HQG Composto O desvio condicional simples executa um comando se o valor booleano for verdadeiro. Já o desvio condicional composto executa um comando se o valor for verdadeiro e outro comando se o valor for falso. Possui a seguinte sintaxe:,i <valor booleano> WKHQ <comando para valor verdadeiro> HOVH <comando para valor falso>; 16

17 ,I <valor booleano> WKHQ EHJLQ <comando 1>; <comando 2>; <comando N>; HQG HOVH EHJLQ <comando 1>; <comando 2>; <comando N>; HQG 1.12 Iteração A estrutura de iteração, também chamada de laço ou looping caracteriza-se por executar um determinado trecho de instruções enquanto uma determina expressão for verdadeira (True). Uma das estruturas de laço oferecidas pela linguagem Pascal é o while (enquanto) e possui a seguinte sintaxe: :KLOH <valor booleano> GR <instrução para valor verdadeiro>; Para mais de uma instrução no laço é necessário o uso de um bloco de comandos, através do uso de begin e end. Exemplo: :KLOH a<>10 GR EHJLQ writeln(a); a:=a+1; HQG Existe ainda outra estrutura de laço no Pascal chamada IRU. Este tipo de laço exige uma variável com um valor inicial. A cada iteração acrescenta 1 a esta variável. O loop só termina quando a variável possuir valor igual ao valor final. O IRU é apropriado somente para laços que sejam guiados por uma contagem: )RU <variável>:=<valor inicial> WR valor <valor final> GR <instrução>; 1.13 Procedimentos e Funções 17

18 A utilização de sub-rotinas é a base da programação estruturada (ou modularizada). A linguagem Pascal permite a construção de sub-rotinas de dois tipos: Procedures (procedimentos) e Function (função). A diferença entre as duas é que a função retorna um valor Unidades Padrão Além de permitir a construção de rotinas, existe ainda um conjunto de rotinas prontas, ou seja, oferecidas pela Borland. Estas rotinas estão agrupadas em bibliotecas, chamadas XQLWV. O Turbo Pascal passou a incorporar o conceito de units a partir da versão 4. A seguir as principais units: 7DEHOD3ULQFLSDLVXQLGDGHVSDGUmRHP3DVFDO 8QLW CRT DOS GRAPH OVERLAY PRINTER SYSTEM 'HVFULomR Possui rotinas de geração de som, controle de vídeo e teclado. Rotinas que envolvem a utilização do sistema operacional, na maior parte das vezes permitindo controles de baixo nível Esta unidade possui rotinas destinadas à manipulação da capacidade gráfica do computador Permite gerenciar as atividades de um programa, desta forma é possível aproveitar uma mesma área de memória para rodar várias rotinas diferentes, economizando memória. Esta unidade permite declarar um arquivo do tipo texto com o nome LST e associá-lo à impressora. Contém a maior parte das rotinas padrão da linguagem Pascal, não necessitando ser citada para ser usada, pois já executada de forma automática. Para utilizar as unidades utiliza-se o comando uses seguido das units que serão utilizadas, separadas por vírgula. Por exemplo: 8VHV CRT; Ou 8VHV CRT, PRINTER, GRAPH; Procedures Como visto, as subrotinas podem ser implementadas através de procedures. As procedures são blocos de comandos que são executados somente quando chamados pelo programa principal ou por outra rotina. A sintaxe de uma procedure é a seguinte: 18

19 3URFHGXUH <nome> [(<parâmetros>)]; 9DU <variáveis>; EHJLQ HQG; <comandos>; onde: nome: é o nome da procedure; parâmetros: valores que a procedure necessita para realizar sua tarefa. Estes valores são passados pela rotina que chamou a procedure; variáveis: declaração das variáveis que serão utilizadas na procedure. Estas variáveis são locais, sendo válidas somente dentro da procedure; comandos: quaisquer comandos necessários para a implementação da procedure. 3URFHGXUH Linha; 9DU i : LQWHJHU; %HJLQ i:=1; :KLOH i<>81 GR %HJLQ :ULWHOQ( _ ); (QG; (QG; i:=1+1; Para chamar uma procedure simplesmente utiliza-se o seu nome seguido dos parâmetros (se o procedimento requerer, utilizando vírgulas para separá-los) entre parentêses e ponto e vírgula. Exemplo: Linha; ExibeDados; Potencia(10, 2); Assim o ponto de execução do programa passará para a procedure. Ao término do procedimento, o ponto de execução passa ao próximo comando que está logo após a chamada da procedure. Parâmetros Para que uma procedure receba valores como parâmetro é necessária a declaração de variáveis que armazenem estes valores. Esta declaração segue as mesmas regras da declaração de variáveis, o nome da variável e seu tipo. Os parâmetros tem o mesmo escopo e comportamento das variáveis locais da procedure. 19

20 Existem dois tipos de passagem de parâmetros: por valor e por referência. Por Valor A passagem de parâmetros por valor caracteriza-se por efetuar uma cópia do valor que está sendo passado para a variável que recebe o valor. A declaração de parâmetros por valor é feita da seguinte forma: Procedure fatorial (n: integer); A passagem por valor permite que a procedure seja chamada diretamente com valores constantes ou com variáveis, como abaixo: Fatorial (10); A:=10; Fatorial (A); Por Referência A passagem de parâmetros por referência exige que quando a procedure for chamada, os parâmetros sejam passado através de uma variável, não sendo permitido o uso direto de uma constante. Na passagem por referência não é efetuada uma cópia do valor e sim do endereço de memória da variável. Isso faz com que qualquer manipulação do valor do parâmetro dentro da procedure seja refletida na variável da rotina que chamou a procedure, pois se trarar na realidade da mesma variável. Para que uma variável receba valores por referencia é necessário o uso de YDU na sua declaração. Quadrado (var n: integer); Function Assim como a procedure, a function é um bloco de comandos e todas as regras para procedures são válidas também para as functions. A sua diferença em relação à procedure é que a function sempre um retorna um valor. O valor de uma função é retornado no seu próprio nome. O tipo de valor que uma function retorna é determinado na sua declaração, como segue: )XQFWLRQ <nome> [(<parâmetros>)]: <tipo>; 9DU <variáveis> EHJLQ HQG; <comandos> 20

21 Onde tipo é tipo de dado que a função retorna. Para executar o retorno da função utiliza-se em algum momento do bloco de comandos (entre o begin e o end) deverá haver um comando de atribuição ao nome da função: <nome da função>:=<valor>; Se mais de um retorno for dado à função em momentos diferentes somente o último prevalecerá. Apesar de utilizar o comando de atribuição de forma semelhante à uma variável, não poderá ser feita a leitura da função dentro dela mesma mesmo que um valor já tenha sido atribuído à ela. A tentativa de leitura do valor da função dentro dela mesma caracteriza uma chamada recursiva, que se não tratada corretamente provocará um erro de estouro de pilha. Se nenhum valor for atribuído à função até o seu término ela poderá retornar um lixo de memória. Vejamos um exemplo de função: IXQFWLRQ Potencia (base: LQWHJHU;expo: LQWHJHU):LQWHJHU; YDU i,p :LQWHJHU; EHJLQ HQG; p:=1; for i:=1 to expo do p:=p*base; potencia:=p; 1.14 Construindo uma Biblioteca de Rotinas Ao longo de um programa observa-se que se certos problemas e situações se repetem, requerendo o mesmo trecho de código para sua solução. Isto pode ser facilitado com a construção de rotinas e funções para o programa, mas muitas vezes esses problemas aparecem em programas diferentes. Pode-se copiar o código fonte de um programa para outro, mas existe uma forma mais inteligente fornecida pelo Pascal. Consiste em juntar um grupo de funções genéricas em uma biblioteca chamada unit (unidade). Desta forma um programa pode utilizar estas funções sem ter que escrevê-las novamente, simplesmente mencionando a unit na área de declaração uses Estrutura de uma Unit Fisicamente uma unit é um arquivo com extensão tpu (Turbo Pascal Unit). Para criar uma unit inicia-se um novo arquivo, porém ao invés de program é utilizado a declaração unit. Logo após está a área interface. Nela estão as declarações de todas as funções contidas na unit que são públicas, ou seja, utilizáveis pelo programador 21

22 que mencionar (através de uses) a unidade em seu programa. Na área implementation contém o código de todas as rotinas mencionadas na parte de interface 8QLW <nome>;,qwhuidfh <declaração do rotina 1> <declaração da rotina 2> <declaração da rotina N> LPSOHPHQWDWLRQ <rotina 1> <rotina 2> <rotina N> HQG. Uma vez codificada a unit deve ser compilada para o disco, o que gerará um arquivo.tpu. As units não podem ser diretamente executadas. 22

23 2 C Introdução à Orientação ao Objeto A idéia fundamental de linguagens orientadas ao objeto é a possibilidade de combinar num único registro campos que conterão dados e campos que conterão funções para operar os campos de dados do registro. Uma unidade assim é definida como classe. Uma classe é considerada um tipo de dado como os outros tipos que existem predefinidos em compiladores de diversas linguagens de programação. Como exemplo, considere o tipo int que é predefinido em C e C++. Podemos declarar quantas variáveis do tipo int forem necessárias ao programa. De modo similar, podemos declarar quantas variáveis quisermos de uma classe já definida. Uma variável de uma classe é chamada objeto e conterá campos de dados e funções. Definir uma classe não cria nenhum objeto, do mesmo modo que a existência de um tipo int não cria nenhuma variável. As funções de um objeto são chamadas funções-membro ou métodos e, de modo geral, são o único meio de acesso aos campos de dados também chamados de variáveis de instância Encapsular e esconder Se o programa necessita atribuir um valor a alguma variável de instância, deve chamar uma função membro que recebe o valor como argumento e faz a alteração. Não podemos acessar variáveis de instância diretamente. Desta forma, os campos de dados estarão escondidos para nós, o que previne alterações incidentais. Dizemos então que os campos de dados e suas funções estão encapsulados (de cápsula) numa única identidade. As palavras encapsular e esconder são termos técnicos da definição de linguagens orientadas ao objeto. Se alguma modificação ocorrer em variáveis de instância de um certo objeto, sabemos exatamente que funções interagiram com elas: são as funções-membro do objeto. Nenhuma outra função pode acessar esses dados. Isso simplifica a escrita, manutenção e alteração de programas. Um programa em C++ consiste em um conjunto de objetos que se comunicam por meio de funções-membro. A frase chamar uma função membro de um objeto pode ser dita como enviar uma mensagem a um objeto Herança A programação orientada ao objeto oferece uma maneira de relacionar classes umas com as outras por meio de hierarquias. No nosso dia a dia, esse processo está presente quando dividimos classes em subclasses, mantendo o princípio de que cada subclasse herda as características da classe da qual foi derivada. Por exemplo a classe de 23

24 animais é dividida nas subclasses mamíferos, aves, peixes, etc. uma das características da classe animais é a reprodução. Todas as subclasses têm essa característica. Além das características herdadas, cada subclasse tem suas características particulares. Classe Base e Classes Derivadas: Características A B Características A B C D Características A B E F Características A B C F G Em programação orientada a objeto, o conceito de subclasse ou processo de classes derivadas é chamado herança. Em C++, a classe de origem é chamada classe base e as classes que compartilham as características de uma classe base e têm outras características adicionais são chamadas classes derivadas. Uma classe-base representa os elementos comuns a um grupo de classes derivadas. Você poderia pensar em herança como algo semelhante ao uso de funções para simplificar tarefas tradicionais. Você escreve uma função quando identifica várias seções diferentes de um programa, em parte executem a mesma coisa. Em C++, você define uma classe-base quando identifica características comuns em um grupo de classes derivadas. Da mesma forma que você pode criar uma biblioteca de funções úteis a diversos programas, pode formar uma biblioteca de classes que poderão vir a ser o núcleo de muitos programas. O uso de uma biblioteca de calsses oferece uma grande vantagem sobre o uso de uma biblioteca de funções: o programador pode criar classes derivadas de classes base de biblioteca. Isto significa que, sem alterar a classe base, é possível adicionar a ela características diferentes que a tornarão capaz de executarmos exatamente o que desejarmos. Um classe que é derivada de uma classe base pode, por sua vez, ser a classe base de outra classe. O uso de classes derivadas aumenta a eficiência da programação pela não necessidade da criação de códigos repetitivos. A uma função de biblioteca não podemos adicionar outras implementações a não ser que ela seja reescrita ou que tenhamos o seu código fonte para alterá-la e recompilá-la. A facilidade com que classes existentes podem ser reutilizadas sem serem alteradas é um dos maiores benefícios por linguagens orientadas ao objeto. 2.2 Tipos de Dados 24

25 O tipo de uma variável informa a quantidade de memória, em bytes que a variável ocupará e a forma como o valor será armazenado e interpretado. Em C++, existem cinco tipos básicos de variáveis. 7DEHOD7LSRVGHGDGRVHP& 7LSR %\WHV (VFDOD Char a 127 Int a Float 4 3,4E-38 a 3,4E+38 Double 8 1,7E-308 a 1,7E+308 Void 0 Nenhum valor Com exceção do tipo void, os tipos de dados básicos podem se acompanhados por modificadores na declaração de variáveis. Os modificadores de tipo oferecidos por C++ são: Long Short Unsigned Um modificador de tipo pode ser utilizado sem que seja especificado o tipo de variável. Quando isso é feito, o compilador assume que o tipo é int. Os modificadores podem ser utilizados com os tipos e as escalas descritos na tabela a seguir: 7DEHOD0RGLILFDGRUHVHP& 7LSR %\WHV (VFDOD Unsigned char 1 0 a 255 Unsigned 2 0 a Short a Long a Unsigned long 4 0 a Long double 10 3,4E-4932 a 1,1E+4932 O tipo int tem sempre o tamanho da palavra da máquina, isto é, em computadores de 16 bits ele terá 16 bits de tamanho. 2.3 Variáveis As variáveis são o aspecto fundamental de qualquer linguagem de programação. Uma variável em C++ é um espaço de memória reservado para armazenar um certo tipo de dado e tendo um nome para referenciar o seu conteúdo. O espaço de memória ocupado por uma variável pode ser compartilhado por diferentes valores segundos certas circunstâncias. Em outras palavras uma variável é um espaço de memória que pode conter, a cada tempo, valores diferentes. 25

26 2.3.1 Regras para Nomes de Variáveis É permitido nome para variáveis com até 32 caracteres. Caso haja mais caracteres que isso eles serão ignorados. O nome pode conter letras maiúsculas e minúsculas, dígitos e sublinhado (underscore) Obrigatoriamente o primeiro caracter deve ser uma letra ou um sublinhado Letras maiúsculas e minúsculas são diferentes Não pode ser o nome de uma palavra reservada do C Declarações de Variáveis Uma declaração de variável consiste na identificação do seu tipo, seguida do nome e ponto e vírgula. As seguintes instruções,qw num1;,qw num2; São exemplos de declaração de variáveis, isto é, apresentam um tipo int e um nome para acessar o seu conteúdo. Em C++ todas as variáveis devem ser declaradas. As variáveis devem ser declaradas antes de serem usadas no programa. Uma variável pode ser declarada em qualquer lugar do programa. Se haver mais de uma variável do mesmo tipo elas poderão ser declaradas juntas, separando os nomes por vírgula. Exemplo:,QW avião, foguete, helicoptero; Operador de Atribuição O sinal de igual (=) representa a atribuição da expressão à sua direita à variável à sua esquerda. Exemplo: X=2000; Atribui o valor 2000 à variável de nome X. A ação é executada da direita para a esquerda. Toda expressão em C++ tem um valor. A expressão 5+2 tem valor 7. A expressão X=3 tem valor 3. Uma expressão de atribuição tem o valor atribuído. Sendo assim é permitido escrever Y=X=3 26

27 Lembrando que as atribuições são executadas da direita para esquerda, a expressão anterior poderia ser escrita Y=(X=3) Tanto X quanto Y terão valor 3. Este tipo de expressão é chamada atribuição múltipla Inicializando Variáveis É possível combinar uma declaração de variável com o operador de atribuição para que a variável tenha um valor inicial ao mesmo tempo de sua declaração. Vejamos um exemplo que cria três variáveis e as inicializa: LQW evento=5; FKDU corrida= C ; IORDW tempo=27.25; 2.4 Constantes Uma constante tem valor fixo e inalterável. Elas podem ser representadas diretamente pelo seu valor ou por identificadores definidos pelo programador Constantes Numéricas Números constantes em C++ podem ser escritos nas seguintes bases numéricas: 7DEHOD5HSUHVHQWDomRGDVEDVHVQXPpULFDVHP& %DVH 5HSUHVHQWDomR Decimal Escrevemos um número em decimal de forma pura e simples, como aquela que estamos acostumados. Ex.: 20, 280, 88 Hexadecimal Os números na base 16 devem ser precedidos de 0x. Ex.: 0x41, 0x1afb, 0x54c2 Octal Os números escritos na base 8 devem ser precedidos de um zero. Ex.: 041, 010, Cadeia de Caracteres Constante A expressão Primeiro Programa é um exemplo de cadeia de caracteres constante. A linguagem C++ reconhece uma cadeia de caracteres constante quando delimitada por aspas duplas O Qualificador const A palavra-chave const assegura que a variável associada não será alterada em todo o programa. Esse qualificador é indicado para declarar valores constantes. Ex.: 27

28 &RQVWFKDU bip= \a ; &RQVWGRXEOH pi= ; As variáveis associadas ao qualificador FRQVW devem obrigatoriamente inicializadas. 2.5 Operadores Aritméticos C++ é uma linguagem rica em operadores, em torno de 50. Alguns são mais usados que outros como é ocaso do operador de atribuição e os operadores aritméticos Operadores Aritméticos Básicos 7DEHOD2SHUDGRUHVDULWPpWLFRVEiVLFRVHP& 6tPEROR 2SHUDomR + Adição - Subtração * Multiplicação / Divisão % Resto da divisão inteira - Multiplicação por 1 ex.: X = Operadores de Incremento e Decremento Os operadores de incremento (++) e decremento (- -)são operadores unários que adicionam 1 e subtraem 1 respectivamente. Estes operadores podem ser usados de duas formas: prefixado, quando aparece antes do nome da variável e pósfixado, quando aparece depois da variável. As seguintes instruções são equivalentes: X = X + 1; // adiciona 1 a X ++X; // adiciona 1 a X X++; // adiciona 1 a X O mesmo é aplicável ao decremento: X = X 1; // subtrai 1 de X - - X; // subtrai 1 de X X - -; // subtrai 1 de X A diferença entre o uso prefixado e pósfixado existe quando aparece em instruções que fazem mais do só incrementar ou decrementar: N = 5; 28

29 X = ++N; O resultado dessas operações é N=6 e X=6. N = 5; X = N++; O resultado é N=6 e X= Operadores Aritméticos de Atribuição Estes operadores binários combinam as operações aritméticas com atribuição. O operando da esquerda é uma variável e o da direita uma expressão. Como regra geral, se X é uma variável, exp uma expressão e op um operador aritmético, então: X op = exp equivale a X = X op (exp) Exemplos: 7DEHOD([HPSORVGRVRSHUDGRUHVDULWPpWLFRVGHDWULEXLomRHP& 2SHUDGRU$ULWPpWLFRGH$WULEXLomR ([SUHVVmR(TXLYDOHQWH A + = 2; A = A + 2; B * = Y + 1; B = B * (Y + 1); C / = 2.5; C = C / 2.5; Dado % = 5; D = D % 5; E - = 3; E = E - 3; 2.6 Operadores Relacionais Os operadores relacionais fazem comparações retornando verdadeiro ou falso. 7DEHOD2SHUDGRUHVUHODFLRQDLVHP& 6tPEROR 2SHUDomR > Maior < Menor >= Maior ou igual <= Menor ou igual = = Igual! = Diferente Em C++ não existe o tipo de variável chamada booleana. O valor zero (0) é falso e qualquer valor diferente de zero é verdadeiro. Assim toda expressão tem valor verdadeiro ou falso. Exemplo: LQW verdadeiro, falso; verdadeiro=(15<20); falso=(15 ==20); 29

30 Os valores das variáveis serão: Verdadeiro = 1 Falso = Operadores Lógicos Realizam operações booleanas. Devem ser utilizados com atenção, pois como foi mencionado toda expressão tem um valor verdadeiro ou falso, sendo que zero representa o falso e qualquer outro valor é verdadeiro. 7DEHOD2SHUDGRUHVOyJLFRVHP& 6tPEROR 2SHUDomR && E Ou! Não 2.8 Estrutura de um Programa A unidade fundamental de programas C++ são as funções. Um programa C++ consiste em uma ou várias funções Forma geral das funções C++ Os elementos básicos de toda função C++ são os seguintes: <tipo> <nome> (<parâmetros> ) { <instrução 1>; <instrução 2>; <instrução N>; } Onde: Tipo: tipo de dado que a função retorna; Nome: identificador da função; Parâmetros: conjunto de parâmetros que a função necessita para realizar o seu processo; Instruções: implementação da função; O Primeiro Programa 30

31 Vamos começar com um programa muito simples: #include <iostream.h> YRLG main( ) { cout << Primeiro Programa ; } Nome das Funções Este programa compõe-se de uma única função chamada main. O nome de uma função pode ser qualquer um, com exceção de main, reservado para a função que inicia a execução do programa. Em todo programa C++, deve existir uma única função chamada main. A função main marca o ponto de partida do programa. Se o programa for constituído de uma única função, esta será a main. O programa termina quando for encerrada a execução da função main. O Tipo Void A função main particular de nosso programa é do tipo void. O tipo void indica que a função não tem valor de retorno, ou seja, não retorna nada. Chaves Toda função deve começar com uma chave de abertura de bloco { e deve terminar com uma chave de fechamento de bloco }. As chaves delimitam o corpo da função. Instruções de Programa O nosso primeiro programa contém uma única instrução: Cout << Primeiro Programa ; Essa instrução imprime a frase entre aspas duplas na tela. Toda instrução C++ termina em um ponto e vírgula (;). O ponto e vírgula é parte crucial da sintaxe da linguagem. Uma função pode ter qualquer número de instruções. As instruções devem ser escritas entre as chaves que delimitam o corpo da função e são executadas na ordem em que as escrevemos. O Pré-processador C++ A primeira linha de nosso programa 31

32 #include <iostream.h> não é uma instrução C++ e sim uma diretiva do pré-processador C++. O pré-processador C++ é um programa que examina o programa fonte em C++ executa nele certas modificações com base em instruções chamadas diretivas. Toda diretiva é iniciada pelo # e seu texto deve ser escrito em uma única linha. Se o texto for muito grande, pode-se terminar a linha com barra invertida \ e continuar em outra linha. Diretivas do pré-processador não fazem parte da linguagem C++; elas servem para auxiliar o desenvolvimento do programa fonte. A Diretiva #include A diretiva #include provoca a inclusão de outro arquivo em nosso programa fonte. Na verdade, o compilador substitui a diretiva #include de nosso programa pelo conteúdo do arquivo indicado antes do programa ser compilado. Usar a diretiva #include é similar a usar o comando de um processador de textos que inclui um texto gravado em disco no texto que estamos editando. A primeira linha de nosso programa #include <iostream.h> solicita que o compilador inclua o arquivo iostream.h em nosso programa antes de compilá-lo. Além do uso dos sinais < e > a diretiva #include aceita uma segunda sintaxe: #include iostream.h Quando usamos os sinais < e >, o arquivo é procurado somente no diretório include. Quando usamos aspas, o arquivo é procurado primeiramente no diretório atual e depois, se não for encontrado, no diretório include. Arquivos de Inclusão Os arquivos de inclusão (também chamados de arquivos de cabeçalho) são textos escritos em caracteres ASCII normais. Em geral, eles contém definições e declarações necessárias para que o compilador reconheça vários identificadores da linguagem C++. É possível verificar o conteúdo desses arquivos utilizando um editor de texto ou comando type do DOS. Geralmente, os arquivos de inclusão têm um nome terminado com o sufixo.h ( de header ou cabeçalho) e estão gravados no diretório include. O Arquivo iostream.h 32

33 O arquivo iostream.h é um exemplo de arquivo de inclusão. Ele contém declarações necessárias ao uso do objeto cout e do operador de inserção <<. Sem essas declarações, o compilador não reconhece cout e <<. O arquivo iostream.h inclui ainda um objeto para recuperar dados digitados no teclado e também outras definições básicas de entrada e saída necessária a todos os programas que fizerem uso da saída padrão (vídeo) e entrada padrão (teclado). 2.9 Comandos de Entrada e Saída Imprimindo Usando cout Cout (pronuncia-se C out ) é um objeto de uma classe de I/O (entrada e sáida) predefinida em C++. C++ oferece uma biblioteca de funções e classes conhecida como streams. Elas contêm os elementos necessários para a execução de operações de entrada e saída (I/O). O objeto cout está associado a uma saída padrão (geralmente o vídeo). O operador <<, chamado de operador de inserção, conecta a mensagem a ser impressa à cout. As definições e declarações necessárias para o uso de streams estão contidas no arquivo iostream.h instalado no diretório include pelo compilador. Imprimindo Outros Tipos de Dados O próximo exemplo mostra como imprimir diferentes tipos de dados utilizando cout. #include <iostream.h> YRLG main() { cout << Vênus está a << 67 << milhões de milhas << \n << do sol ; } Note que utilizamos o operador << repetidamente na instrução. Este uso é perfeitamente correto. O programa envia primeiramente a cadeia Vênus está a para cout, então envia o número 67, e em seguida a cadeia milhões de milhas, o caractere nova linha \n e finalmente a cadeia do sol. Executando o Primeiro Programa O nosso primeiro programa, quando executado, irá imprimir na tela: Primeiro Programa Se for executado três vezes seguidas, obteremos a seguinte saída: Primeiro ProgramaPrimeiro ProgramaPrimeiro Programa 33

34 Note que o objeto cout não imprime numa nova linha automaticamente. A impressão é colocada na posição atual do cursor. Se desejar caracter de nova linha, este deve ser impresso explicitamente. O caractere nova linha não pode ser inserido diretamente pelo teclado. Para inserir caracteres especiais é usada a seguinte tabela que será vista a seguir. Códigos Especiais Além de enter, vários outros caracteres não podem ser inseridos diretamente pelo teclado. Esses caracteres são codificados em C++ por meio da combinação do sinal de barra invertida \ (barra invertida) com outros caracteres. A seguir a tabela com esses códigos: 7DEHOD&yGLJRVSDUDFDUDFWHUHVHVSHFLDLVHP& &ygljrvsdud&dudfwhuhv(vshfldlv 6LJQLILFDGR \n Nova linha (cr+lf) \t Tab \b Retrocesso \f Salta página de formulário \a Beep toca o alto falante \r CR cursor para início da linha \\ \ - barra invertida \0 Null Zero \ Aspa simples \ Aspa dupla \x Representação hexadecimal Como fica o primeiro programa alterado para imprimir numa nova linha: #include <iostream.h> YRLG main () { cout << \nprimeiro Programa ; } Lendo com cin e o Operador de Extração O objeto cin (pronuncia-se C in ) manipula toda a entrada do teclado por meio do operador de extração >> que conecta a entrada de dados à variável que a conterá os dados. As definições necessárias ao uso de cin estão no arquivo iostream.h. Exemplo 34

35 #include <iostream.h> YRLG main () { cout << \ndigite a sua idade em anos: ; LQW anos; cin >> anos; cout << \na sua idade em dias é: << (anos * 365); } o objeto cin aguarda até que seja pressionada a tecla enter para finalizar a entrada. O operador de extração >> toma o valor do objeto streams à sua esquerda e o coloca na variável à sua direita. Múltiplas Entradas com cin: #include <iostream.h> YRLG main () { cout << \ndigite as 4 notas: ; IORDW p1,p2, p3, p4; cin >> p1 >> p2 >> p3 >> p4; IORDW media=(p1+p2+p3+p4)/4; cout << \nmédia: << media; } Múltiplas entradas são digitadas separadas por um espaço em branco. O objeto cin entende um espaço como término de uma entrada e o enter como finalizador geral Comentários Os comentários são utilizados para documentar o código fonte. É possível duas formas de comentário. Comentários delimitados por /* e */ podem ser escritos em várias linhas:,qw D; /* um dos tipos de comentários em C++ permite o uso de múltiplas linhas. */ D = b * b 4 * a * c; /* se Delta for negativo não existe raiz nos reais. Por isso o Delta deve ser testado antes do programa prosseguir */ 35

36 Para comentários de uma única linha utiliza-se duas barras //, tudo que estiver a direita dessas barras é considerado comentário: // este comentário termina com o fim da linha X = X * 0.5; // Xis deve ser reduzido à metade 2.11 Desvio Condicional Os comandos de decisão permitem determinar qual é a ação a ser tomada com base no resultado de uma expressão condicional. Veremos o comando de decisão LIHOVH,I (<expressão de teste>) <Instrução>; Para mais de uma instrução deve abrir um bloco de comandos:,i (<expressão de teste>) { } <Instrução 1>; <Instrução 2>; <Instrução N>; Esta sintaxe é usada quando existe apenas comandos a serem executados quando a expressão de teste é verdadeira. Caso haja também comandos específicos a serem executados quando a expressão é falsa utiliza-se a seguinte sintaxe:,i (<expressão de teste>) <Instrução>; (OVH <Instrução>; Para mais de uma instrução:,i (<expressão de teste>) { } <Instrução 1>; <Instrução 2>; <Instrução N>; 36

37 (OVH { } <Instrução 1>; <Instrução 2>; <Instrução N>; 2.12 Procedimentos e Funções A implementação de uma função segue a estrutura mencionada na parte de forma geral das funções, porém para o seu uso pela main, a função deve ser definida antes da main: #include <iostream.h> //definição da função LQW celsius (LQW fahr) { LQW c; c=(fahr 32)* 5/9; UHWXUQ c; } YRLG main() { LQW c, f; cout << \ndigite a temperatura em Fahrenheit: ; cin >> f; c = celsius( f ); // chamada à função cout << \ncelsius = << c; } Pode-se definir a função após a main (ou da função que a utilizará) se ela for previamente prototipada. O protótipo consiste na somente declaração da função Classes A linguagem C++ é também conhecida como C com classes por incorporar os conceitos da orientação ao objeto. A seguir a sintaxe para criação de classes: FODVV <nome> { 37

38 <variáveis privadas> <protótipo das funções privadas> SXEOLF: <variáveis públicas> <protótipos das funções públicas> }; <implementação das funções> Veremos um exemplo de classe com herança: #include <iostream.h> FODVV animal { SXEOLF: YRLG comer(void); YRLG dormir(void); YRLG respirar(void); }; FODVV elefante : SXEOLF animal { SXEOLF: YRLG trompete(yrlg); YRLG esguicho(yrlg); }; YRLG animal :: comer (YRLG) {cout << Comendo...\n ;} YRLG animal :: dormir (YRLG) {cout << Dormindo...\n ;} YRLG animal :: respirando (YRLG) {cout << Respirando...\n ;} YRLG elefante :: trompete (YRLG) {cout << Trompete...\n ;} YRLG elefante :: esguicho (YRLG) {cout << Esguichando...\n ;} YRLG main () { } elefante Dumbo; Dumbo.respirar(); Dumbo.trompete(); Dumbo.dormir(); Dumbo.esguichar(); 38

39 Conclusão Através da elaboração deste trabalho foi possível definir alguns parâmetros no que se refere ao uso dessas linguagens. A linguagem Pascal é uma linguagem procedural. Este tipo de linguagem está perdendo campo para as linguagem orientadas ao objeto. Apesar disso, Pascal é a linguagem ideal para programadores iniciantes por apresentar comandos simples e de alto nível e também conceitos de fácil entendimento. Com ela é possível ao novato em desenvolvimento de sistemas exercitar lógica de programação, compreender o funcionamento das estruturas de controle, que afinal estão presentes, mesmo que de formas diferentes, na maioria das linguagens de programação. Mesmo que o programador pretenda partir posteriormente para uma linguagem orientada ao objeto, que é a tendência hoje em dia, é importante que se tenha uma base sólida sobre o uso e definição de procedimentos e funções. Isso porque até mesmo as classes da orientação ao objeto utilizam operações que de certa forma se assemelham, em termos de programação, aos procedimentos e funções. Tal base pode ser obtida com o exercício da programação em Pascal. A linguagem C++ possibilita a implementação da chamada orientação ao objeto. Apesar de ser evolução da linguagem C, C++ ainda mantém a característica de ser uma linguagem de médio nível. Isto significa que C++ tem características de uma linguagem de baixo nível, como a possibilidade de manipular diretamente registradores, mas vem acompanhado com arquivos, classes e objetos que permitem funções de alto nível, como ler do teclado e imprimir no vídeo. Mesmo que uma linguagem de médio nível que implementa orientação ao objeto implique em mais poder e controle ao programador, não seria recomendável o uso de C++ para iniciantes, mas sim para programadores com alguma experiência e que compreendam o conceito da orientação ao objeto. 39

INTRODUÇÃO À LINGUAGEM C++

INTRODUÇÃO À LINGUAGEM C++ INTRODUÇÃO À LINGUAGEM C++ 1 - VARIÁVEIS Variáveis espaço de memória reservado para armazenar tipos de dados, com um nome para referenciar seu conteúdo. Observações importantes Todas as variáveis devem

Leia mais

Conceitos básicos da linguagem C

Conceitos básicos da linguagem C Conceitos básicos da linguagem C 2 Em 1969 Ken Thompson cria o Unix. O C nasceu logo depois, na década de 70. Dennis Ritchie, implementou-o pela primeira vez usando o sistema operacional UNIX criado por

Leia mais

Regras Métodos Identificadores Variáveis Constantes Tipos de dados Comandos de atribuição Operadores aritméticos, relacionais e lógicos

Regras Métodos Identificadores Variáveis Constantes Tipos de dados Comandos de atribuição Operadores aritméticos, relacionais e lógicos Lógica Aula 2 Técnicas de Programação Criando algoritmos Regras Métodos Identificadores Variáveis Constantes Tipos de dados Comandos de atribuição Operadores aritméticos, relacionais e lógicos Criando

Leia mais

Linguagem de Programação I

Linguagem de Programação I Linguagem de Programação I Curso de Sistemas de Informação Karla Donato Fook karladf@ifma.edu.br DESU / DAI 2016 Linguagem de Programação C 2 1 Linguagem de Programação C Os programas em C consistem em

Leia mais

Linguagem C: variáveis, operadores, entrada/saída. Prof. Críston Algoritmos e Programação

Linguagem C: variáveis, operadores, entrada/saída. Prof. Críston Algoritmos e Programação Linguagem C: variáveis, operadores, entrada/saída Prof. Críston Algoritmos e Programação Linguagem C Linguagem de uso geral (qualquer tipo de aplicação) Uma das linguagens mais utilizadas Foi utilizada

Leia mais

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

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

Leia mais

Algoritmos e Programação

Algoritmos e Programação Universidade Federal do Vale do São Francisco Curso de Engenharia da Produção / Elétrica Algoritmos e Programação Parte 05 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti

Leia mais

3. INTRODUÇÃO À LINGUAGEM C 3.1. CONCEITOS BÁSICOS. Lógica de Programação

3. INTRODUÇÃO À LINGUAGEM C 3.1. CONCEITOS BÁSICOS. Lógica de Programação Lógica de Programação 3. INTRODUÇÃO À LINGUAGEM C Caro Aluno Vamos iniciar o terceiro capítulo da nossa disciplina. Agora vamos começar a aplicar os conceitos vistos nos capítulos anteriores em uma linguagem

Leia mais

CONCEITOS BÁSICOS PARA A CONSTRUÇÃO DE ALGORITMOS PARA COMPUTADORES. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

CONCEITOS BÁSICOS PARA A CONSTRUÇÃO DE ALGORITMOS PARA COMPUTADORES. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com CONCEITOS BÁSICOS PARA A CONSTRUÇÃO DE ALGORITMOS PARA COMPUTADORES Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com Objetivos Compreender os conceitos de lógica de programação e de algoritmos. Conhecer

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

Algoritmos e Técnicas de

Algoritmos e Técnicas de INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Algoritmos e Técnicas de Programação Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@ifrn.edu.br

Leia mais

Representação de Algoritmos - Linguagens de Programação

Representação de Algoritmos - Linguagens de Programação Representação de Algoritmos - Linguagens de Programação A representação de algoritmos em uma pseudo-linguagem mais próxima às pessoas é bastante útil principalmente quando o problema a ser tratado envolve

Leia mais

Variáveis e Comandos de Atribuição

Variáveis e Comandos de Atribuição BCC 201 - Introdução à Programação Variáveis e Comandos de Atribuição Guillermo Cámara-Chávez UFOP 1/47 Estrutura Básica de um programa C I < d i r e t i v a s do pré p r o c e s s a d o r > < d e c l

Leia mais

UNIDADE 6 - PROGRAMAÇÃO MODULAR

UNIDADE 6 - PROGRAMAÇÃO MODULAR UNIDADE 6 - PROGRAMAÇÃO MODULAR Até o momento as estruturas de controle (seqüência, seleção e repetição) de um algoritmo definia-o como um bloco lógico (início e fim). À medida que os problemas a serem

Leia mais

Programação I. Departamento de Engenharia Rural Centro de Ciências Agrárias

Programação I. Departamento de Engenharia Rural Centro de Ciências Agrárias Departamento de Engenharia Rural Centro de Ciências Agrárias Programação I Prof. Bruno Vilela Oliveira bruno@cca.ufes.br http://www.brunovilela.webnode.com.br Aula 08 Programação em pascal Pascal Pascal

Leia mais

Capítulo 2. VARIÁVEIS DO TIPO INTEIRO

Capítulo 2. VARIÁVEIS DO TIPO INTEIRO Capítulo 2. VARIÁVEIS DO TIPO INTEIRO OBJETIVOS DO CAPÍTULO Conceitos de: variáveis do tipo inteiro, atribuição, avisos e erros de compilação, erros de execução, comentários dentro do programa-fonte Operadores

Leia mais

Aula 12: Funções. Pré-requisitos: Todas as aulas anteriores deste módulo. 1. Aproveitando Códigos no Programa

Aula 12: Funções. Pré-requisitos: Todas as aulas anteriores deste módulo. 1. Aproveitando Códigos no Programa Aula 12: Funções Nesta aula explicaremos o que são e como usar funções nos seus programas em JavaScript. Você aprenderá como elas podem receber e retornar valores à estrutura que as acionou. Entenderá

Leia mais

15 a Aula Subprogramação /Subalgoritmos Função e Procedimento

15 a Aula Subprogramação /Subalgoritmos Função e Procedimento FISP 1/6 15 a Aula Subprogramação /Subalgoritmos Função e Procedimento Objetivo: Simplificação e racionalização na elaboração de algoritmos mais complexos Recursos: Estruturação de algoritmos e modularização

Leia mais

Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery

Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery Linguagem de Programação JAVA Técnico em Informática Professora Michelle Nery Agenda Regras paravariáveis Identificadores Válidos Convenção de Nomenclatura Palavras-chaves em Java Tipos de Variáveis em

Leia mais

TÉCNICAS DE PROGRAMAÇÃO

TÉCNICAS DE PROGRAMAÇÃO TÉCNICAS DE PROGRAMAÇÃO (Adaptado do texto do prof. Adair Santa Catarina) ALGORITMOS COM QUALIDADE MÁXIMAS DE PROGRAMAÇÃO 1) Algoritmos devem ser feitos para serem lidos por seres humanos: Tenha em mente

Leia mais

Figura 1: tela inicial do BlueControl COMO COLOCAR A SALA DE INFORMÁTICA EM FUNCIONAMENTO?

Figura 1: tela inicial do BlueControl COMO COLOCAR A SALA DE INFORMÁTICA EM FUNCIONAMENTO? Índice BlueControl... 3 1 - Efetuando o logon no Windows... 4 2 - Efetuando o login no BlueControl... 5 3 - A grade de horários... 9 3.1 - Trabalhando com o calendário... 9 3.2 - Cancelando uma atividade

Leia mais

Descrição do Produto. Altus S. A. 1

Descrição do Produto. Altus S. A. 1 Descrição do Produto O software MasterTool IEC é um ambiente completo de desenvolvimento de aplicações para os controladores programáveis da Série Duo. Esta ferramenta permite a programação e a configuração

Leia mais

Linguagem e Técnicas de Programação I Tipos de dados, variáveis e constantes. Prof. MSc. Hugo Souza Material desenvolvido por: Profa.

Linguagem e Técnicas de Programação I Tipos de dados, variáveis e constantes. Prof. MSc. Hugo Souza Material desenvolvido por: Profa. Linguagem e Técnicas de Programação I Tipos de dados, variáveis e constantes Prof. MSc. Hugo Souza Material desenvolvido por: Profa. Ameliara Freire Tipos de dados Os programas manipulam dados, armazenando-os

Leia mais

Algoritmos e Estruturas de Dados I 01/2013. Estruturas Condicionais e de Repetição (parte 2) Pedro O.S. Vaz de Melo

Algoritmos e Estruturas de Dados I 01/2013. Estruturas Condicionais e de Repetição (parte 2) Pedro O.S. Vaz de Melo Algoritmos e Estruturas de Dados I 01/2013 Estruturas Condicionais e de Repetição (parte 2) Pedro O.S. Vaz de Melo Problema 1 Suponha que soma (+) e subtração (-) são as únicas operações disponíveis em

Leia mais

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

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

Leia mais

Componentes da linguagem C++

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

Leia mais

CADERNOS DE INFORMÁTICA Nº 1. Fundamentos de Informática I - Word 2010. Sumário

CADERNOS DE INFORMÁTICA Nº 1. Fundamentos de Informática I - Word 2010. Sumário CADERNO DE INFORMÁTICA FACITA Faculdade de Itápolis Aplicativos Editores de Texto WORD 2007/2010 Sumário Editor de texto... 3 Iniciando Microsoft Word... 4 Fichários:... 4 Atalhos... 5 Área de Trabalho:

Leia mais

Introdução à Programação

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

Leia mais

Algoritmos e Programação Estruturada

Algoritmos e Programação Estruturada Algoritmos e Programação Estruturada Virgínia M. Cardoso Linguagem C Criada por Dennis M. Ritchie e Ken Thompson no Laboratório Bell em 1972. A Linguagem C foi baseada na Linguagem B criada por Thompson.

Leia mais

Computação II Orientação a Objetos

Computação II Orientação a Objetos Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Introdução Esse não é um curso de Java! O objetivo é aprender os conceitos da programação orientada a objetos,

Leia mais

Linguagem C. TGSI Lógica de Programação / Linguagem C Prof. Marcos Roberto

Linguagem C. TGSI Lógica de Programação / Linguagem C Prof. Marcos Roberto 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 UNIX. O C é derivado de uma outra linguagem: o B,

Leia mais

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

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

Leia mais

Algoritmos Estruturas Seqüenciais. José Gustavo de Souza Paiva

Algoritmos Estruturas Seqüenciais. José Gustavo de Souza Paiva Algoritmos Estruturas Seqüenciais José Gustavo de Souza Paiva 1 Introdução Objetivo básico da computação auxiliar os seres humanos em trabalhos repetitivos e braçais, diminuindo i i d esforços e economizando

Leia mais

10/02/2015. Introdução. Podemos classificar os tipos de dados a serem processados em dados e instruções Dados: Algoritmos e Lógica de Programação

10/02/2015. Introdução. Podemos classificar os tipos de dados a serem processados em dados e instruções Dados: Algoritmos e Lógica de Programação Introdução Algoritmos e Lógica de Programação Tipos de dados Podemos classificar os tipos de dados a serem processados em dados e instruções Dados: Informações a serem processadas pelo computador. Consideremos

Leia mais

DESENVOLVIMENTO DE SOFTWARE

DESENVOLVIMENTO DE SOFTWARE VARIAÁ VEL Antes de iniciarmos os comandos referentes a Banco de Dados, precisamos de uma breve descrição técnica sobre Variáveis que serão uma constante em programação seja qual for sua forma de leitura.

Leia mais

5 Apresentando a linguagem C

5 Apresentando a linguagem C 5 Apresentando a linguagem C O criador da linguagem de programação C foi Dennis Ritchie que, na década de 70, programou-a por meio de um computador DEC PDP-11 rodando sistema operacional Unix. Entretanto,

Leia mais

Principais códigos utilizados. Codificação. Código binário puro. Codificação binária. Codificação Binária. Código Binário puro e suas variantes

Principais códigos utilizados. Codificação. Código binário puro. Codificação binária. Codificação Binária. Código Binário puro e suas variantes Codificação Principais códigos utilizados Computadores e Equipamentos de Comunicações Digitais trabalham com representação e códigos. A codificação binária de sinais é largamente utilizada em Sistemas

Leia mais

Java Como Programar, 8/E

Java Como Programar, 8/E Capítulo 5 Instruções de controle: Parte 2 Java Como Programar, 8/E (C) 2010 Pearson Education, Inc. Todos os 5.1 Introdução Instrução de repetição for Instrução de repetição do while Instrução de seleção

Leia mais

Organização de Computadores 1

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

Leia mais

LÓGICA DE PROGRAMAÇÃO. Professor Celso Masotti http://ead.celsomasotti.com.br

LÓGICA DE PROGRAMAÇÃO. Professor Celso Masotti http://ead.celsomasotti.com.br LÓGICA DE PROGRAMAÇÃO Professor Celso Masotti http://ead.celsomasotti.com.br Ano: 2015 1 HTML & PHP em Ambiente Web PARTE II Sumário I Decisão... 4 Operadores de Comparação... 6 II IF ELSEIF ELSE... 7

Leia mais

1 Funções básicas de implementação de arquivos

1 Funções básicas de implementação de arquivos 1 Funções básicas de implementação de arquivos 1.1 Definindo registros Depois de um objeto do mundo real ter sido modelado, ou seja, após seus atributos importantes (e relevantes) terem sido identificados,

Leia mais

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia O Sistema Operacional que você usa é multitasking? Por multitasking, entende-se a capacidade do SO de ter mais de um processos em execução ao mesmo tempo. É claro que, num dado instante, o número de processos

Leia mais

9 Comandos condicionais

9 Comandos condicionais 9 Comandos condicionais Um comando condicional é uma instrução empregada quando se deseja criar um desvio, isto é, a opção de executar-se ou não um determinado trecho de código, segundo uma condição. Em

Leia mais

MANUAL DA SECRETARIA

MANUAL DA SECRETARIA MANUAL DA SECRETARIA Conteúdo Tela de acesso... 2 Liberação de acesso ao sistema... 3 Funcionários... 3 Secretaria... 5 Tutores... 7 Autores... 8 Configuração dos cursos da Instituição de Ensino... 9 Novo

Leia mais

3.1 Definições Uma classe é a descrição de um tipo de objeto.

3.1 Definições Uma classe é a descrição de um tipo de objeto. Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Classes Autoria:Aristófanes Corrêa Silva Adaptação:

Leia mais

Portal do Projeto Tempo de Ser

Portal do Projeto Tempo de Ser Sumário Portal do Projeto Tempo de Ser O que é um Wiki?...2 Documentos...2 Localizando documentos...3 Links...3 Criando um Documento...4 Criando um link...4 Editando um Documento...5 Sintaxe Básica...5

Leia mais

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

INFORMÁTICA APLICADA AULA 02 LINGUAGEM DE PROGRAMAÇÃO C++ UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: Bacharelado em Ciências e Tecnologia INFORMÁTICA APLICADA AULA 02 LINGUAGEM DE PROGRAMAÇÃO C++ Profª ª Danielle Casillo COMPILADORES Toda linguagem de programação

Leia mais

Apostilas OBJETIVA Atendente Comercial / Carteiro / Op. Triagem e Transbordo CORREIOS - Concurso Público 2015 2º CADERNO. Índice

Apostilas OBJETIVA Atendente Comercial / Carteiro / Op. Triagem e Transbordo CORREIOS - Concurso Público 2015 2º CADERNO. Índice 2º CADERNO Índice Pg. Microsoft Office: Excel 2010... Exercícios pertinentes... 02 63 Microsoft Office: Power Point 2010... Exercícios pertinentes... 104 146 Internet e Intranet. Conceitos básicos, navegadores

Leia mais

compreender a importância de cada estrutura de controle disponível na Linguagem C;

compreender a importância de cada estrutura de controle disponível na Linguagem C; Aula 3 Estruturas de controle Objetivos Esperamos que, ao final desta aula, você seja capaz de: compreender a importância de cada estrutura de controle disponível na Linguagem C; construir programas em

Leia mais

SUMÁRIO. 1. Instalação... 1. 2. Operações... 3. 2.1 Comunicação... 4. 2.1.1 Modo... 4. 2.1.2 Ethernet... 5. 2.1.3 Serial... 6

SUMÁRIO. 1. Instalação... 1. 2. Operações... 3. 2.1 Comunicação... 4. 2.1.1 Modo... 4. 2.1.2 Ethernet... 5. 2.1.3 Serial... 6 SUMÁRIO 1. Instalação... 1 2. Operações... 3 2.1 Comunicação... 4 2.1.1 Modo... 4 2.1.2 Ethernet... 5 2.1.3 Serial... 6 2.1.4 Configurações da placa de rede... 6 2.2 Edição base... 7 2.2.1 Produto... 7

Leia mais

Sistemas Operacionais. Curso Técnico Integrado Profa: Michelle Nery

Sistemas Operacionais. Curso Técnico Integrado Profa: Michelle Nery Sistemas Operacionais Curso Técnico Integrado Profa: Michelle Nery Conteúdo Programático CONTAS DE E GRUPOS DE O Microsoft Management Console - MMC Permissões de Segurança de um Console Contas de Usuários

Leia mais

Linguagem C Tipos de Dados. void; escalares; sizeof Vectores; strings em C Estruturas Introdução ao pré-processador

Linguagem C Tipos de Dados. void; escalares; sizeof Vectores; strings em C Estruturas Introdução ao pré-processador Linguagem C Tipos de Dados void; escalares; sizeof Vectores; strings em C Estruturas Introdução ao pré-processador Funções void void pode ser usado em lugar de um tipo, para indicar a ausência de valor

Leia mais

O Windows também é um programa de computador, mas ele faz parte de um grupo de programas especiais: os Sistemas Operacionais.

O Windows também é um programa de computador, mas ele faz parte de um grupo de programas especiais: os Sistemas Operacionais. MICROSOFT WINDOWS O Windows também é um programa de computador, mas ele faz parte de um grupo de programas especiais: os Sistemas Operacionais. Apresentaremos a seguir o Windows 7 (uma das versões do Windows)

Leia mais

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

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

Leia mais

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

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

Leia mais

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

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

Leia mais

LÓGICA DE PROGRAMAÇÃO. Vitor Valerio de Souza Campos

LÓGICA DE PROGRAMAÇÃO. Vitor Valerio de Souza Campos LÓGICA DE PROGRAMAÇÃO Vitor Valerio de Souza Campos Exemplos de algoritmos Faça um algoritmo para mostrar o resultado da multiplicação de dois números. Algoritmo em descrição narrativa Passo 1 Receber

Leia mais

Conectar diferentes pesquisas na internet por um menu

Conectar diferentes pesquisas na internet por um menu Conectar diferentes pesquisas na internet por um menu Pré requisitos: Elaboração de questionário Formulário multimídia Publicação na internet Uso de senhas na Web Visualização condicionada ao perfil A

Leia mais

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

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

Leia mais

Convertendo Algoritmos para a Linguagem C

Convertendo Algoritmos para a Linguagem C onvertendo Algoritmos para a Linguagem Notas de Aula Prof. Francisco Rapchan www.geocities.com/chicorapchan O objetivo deste texto é mostrar alguns programas em, dando uma breve descrição de seu funcionamento

Leia mais

Guia do Usuário. idocs Content Server v.2.0-1 -

Guia do Usuário. idocs Content Server v.2.0-1 - Guia do Usuário idocs Content Server v.2.0-1 - 2013 BBPaper_Ds - 2 - Sumário Introdução... 4 Inicializando a aplicação... 6 Ambiente... 7 Alterando o ambiente... 8 Senhas... 10 Alterando senhas... 10 Elementos

Leia mais

LINGUAGEM C. Estrutura básica de um programa

LINGUAGEM C. Estrutura básica de um programa LINGUAGEM C Estrutura básica de um programa Um programa em linguagem C é constituído por uma sequência de funções (módulos) que em conjunto irão permitir resolver o problema proposto. Estas funções contêm

Leia mais

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM C/C++ Prof. Dr. Daniel Caetano 2012-1

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM C/C++ Prof. Dr. Daniel Caetano 2012-1 LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM C/C++ Prof. Dr. Daniel Caetano 2012-1 Objetivos Entender o mecanismo de um programa em C/C++ Apresentar e estrutura da Linguagem C/C++

Leia mais

Manual do Teclado de Satisfação Online WebOpinião

Manual do Teclado de Satisfação Online WebOpinião Manual do Teclado de Satisfação Online WebOpinião Versão 1.2.3 27 de novembro de 2015 Departamento de Engenharia de Produto (DENP) SEAT Sistemas Eletrônicos de Atendimento 1. Introdução O Teclado de Satisfação

Leia mais

Orientação a Objetos

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

Leia mais

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

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

Leia mais

Introdução. A Informação e sua Representação (Parte II) Universidade Federal de Campina Grande. Unidade Acadêmica de Sistemas e Computação

Introdução. A Informação e sua Representação (Parte II) Universidade Federal de Campina Grande. Unidade Acadêmica de Sistemas e Computação Universidade Federal de Campina Grande Unidade Acadêmica de Sistemas e Computação Introdução à Computação A Informação e sua Representação (Parte II) Prof. a Joseana Macêdo Fechine Régis de Araújo joseana@computacao.ufcg.edu.br

Leia mais

Introdução ao Paradigma Orientado a Objetos. Principais conceitos

Introdução ao Paradigma Orientado a Objetos. Principais conceitos Introdução ao Paradigma Orientado a Objetos Principais conceitos Paradigmas de Programação PROGRAMAÇÃO ESTRUTURADA X PROGRAMAÇÃO ORIENTADA A OBJETOS Paradigma Programação estruturada Na programação estrutura

Leia mais

Treinamento em BrOffice.org Writer

Treinamento em BrOffice.org Writer Treinamento em BrOffice.org Writer 1 Índice I. INTRODUÇÃO...3 II. BARRA DE FERRAMENTAS...3 III. CONFIGURAR PÁGINA...4 1. Tamanho, Margens e Orientação...5 2. Cabeçalhos...6 3. Rodapés...6 4. Numerando

Leia mais

Usando o do-file editor Automatizando o Stata

Usando o do-file editor Automatizando o Stata Usando o do-file editor Automatizando o Stata 1 O QUE É O EDITOR DE DO-FILE O Stata vem com um editor de texto integrado, o do-file editor (editor de do-files, em português), que pode ser usado para executar

Leia mais

Estrutura de Dados Básica

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

Leia mais

Programação I. Departamento de Engenharia Rural Centro de Ciências Agrárias

Programação I. Departamento de Engenharia Rural Centro de Ciências Agrárias Departamento de Engenharia Rural Centro de Ciências Agrárias Programação I Prof. Bruno Vilela Oliveira bruno@cca.ufes.br http://www.brunovilela.webnode.com.br Aulas 2-3-4-5-6-7-8 Lógica Algoritmos Portugol

Leia mais

Trabalho 3: Agenda de Tarefas

Trabalho 3: Agenda de Tarefas INF 1620 Estruturas de Dados Semestre 08.2 Trabalho 3: Agenda de Tarefas O objetivo deste trabalho é a implementação de um conjunto de funções para a manipulação de uma agenda de tarefas diárias, de forma

Leia mais

Guia de utilização da notação BPMN

Guia de utilização da notação BPMN 1 Guia de utilização da notação BPMN Agosto 2011 2 Sumário de Informações do Documento Documento: Guia_de_utilização_da_notação_BPMN.odt Número de páginas: 31 Versão Data Mudanças Autor 1.0 15/09/11 Criação

Leia mais

Virtual Box. Guia. Instalação E Utilização. Criado por Wancleber Vieira wancleber.vieira@ibest.com.br

Virtual Box. Guia. Instalação E Utilização. Criado por Wancleber Vieira wancleber.vieira@ibest.com.br Virtual Box Guia De Instalação E Utilização 1 Sumário Instalação do Linux Ubuntu através de um gerenciador de Máquinas Virtuais 1.1 Introdução, 3 1.2 Instalação do Virtual Box, 3 1.3 Configuração do Virtual

Leia mais

Esse produto é um produto composto e tem subprodutos

Esse produto é um produto composto e tem subprodutos Indústria - Cadastro de produtos O módulo indústria permite controlar a produção dos produtos fabricados pela empresa. É possível criar um produto final e definir as matérias-primas que fazem parte de

Leia mais

Simulado Informática Concurso Correios - IDEAL INFO

Simulado Informática Concurso Correios - IDEAL INFO Simulado Informática Concurso Correios - IDEAL INFO Esta prova de informática é composta por 20 (vinte) questões de múltipla escolha seguindo o molde adotado pela UnB/CESPE. O tempo para a realização deste

Leia mais

Filas. A ordem de saída corresponde diretamente à ordem de entrada dos elementos. Fila de caixa bancário

Filas. A ordem de saída corresponde diretamente à ordem de entrada dos elementos. Fila de caixa bancário Filas Fila é um tipo de lista linear onde as inserções são realizadas num extremo (final da Fila) e as remoções restritas ao outro (começo da Fila). O primeiro a entrar é o primeiro a sair e último a entrar

Leia mais

OFICINA DE POWER POINT

OFICINA DE POWER POINT OFICINA DE POWER POINT Barra de Ferramentas Padrão Barra de Ferramentas Formatação Barra de Menus Modos de Visualização Painéis de Tarefas Barra de Ferramentas Desenho Profª. Maria Adelina Raupp Sganzerla

Leia mais

Circuitos Digitais 144L

Circuitos Digitais 144L Circuitos Digitais Notas de Aula - 02 INSTITUTO: CURSO: DISCIPLINA: Instituto de Ciências Exatas e Tecnologia Ciência da Computação e Sistemas de Informação Circuitos Digitais 144L 1.0 Circuitos Combinacionais.

Leia mais

Descrição e análise da implementação em Assembly MIPS da função itoa

Descrição e análise da implementação em Assembly MIPS da função itoa Descrição e análise da implementação em Assembly MIPS da função itoa Alana Rocha 1, Guilherme Alves 2, Guilherme Nunes 3 e Luiz Guilherme 4 Objetivo e visão geral do documento Este documento tem o objetivo

Leia mais

Programação de Computadores Primeiros Passos Práticos em C++

Programação de Computadores Primeiros Passos Práticos em C++ Programação de Computadores Primeiros Passos Práticos em C++ Alan de Freitas! Marco Antonio Carvalho Compilação de Programas O compilador é o responsável por transformar nosso código em um programa propriamente

Leia mais

1 ACESSO PARA SECRETÁRIA... 4 2 - CONFIGURAR HORÁRIOS DE ATENDIMENTO... 4 2.1 BLOQUEANDO E HABILITANDO HORÁRIOS... 5 3 PRÉ-DEFININDO PARÂMETROS DE

1 ACESSO PARA SECRETÁRIA... 4 2 - CONFIGURAR HORÁRIOS DE ATENDIMENTO... 4 2.1 BLOQUEANDO E HABILITANDO HORÁRIOS... 5 3 PRÉ-DEFININDO PARÂMETROS DE 2 1 ACESSO PARA SECRETÁRIA... 4 2 - CONFIGURAR HORÁRIOS DE ATENDIMENTO... 4 2.1 BLOQUEANDO E HABILITANDO HORÁRIOS... 5 3 PRÉ-DEFININDO PARÂMETROS DE ATENDIMENTO... 6 4 - A TELA AGENDA... 7 4.1 - TIPOS

Leia mais

1) Ao ser executado o código abaixo, em PHP, qual será o resultado impresso em tela?

1) Ao ser executado o código abaixo, em PHP, qual será o resultado impresso em tela? Exercícios sobre Linguagem PHP: 1) Ao ser executado o código abaixo, em PHP, qual será o resultado impresso em tela? 2) Considere a linguagem de programação PHP e seus operadores. A execução da sentença:

Leia mais

1) Digitar o código-fonte no editor do compilador Turbo Pascal para windows, exatamente como apresentado a seguir:

1) Digitar o código-fonte no editor do compilador Turbo Pascal para windows, exatamente como apresentado a seguir: Introdução à Informática 1 de 6 Data: 29/05/04 1) Digitar o código-fonte no editor do compilador Turbo Pascal para windows, exatamente como apresentado a seguir: program eq2grau; uses WinCrt, Strings;

Leia mais

cast poderia ser usado também para transformar um real (float) em inteiro. A sintaxe C (float)i pode ser substituída em C++ por float(i).

cast poderia ser usado também para transformar um real (float) em inteiro. A sintaxe C (float)i pode ser substituída em C++ por float(i). Cast (conversão) Um tipo de dado pode ser convertido momentaneamente em outro tipo com um cast. Em linguagem C a sintaxe usada é formada pelo tipo desejado entre parênteses precedendo a expressão a ser

Leia mais

Implementando uma Classe e Criando Objetos a partir dela

Implementando uma Classe e Criando Objetos a partir dela Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 04 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 2 Prof. Cristóvão Cunha Implementando uma Classe

Leia mais

Capítulo 8. CICLOS. Tabela 8.1 Programa8a.f90.

Capítulo 8. CICLOS. Tabela 8.1 Programa8a.f90. Capítulo 8. CICLOS OBJETIVOS DO CAPÍTULO Conceito de ciclo Comandos do FORTRAN: DO END DO, EXIT 8.1 programa8a.f90 Para inicializar as atividades deste capítulo, deve-se executar: 1) Para acessar o programa

Leia mais

CONCEITOS BÁSICOS DE UM SISTEMA OPERATIVO

CONCEITOS BÁSICOS DE UM SISTEMA OPERATIVO 4 CONCEITOS BÁSICOS DE UM SISTEMA OPERATIVO CONCEITOS BÁSICOS MS-DOS MICROSOFT DISK OPERATION SYSTEM INSTALAÇÃO E CONFIGURAÇÃO DE UM SISTEMA OPERATIVO LIGAÇÕES À INTERNET O que é um sistema operativo?

Leia mais

Criando um script simples

Criando um script simples Criando um script simples As ferramentas de script Diferente de muitas linguagens de programação, você não precisará de quaisquer softwares especiais para criar scripts de JavaScript. A primeira coisa

Leia mais

AMBIENTE. FORMULÁRIO: é a janela do aplicativo apresentada ao usuário. Considere o formulário como a sua prancheta de trabalho.

AMBIENTE. FORMULÁRIO: é a janela do aplicativo apresentada ao usuário. Considere o formulário como a sua prancheta de trabalho. DELPHI BÁSICO VANTAGENS Ambiente de desenvolvimento fácil de usar; 1. Grande Biblioteca de Componentes Visuais (VCL - Visual Component Library), que são botões, campos, gráficos, caixas de diálogo e acesso

Leia mais

ÍNDICE. Delphi... 3 CAPÍTULO 1 INTRODUÇÃO... 06 CAPÍTULO 2 INSTALANDO O DELPHI... 10

ÍNDICE. Delphi... 3 CAPÍTULO 1 INTRODUÇÃO... 06 CAPÍTULO 2 INSTALANDO O DELPHI... 10 Delphi 7 ÍNDICE CAPÍTULO 1 INTRODUÇÃO... 06 CAPÍTULO 2 INSTALANDO O DELPHI... 10 CAPÍTULO 3 INICIANDO O Delphi... 18 FORM DESIGN... 19 CODE EDITOR... 23 OBJECT INSPECTOR... 26 OBJECT TREE VIEW... 29 PALHETA

Leia mais

AR PDV SOLUÇÕES AR CONSULTORIA EM INFORMÁTICA

AR PDV SOLUÇÕES AR CONSULTORIA EM INFORMÁTICA 1 Sumário: 1. AR PDV...02 2. Registro / Login...03 3. Configuração...03 4. Abertura de Caixa...03 5. Registro de Vendas...04 a. Passos para Emissão do Cupom Fiscal...05 b. Inserindo Produtos...06 c. Formas

Leia mais

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

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

Leia mais

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

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

Leia mais