Algoritmo & Lógica de Programação

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

Download "Algoritmo & Lógica de Programação"

Transcrição

1 Algoritmo & Lógica de Programação Pet de Engenharia Elétrica UFRN - CIT A presente apostila foi desenvolvida para o curso oferecido aos alunos iniciantes dos cursos de Engenharia, pelo PET EE. Nela aborda-se de maneira sucinta os conceitos fundamentais para uma contato inicial com a referida disciplina, sendo planejada para o acompanhamento de tal curso, o qual possui duração de 10hrs. 1 ª E d i ç ã o

2 Sumário Introdução... 1 Capítulo 1 - Algoritmos e Lógica de Programação O que é um algoritmo? Lógica de programação & fluxogramas Como programar?... 5 PROBLEMAS - CAPÍTULO Capítulo 2 - Introdução à linguagem C O que é linguagem de programação? O ambiente DEV-C Estrutura padrão de um programa em C Entrada e saída de dados: cin e cout Expressões e variáveis Operadores Conversão de Tipo PROBLEMAS CAPÍTULO Capítulo 3 - Estruturas de controladores de fluxo Estruturas de desvios condicionais: Estruturas Iterativas: Vetores PROBLEMAS CAPÍTULO REFERÊNCIAS:... 36

3 When I read commentary about suggestions for where C should go, I often think back and give thanks that it wasn't developed under the advice of a worldwide crowd. (Dennis Ritchie) Quando eu leio comentários sobre sugestões de como C deveria mudar, eu geralmente me recordo do passado e agradeço que tal linguagem não tenha sido desenvolvida com base nos conselhos de um mundo lotado de pessoas. (Dennis Ritchie)

4 1 Introdução Algoritmo e lógica de programação é uma disciplina fundamental para qualquer aluno de engenharia. Essa disciplina permite o desenvolvimento do pensamento lógico, além de fornecer uma pequena ideia de como os computadores funcionam. Agora, reflita sobre todos os softwares que você utiliza diariamente, além daqueles que você gostaria de entender como funcionam. Por diversas vezes em engenharia, o profissional da área utilizará softwares específicos, ou até mesmo precisará implementar, ou seja, criar um software para um determinado fim. Dada a importância dessa disciplina, de uma coisa você precisa saber antes de começar: NÃO TENHA MEDO. Programar pode ser uma tarefa empolgante e desafiadora à medida que temos os nossos intelectos desafiados à cada nova atividade, só o que precisamos é desvendar algumas ferramentas e saber como elas funcionam, e esse é o objetivo principal dessa apostila, repassar uma noção inicial sobre essas ferramentas e de como utilizálas. Bons estudos!

5 2 Capítulo 1 - Algoritmos & Lógica de Programação O que é um algoritmo? A resposta para essa pergunta é geralmente respondida da seguinte forma: Algoritmo é um conjunto de sequências lógicas para resolução de um determinado problema. Duas coisas: 1 Sequência Lógica; isso implica em um conjunto de ações organizadas logicamente, em passos. 2 Resolução de um problema; ou seja, existe um fim, logo um algoritmo é algo finito. Exemplo 1 - Essa definição lembra alguma coisa? Sim, pense numa receita de bolo por exemplo. Cada etapa da preparação do bolo está organizada de uma maneira lógica. Você não coloca o fermento após levar o bolo ao forno, certo? Além do mais, ao terminar de excutar todas as ações da receita, o resultado esperado é o bolo. E por que você precisa saber o que é um algoritmo? Porque é assim que os softwares funcionam, eles nada mais são que conjuntos e mais conjuntos de algoritmos, os quais juntos funcionam pra resolver um determinado problema. Exemplo 2 - Imagine que você tenha que desenvolver um algoritmo para trocar lâmpadas. Como seria esse algoritmo? Bem, vamos supor que você disponha de uma escada, de uma certa quantidade de lâmpadas que funcionam e uma lâmpada queimada, a qual deve ser trocada. Vamos tentar organizar nossas ações numa sequência lógica abaixo: 1º - Desligue o interruptor. (Afinal, você não quer correr o riscor de sofrer um acidente). 2º - Coloque a escada embaixo da lâmpada queimada. 3º - Suba na escada. 4º - Retire a lampada queimada. 5º - Desça da escada. 6º - Pegue uma nova lampada. 7º - Suba na escada. (Tenha cuidado). 8º - Coloque a nova lampada. 9º - Desça da escada. 10º - Ligue o interruptor. 11º - Guarde a escada.

6 3 Esse é um exemplo muito simples de um algoritmo, ele segue uma sequência lógica, afinal você não colocaria a escada embaixo da lâmpada depois de trocá-la, supondo um altura considerável, você nem conseguiria trocá-la, então uma ação completa a outra em termos de sentido. Você poderia criar outro algiritmo para um outro problema? Como o de trocar o pneu de um carro, por exemplo Lógica de programação & fluxogramas. Lógica de programação é a técnica de encadear pensamentos para atingir determinado objetivo. E esse encadeamento é o que se tem abordado bastante anteriormente, a sequência lógica de como as coisas acontecem. Se você ainda não se sente confortável com a ideia de algoritmo, há ainda um modo bem fácil de lembrar que você, de alguma forma ou de outra, já deve ter utilizado um algoritmo. A prova disso está nos fluxogramas, os quais são tipos de diagramas usados na esquematização de processos, como um projeto. Vamos pensar no caso da lâmpada novamente. Mas agora, pensemos que você tem uma certa quantidade de lampadas que supostamente funcionam, ou seja, você não sabe quais das lâmpadas disponíveis realmente funciona, vamos considerar também que você não saiba por que a lâmpada que deve ser trocada não está funcionando. Então, vamos criar um novo algoritmo focando apenas na parte de testes, supondo as outras condições acessíveis ou já realizadas, como a de colocar a escada embaixo da lâmpada, essa é uma outra situação, ok? Podemos organizar nossa rotina, ou seja, nossas instruções que formam uma repetição, em um fluxograma:

7 Sobre fluxograma há muito que poderia ser abordado, por exemplo, cada tipo de bloco representa algo, os retângulos de bordas arrendodas significam ações ou constatações, já os losângulos representam testes, é claro que há vários outros padrões criados, por isso, informações dentro de cada bloco se fazem necessárias. No entanto, nosso objetivo foi apenas o de mostrar como esse encadeamento de pensamentos pode ocorrer.repare como cada caminho se completa numa sequência de ações lógicas que levam a resolução do nosso problema. Abaixo, temos uma tabela que mostra um padrão estabelico para o significado de cada bloco e mais dois exemplos de fluxogramas: 4

8 5 1.3 Como programar? Agora que você já tem uma noção do que é um algiritmo, temos um novo desafio, que é o de usar essas informações na prática, ou seja, realmente criar um programa. E como fazer isso? Bem, sabemos que os programas são conjutos de alritmos, temos uma noção de como criar um, mas ainda nos falta informações, não sabemos de fato como o computador vai entender nossas instruções, ou como a nossa lógica poderá ser interpretada e traduzida de fato para o mesmo. Várias coisas que o ser humano construiu são baseadas em analogias do que ele encontra na natureza, desse modo, apresentaremos uma analogia que o auxiliará a entender esse processo. Todo algoritmo segue três passos fundamentais descritos abaixo: ENTRADA PROCESSAMENTO SAÍDA Onde temos: ENTRADA: São os dados de entrada do algoritmo. PROCESSAMENTO: São os procedimentos usados para chegar ao resultado final. SAÍDA: São os dados já processados. De certa forma, essas fases se assemelham bastante ao que o ser humano faz durante a resolução de um problema, ou mesmo durante uma conversa:

9 6 Essas três etapas são essenciais para qualquer algoritmo, e todo esse processo de criação acontece no computador por meio de um programa chamado compilador através de uma linguagem de programação. Mas não se preocupe com isso agora, primeiro, precisamos entender como cada fase dessa funciona, ou o que ocorre em cada fase, para isso, vamos simular um problema: O cálculo da média de um aluno. 1ª Parte: Entrada Na entrada, como dito anteriormente, são onde os dados são fornecidos. Mas, o que são os dados? Como os usamos? Os dados são basicamente conjunto de informações que nós possuímos, no nosso caso, nossos dados são as notas. Os dados, de uma maneira geral, são divididos em categorias: Variáveis e Constantes. Constante: É um determinado valor fixo que não se modifica à medida que o algoritmo é executado. Por exemplo, para cálcular a média aritmética de quatro notas, a soma das quatro notas é dividida por quatro, ou seja, esse valor é imutável ao longo do processamento, ele é uma constante. Variável: É a representação simbólica dos elementos de um certo conjunto, tal valor simbólico pode ser alterado durante a execução de um programa. No entanto, apesar de poder assumir diversos valores ao longo do tempo, ela só pode assumir um valor por vez. Por exemplo, nossas variáveis são as notas, você usará o programa para calcular as médias de vários alunos, então as notas não podem ser contantes, ou o resultado final sempre seria o mesmo. Tipos de variáveis As variáveis e as constantes podem ser divididas em quatro categorias básicas: Númericas: Específicas para o uso de números, as quais posteriomente podem ser utilizadas em cálculos, etc. Nos próximos capítulos, veremos que há subdivisões nessa categoria, como variáveis numéricas do tipo inteiro, do tipo real, entre outras. Caracteres: Específicas para o armazenamento de caracteres ou conjunto de caracteres que não contenham números. Como exemplo: nomes, meses, etc. Alfanuméricas: Específicas para dados que contenham caracteres e/ou números. No entanto, não podem ser usadas para relações matemáticas. Lógicas: Armazenam apenas dados lógicos que podem ser Verdadeiro ou Falso.

10 7 2ª Parte: Processamento. No processamento é onde as relações entre os dados acontece, é onde boa parte da lógica é empregada. No nosso caso, o nosso procedimento será o de somar as quatro notas fornecidas e depois dividar tal soma por quatro. Para realizar tal procedimento, precisamos de operadores. Operadores: São meios pelo qual algumas operações lógicas são realizadas, como incrementar (aumentar algo), decrementar (diminuir algo), comparar, etc. Tipos de Operadores Operadores Aritméticos: São utilizados para obter resultados numéricos. Operações do tipo soma, subtração, multiplicação, divisão e potênciação. Operadores Relacionas: São utilizados para comparar. Se um número é maior do que o outro, menor ou igual, se uma palavra é igual ou difente, entre outros casos. Operadores Lógicos: São usados para combinar resultados de expressões, retornando se o resultado final é verdadeiro ou falso. Por exemplo, saber se um número a é maior do que um número x e número y, ou se é maior do que apenas um dos dois. Nesses casos, e e ou são operadores lógicos. OBS.: Uma abordagem mais detelhada sobre Operadores e Variáveis será dada posteriormente. Os simbolos que representam os operadores podem ser diferentes dependendo da linguagem de programação utilizada, bem como a forma de trabalhar com váriaveis, desse modo, quando entrarmos na linguagem de programação abordada por essa aspostila, falaremos melhor sobre este assunto. No nosso caso, o procedimento seria: Média = (nota1 + nota2 + nota3 + nota4)/4. Média e nota1, nota2... nota4 são nossas variáveis, 4 é uma constante, + é um operador aritimético, assim como /, já = é um operador relacional.

11 8 3ª Parte: Saída. A saída representa a parte em que os dados já foram processados e algora um resultado é apresentado. No nosso caso, a nossa saída, ou seja, a informação que nós queremos a partir do dados fornecidos e da lógica usada no processamento é a Média. Mas como fazemos pra mostrar a média na tela do computador? O que precisamos usar? Bem, como já dito anteriormente, a comunicação com computador é realizada por meio de um software chamado compilador e a sua lógica é repassa e traduzida pelo compilador pelo uso de uma linguagem de programação. Há várias linguagens de programação atualmente, provavelmente você já deve ter ouvido falar de Java, ou de C, C++, essas são linguagens de programação, códigos padronizados que representam a lógica do programador. Nessa apostila, o compilador utilizado é o DEV-C++ e a línguagem de programação é C++. PROBLEMAS - CAPÍTULO 1 1 Três índios, conduzindo três brancos, precisam atravessar um rio dispondo para tal de um barco cuja capacidade é de apenas duas pessoas. Por questões de segurança, os índios não querem ficar em minoria, em nenhum momento e em nenhuma das margens. Escreva um algoritmo que oriente os índios para realizarem a travessia nas condições fixadas. (Cabe observar que, usualmente, este exercício é enunciado envolvendo três jesuítas e três canibais. A alteração feita é uma modesta contribuição para o resgate da verdadeira história dos índios). 2 O jogo conhecido como Torre de Hanói consiste de três torres chamadas origem, destino e auxiliar e um conjunto de n discos de diâmetros diferentes, colocados na torre origem na ordem decrescente dos seusdiâmetros. O objetivo do jogo é, movendo um único disco de cada vez e não podendo colocar um disco sobreoutro de diâmetro menor, transportar todos os discos para torre destino, podendo usar a torre auxiliar comopassagem intermediária dos discos. Escreva algoritmos para este jogo nos casos n= 2 e n = 3. 3 Escreva um algoritmo para determinar o resto de uma divisão inteira utilizando uma máquina de calcular que efetue apenas as quatro operações: adição, subtração, multiplicação e divisão.

12 9 Capítulo 2 Introdução à linguagem C O que é linguagem de programação? Lembre-se que em nossa analogia das fases de um algoritmo, o ser humano recebia instruções ou as captava pelos sentidos, tato, audição, visão, processava as informações no cérebro e dava uma resposta adequada. Agora, de quantas maneiras diferentes através da fala você pode passar uma instrução? Há várias maneiras, uma delas é usar palavras diferentes que no fim, resultam no mesmo significado, é o que chamamos de semântica e a outra forma é simplesmente mudar o idioma, e é claro que você precisaria entender o idioma em que as instruções são passadas para que você as possa processar e fornecer uma resposta adequada. Da mesma forma, há várias formas de passar instruções para o computador, existem várias linguagens que possibilitam a comunicação com ele, desde que haja um tradutor adequado, no caso, o compilador, ou programa que você vai usar para programar. Então, o que seria, de fato, linguagem de programação? Nada mais do que uma forma padronizada de passar instruções ao computador. E o que define essa padronização? O que define a padronização é a sintaxe, que nada mais é do que a forma que você escrever as instruções. O c++ é uma das várias linguagens de programação existentes, ela é considerada uma linguagem de nível médio (quanto mais alto nível, mas fácil de manipular), e existe desde Passada essa parte teórica, vamos ao que realmente interessa. 2.2 O ambiente DEV-C++ O compilador usado para os exemplos dessa apostila, o DEV-C++ é muito fácil de ser instalado, é gratuito e pode ser facilmente encontrado na internet. Após a instalação, ao executar o programa você encontrará isso:

13 10 Na parte de cima, uma barra de ferramentas que você desvendará à medida que utilizar o programa, à esquerda um espaço reservado para visualizar os projetos em que você está trabalhando no momento e na caixa de texto, uma dica sobre o compilador. Para iniciar um novo projeto, vá em File->New->Project, ao fazer isso você verá: Escolha a opção Console Application e dê um nome para o seu projeto, há alguns caracteres que não podem ser incluídos no nome, então, é melhor escolher um nome simples para o mesmo. Após escolher a opcão descrita e nomear seu projeto, um local para salvar os arquivos gerados será perguntando, é sugerido aqui, que você crie uma pasta específica para cada um de seus projetos, assim, você sempre saberá onde encontrar os arquivos das suas aplicações. A seguir, temos:

14 11 Pronto, é aqui onde a mágica acontece. Nessa imagem, temos a estrutura inicial para começar qualquer aplicação simples. Repita o seguinte código abaixo: Exemplo 3 - Olá mundo! #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { cout << "Ola mundo!" << endl; system("pause"); return EXIT_SUCCESS; } Depois de digitar o código acima, você pode executar o código, ou em outras palavras, compilá-lo para ver o que acontece, para isso, basta pressionar a teclar F9. Primeiro, lhe será perguntando onde você deseja salvar o arquivo main.cpp, ou seja, o arquivo principal do seu projeto, sugerimos que salve na mesma pasta criada por você anteriormente. Após salvar, o resultado esperado será esse: E esse foi o nosso primeiro programa, o qual simplesmente exibe na tela a mensagem Ola mundo!.

15 12 Agora, vamos tentar entender o que aconteceu e adentrar um pouco mais na linguagem c Estrutura padrão de um programa em C++ Vamos dar mais uma olhada no código do nosso primeiro programa: #include <cstdlib> #include <iostream> using namespace std; BIBLIOTECAS: São conjuntos de subprogramas, códigos que permitem fazer algo, ou utilizar algo. NAMESPACE: Delimitador abstrato, fornece um contexto. int main(int argc, char *argv[]) { cout << "Ola mundo!" << endl; system("pause"); return EXIT_SUCCESS; } Função principal, aqui é onde tudo acontece. Linha de código, comando cout Comando de Pausa. Determinação do fim do algoritmo. Voltando àquela analogia inicial, na qual comparávamos um algoritmo a uma receita, o que seria o compilador? O compilador seria a cozinha, espaço onde você vai trabalhar a receita, manipular os ingredientes e processar tudo até chegar no resultado final. Mas, para fazer qualquer receita, você precisa fazer com que as coisas ocorram, colocar leite, mexer a massa, etc. Assim, as bibliotecas são conjuntos de programas que você não vê os códigos, as quais permitem que você utilize comandos, o comando utilizado no nosso caso foi o cout, mas tarde veremos mais sobre isso. O namespace seria um contextualizador, por exemplo, nas bibliotecas você tem listas de comandos enumerados, ele é quem diz que o comando número 2 significa algo no seu algoritmo com o contexto específico no seu código, por exemplo, o comando cout significa copy out, ao escrever cout, digamos que ele faça refêrencia ao comando de número 125 da sua bilbioteca iostream. Não se preocupe com bibliotecas e namespaces agora, essas são explicações puramente didáticas para que você tenha ao menos uma noção do seus respectivos significados. Todos os algoritmos são executados numa sequência lógica, o copilador vai lendo as linhas de código de cima para baixo e executando-as à media que passar por elas, cada linha diferente é separada por ;. Além disso, o símbolo { abre um bloco de comando e ele sempre deve ser fechado pelo seu par: }. Você pode escrever algo no código a ser ignorado pelo compilador? A resposta é sim, como comentários por exemplo, os quais são simplesmente frases que os programadores colocam para deixálo mais claro a outras pessoas. E para fazer um comentário basta colocar // ao lado esquerdo do que você deseja tornar um comentário. Por exemplo, se comentarmos a nossa segunda linha: #include <iostream>, ficaremos com: //#include <iostream> e se executarmos o progarama, teremos o seguinte erro:

16 Ao comentarmos #include <iostream>, o compilador vai ignorar essa linha de código, ou seja tal biblioteca não está sendo mais considerada pelo mesmo, o comando cout vem dessa biblioteca, então, quando o compilador lê a linha em que o cout aparece ele não vai mais reconhecê-lo. Na parte de baixo, temos algo bastante interessante, o compilador informa os erros que eventuamente ocorrem, acompanhando as colunas da esquerda pra direita, temos Line (linha), a linha em que se encontra o erro, no nosso caso a linha 8 (linha destecada em vermelho), depois temos File (arquivo), onde se encontra o arquivo em que o erro foi detectado e em seguida, temos Message (mensagem), a mensagem de erro: cout undeclared (first use this function), ou seja, cout não declarado! Outro erro comum é escrever o comando de forma errada, o C++ 13

17 14 é uma linguagem do tipo case sensitive, o que significa que se você digitar COUT ao invés de cout, ele não reconhecerá mais o comando, por isso, é importante conhecer bem a sintaxe da linguagem, ou seja, a forma de como os comandos devem ser escritos. 2.4 Entrada e saída de dados: cin e cout Existem algumas formas de passar e receber informações para um programa, a mais simples e utilizada é através dos comandos cin e cout, esses comandos pertecem à biblioteca iostream ( input, output de stream), o que significa entrada e saída de dados. Para usar tais comandos, precisamos incluír tal biblioteca, o que é feito através do comando include, o qual já aparece automaticamente quando um novo projeto é criado. Temos então: Comandos: cin e cout; (Copy in, Copy out). Sintaxe: cin >> informação que se deseja receber; cout << informação que se deseja mostrar. Se for um texmo cout << sua frase << endl;. Se for uma variável cout << variável << endl; Antes de mostrar um exemplo com cin e cout, vamos voltar ao tópico das variáveis, assim nossa compreensão será mais prática sobre o assunto. 2.5 Expressões e variáveis Em c++, uma expressão é uma combinação de variáveis, constantes e operadores, resultando em um valor, o qual é chamado valor da expressão, por exemplo: X = 6 * a + b; x e y são variáveis, 6 é uma constante e os simbolos * e + são operadores. Anteriormente vimos uma definição simples para variáveis, numa definição um pouco mais aprofundada elas representam um espaço de memória alocado para armazenar determinado tipo de dado. Todas as variáveis devem ser declaradas, isso significa que você tem que dizer ao compilador as variáveis que você vai usar no seu código. Declaração de variáveis: Na declaração de variáveis duas coisas devem ser obrigatoriamente especificadas: tipo e nome. a) O nome serve de referência ao dado armazenado na memória. b) O tipo da variável determina a natureza do dado armazenado, se é uma variável do tipo numérica, lógica etc. Exemplo 4 Declaração de variáveis #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { double lucro; int i, j; char a, b, c; system("pause"); return EXIT_SUCCESS; }

18 15 Tipos de variáveis: char: Guarda um caracter; int: Guarda um número inteiro; float: Guarda um número real com certa precisão; double: Guarda um número real maior que do tipo float, mais preciso; void: Tipo vazio. bool: Guarda valores lógicos do tipo true ou false, verdadeiro ou falso. unsigned char: caracter sem sinal; long int: número inteiro,com domínio estendido; unsigned int: numero inteiro positivo; unsigned longint: numero inteiro positivo com domínio estendido. shortint: inteiro com domínio reduzido. unsignedshortint: inteiro positivo com domínio reduzido. Abaixo, temos uma tabela que demonstra o quanto de cada espaço é reservado da memória para cada tipo de variável; Tipo Número de bits Representatividade char 8 de -127 a 128 unsigned char 8 de 0 a 255 int 16 de a unsigned int 16 de 0 a long int 32 de a unsigned long int 32 de 0 a float 32 de 3,4E-38 a 3,4E+38 double 64 de 1,7E-308 a 1,7E+308 Há ainda um tipo de dado muito usado, que é o tipo string, o qual é usado para representar uma sequência de caracteres, como um nome. Para usar tal tipo de dado, faz-se necessária a inclusão da biblioteca <string>. Exemplo 5 Declaração de variáveis #include <cstdlib> #include <iostream> #include <string> Inclusão da biblioteca string using namespace std; int main(int argc, char *argv[]) { double lucro; int i, j; char a, b, c; string nome, mes; system("pause"); return EXIT_SUCCESS; } Variávies do tipo string.

19 16 Identificadores: São nomes de variáveis, funções e outros objetos definidos pelo usuário. No caso anterior, os identificadores são: lucro, i, j, a, b, c, nome e mes. Eles representam variáveis distintas, as variáveis do mesmo tipo são separadas por,, mas a cada fim de declaração, terminamos a linha com ;, tal simbolo representa o fim de uma linha de código. Regras: a) Identificadores podem ser compostos por letras, números ou sublinhados, como nome_1; b) Identificadores devem começar com uma letra ou sublinhado c) Identificadores não pode ser palavras reservadas da linguagem c/c++. Exercício É possível ter identificadores com os nomes abaixo em C++? 1) soma 2) 7peso 3) Soma 4) 5altura 5) peso_b 6) p2p 7) _2pessoa 8) pessoa_2 OBS.: A declaração de uma variável reserva um espaço na memória para armazenar um dado do tipo da variável e associa o nome da variável a este espaço de memória. Uma vez que as variáveis são declaradas, podemos armazenar valores nos respectivos espaços de memória e estes valores devem ter o mesmo tipo da variável, ou seja, não é possível armazenar um número real numa variável do tipo int (inteiro). Atribuíções: Há duas formas de atribuíções, uma em que primeiro se declara a variável e depois lhe atribui um valor e outra em que a atribuíção ocorre no momento da declaração: Exemplo 6 Declaração de variáveis e atribuíção de valores #include <cstdlib> #include <iostream> #include <string> using namespace std; int main(int argc, char *argv[]) { double valor; Declaração de variáveis. int i, j; string nome; } i = 500; j = 10; valor = 4.7 Atribuíção de valores. nome = fulano ; system("pause"); return EXIT_SUCCESS;

20 Exemplo 6 Declaração de variáveis e atribuíção de valores (2º Método) 17 #include <cstdlib> #include <iostream> #include <string> using namespace std; int main(int argc, char *argv[]) { double valor = 4.7; Declaração de variáveis e atribuíção de valores. int i = 500; int j = 10; string nome = fulano ; system("pause"); return EXIT_SUCCESS; } Agora que já sabemos manipular variáveis, vamos fazer um exemplo simples, no qual recebemos dois números fornecidos pelo usuário e mostramos a soma como resposta: Exemplo 7 Soma de dois valores #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { int a, b, soma; // Declaração de variáveis cout << Digite o primeiro valor << endl; cin >> a; // Recebendo o primeiro valor cout << Digite o segundo valor << endl; cin >> b; //Recebendo o segundo valor soma = a + b; //Expressão para soma cout << soma << endl; //Exibindo na tela o resultado } system("pause"); return EXIT_SUCCESS; COMENTÁRIOS: Para receber os valores do usuário, usamos o comando cin e para mostrá-los na tela usamos o cout, perceba que calcular a soma através da expressão não é o suficiente se quisermos ver o resultado, precisamos mostrá-lo na tela. Outra forma de deixar o resulta mais claro seria alterando o último cout dessa forma: cout << A soma eh << soma << endl;. O endl é um comando para pular linha, perceba que quando o código é executado o cursor já aparece na segunda linha.

21 18 Exercício Faça um algoritmo que receba dois valores a e b e forneça como resultado seus valores invertidos, ou seja, o valor de a tem que passar para b e o valor de b tem que passar para a. 2.6 Operadores Até agora, temos utilizado operadores nas nossas expressões, mas ainda não tivemos uma abordagem mais prática sobre o assunto. Embora conheçamos os tipos de operadores, não sabemos muito bem ainda como utilizá-los na linguagem C++, vamos então aprender um pouco de sintaxe. Operadores Aritméticos Operador Ação + Adição. - Subtração, menos unário. * Multiplicação / Divisão % Resto da divisão OBS.: A operações são feitas na precisão dos operandos. Exercício Escreva algoritmos para testar os resultdados das seguintes expressões: a) valorfinal = a*b + 3*c; b) valorfinal = (a + b)/a*4; c) valorfinal = a + b *4; d) valorfinal = a - 4*b/c; e) valorfinal = a%b; f) valorfinal = a%(b c*2); Dica: Lembre-se de usar o tipo adequado (inteiro, real, etc) para as variáveis! Incremento e decremento Algo interessante que podemos fazer com operadores aritméticos são os incrementos e decrementos, que consistem simplemente em aumentar e diminuir algo. Por exemplo, para dizer que uma variável tem o valor dela mesma adicionado de 1, poderíamos fazer isso de duas formas: 1ª Forma: x = x + 1; 2ª Forma: ++x; O mesmo serve para decrementação, de modo que temos a seguinte tabela: Operador Ação -- Decrementa -> Subtrai 1 ao operando ++ Incrementa -> Soma 1 ao operando

22 19 OBS.: Há uma diferença entre ++x e x++ quando usados em uma expressão. Atenção ao próximo exemplo: Exemplo 8 Usando Incrementos e decrementos #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { int a, b; int n = 4; int m = 4; a = ++n; b = m++; cout << Valor de a: << a << << Valor de b: << b << endl; } system("pause"); return EXIT_SUCCESS; Resultado: Valor de a: 5 Valor de b: 4 COMENTÁRIOS: Ao fazer ++n, primeiro ocorre o incremento e depois a atribuíção, ou seja, primeiro n é incrementado, depois seu valor é atribuído à variável a. Já em m++, ocorre primeiro a atribuíção e depois a incrementação, ou seja, primeiro o valor de m é atribuído à variável b e depois a variável m sofre incremento. Ou seja, como observamos no exemplo passado há uma precedência para os operadores, obeserve a imagem abaixo:

23 20 Regras: a) Operadores de mesmo nível de precedência são analisados da esquerda para direita. b) Pode-se usar parentêses para forçar uma (ou mais) operação a ter precedência maior. Exemplo 9 Usando Incrementos e decrementos #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { int valorfinal, b, c, d; b = 3; c = 4; d = 5; valorfinal = b + ++c*d; cout << Valor final: << valorfinal << endl; } system("pause"); return EXIT_SUCCESS; Resultado: Valor final: 28 COMENTÁRIOS: Analisando a expressão, temos b + ++c*d; sabemos que o operador ++ tem maior precedência, logo a variável será incrementada de 1 e passará a valer 5, depois, o operador de segunda maior precedência é o *, logo temos 5*5 = 25, então, por último temos a soma, a expressão se reduz à forma: valorfinal = = 28;

24 21 Operadores de atribuíção O operador de atribuíção é o mais simples, ele tem sido usado até agora sem nenhum problema. No entanto, há algumas peculiaridades que podem ajudar bastante na hora de escrever um código. A linguagem C++ também permite a utilização de operadores compostos. Por exemplo: 1ª Forma: i = i + 2; 2ª Forma: i += 2; Ambas as linhas produzem o mesmo resultado, só que a segunda é obtida por meio do operador +=. Sendo assim, temos: Operador Ação += Soma o operando do valor que estiver à direita. -= Subtrai o operando do valor que estiver à direita. *= Multiplica o operando do valor que estiver à direita. /= Divide o operando do valor que estiver à direita. %= Obtém o resto da divisão pelo valor que estiver à direita. Exemplo 10 Operadores de atribuíção composta #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { int v1, v2, v3, v4, v5; v1 = 4; v2 = v1; v3 = v2; v4 = v3; v5 = v4; } v1 += 3; v2 -= 2; v3 *= 3; v4 /= 3; v5 %= 3; cout << v1 << << v2 << << v3 << << v4 << << v5 << endl; system("pause"); return EXIT_SUCCESS; Resultado: COMENTÁRIOS: Na divisão de 4/3 o resultado é aproximadamente, no entanto a resposta foi 1. Isso acontece porque declaramos que as variáveis são do tipo inteiro, então como resposta, apenas a parte inteira aparece.

25 22 OBS.: A expressão: x *= y + 1 equivale à x = x*(y + 1) e não à x = x * y + 1. O mesmo pode ser ditpo à respeito dos outros operadores de atribuíção compostos, sempre o que está à direita será levado em conta. Operadores relacionais & lógicos Operadores relacionais: São usados como o próprio nome diz para comparar valores, o resultado dessa comparação é sempre 0 (falso) ou 1 (verdadeiro). Operador < Menor que > Maior que <= Menor ou igual que >= Maior ou igual que == Igual a!= Diferente de Comparação Operadores lógicos: São usados para combinar expressões boolenas, ou seja, expressões cujo resultado é verdadeiro ou falso. Operador Significado Operador binário E (AND) && Operador binário OU(OR)! Operador unário de NEGAÇÃO (NOT) Regras: a) Expressões conectadas por && ou são avaliadas da esquerda para direita, e a avaliação pára assim que a veracidade ou falsidade do resultado for conhecida. b) Quanto ao nível de precedência, têm um nível menor do que os operadores aritméticos. Por exemplo: 10 > é avaliado como 10 > (1 + 13). Observe a figura abaixo:

26 23 Os operadores lógicos e relacionais são usados geralmente para tomada de decisões, assunto dos próximos capítulos, no entanto, eles também podem ser usados para a atribuíção de valores, como no exemplo abaixo: Exemplo 11 Operadores lógicos e relacionais #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { int a, b; int c = 10; int d = c + 3; a = (c > 10) (d > c); b = (c < 10) && (d > c); } cout << Valor de a: << a << << Valor de b: << b << endl; system("pause"); return EXIT_SUCCESS; Resultado: Valor de a = 1 Valor de b = 0 COMENTÁRIOS: Analisando a expressão a = (c > 10) (d > c), temos a setença c é maior que 10 ou o valor da variável d (13) é maior do que o valor da variável c (10), como uma das afirmações resulta em verdadeira e estamos o operador lógico ou, temos como resposta final 1 (verdadeiro). Já no segundo caso, devemos interpretar a expressão da seguinte maneira o valor de c é menor do que 10 e o valor de d é maior do que o valor de c? O que resulta em falso, já que o valor de c é 10. Lembre-se que o resultado de expressões lógicas são sempre 0 ou 1, falso ou verdadeiro. Exercício Se a = 20, b = a + 2. Faça um algoritmo para testar os seguintes valores de c: a) c = (a > 1) && (b < a); b) c = (a == 3) (b > a); c) c = (a < b) ( b < 20) d) c = (a > 2) && (a < 30) e) c = (b < 12) (a > 20) f) c = (a > b) && (b > 20)

27 Conversão de Tipo Até agora temos trabalhado, nos nossos exemplos, sempre com variáveis do mesmo tipo. No entanto, na prática, em um algoritmo se trabalha com variáveis de mais de um tipo que, por vezes, se relacionam em expressões. Trantando-se de expressões aritméticas, por exemplo, existem conversões automáticas de valores na avaliação de uma expressão. Com exemplo, tivemos a expressão 4/3 cujo resultado aproximado é , mas a resposta era dada por 1, uma vez que a variável que recebia o valor da divisão era do tipo inteira. Mas, se tivermos uma variável do tipo double recebendo o resultado da expressão 4/2.5, temos uma constante inteira sendo dividida por uma constante do tipo double e o resultado é 1.6. O que acontece com a constante inteira, já que estamos trabalhando com dois tipos diferentes? O que ocorre é uma conversão implícita, ou seja, a constante 4 do tipo int é promovida ao tipo double antes da operação ser realizada e a operação é feita na precisão do tipo mais representativo. Analisando o gráfico a seguir, podemos visualizar o nível de representatividade dos diferentes tipos: Na figura acima temos uma expressão que combina variáveis de diferentes tipos, à medida que as operações acontecem, temos os tipos dos resultados, o quais vão ser recombinados em uma expressão diferente, orginando, por sua vez, um tipo cuja o nível de representatividade é sempre maior. OBS.: Não podemos usas as variáveis sem antes atribuír um valor a elas, esse é um exemplo puramente ilustrativo.

28 25 PROBLEMAS CAPÍTULO 2 1 Escreva um programa que converta uma temperatura dada em graus Fahrenheite para graus Celsius. 2 Determine o perímetro de um poligno regular inscrito numa cinrcunferência, dados o número de lados do poligno e o raio da circunferência. 3 Uma loja vende seus produtos no sistema entrada mais duas prestações, sendo a entrada maior do que ou igual às duas prestações; estas devem ser iguais, inteiras e as maiores possíveis. Por exemplo, se o valor da mercadoria for R$ 270,00, a entrada e as duas prestações são iguais a R$ 90,00; se o valor da mercadoria for R$ 302,75, a entrada é de R$ 102,75 e as duas prestações são a iguais a R$ 100,00. Escreva um programa que receba o valor da mercadoria e forneça o valor da entrada e das duas prestações, de acordo com as regras acima. Observe que uma justificativa para a adoção desta regra é que ela facilita a confecção e o consequente pagamento dos boletos das duas prestações. Dica: As parcelas são iguais e são do tipo inteiro, determine primeiro o valor das parcelas, como o pagamento consiste em entrada + 2 parcelas, fica fácil descobrir o valor da entrada, o qual não é do tipo inteiro. 4 Um intervalo de tempo pode ser dado em dias, horas, minutos, segundos ou sequências "decrescentes" destas unidades (em dias e horas; em horas e minutos; em horas, minutos e segundos), de acordo com o interesse de quem o está manipulando. Escreva um programa que converta um intervalo de tempo dado em segundos para horas, minutos e segundos. Por exemplo, se o tempo dado for segundos, o programa deve fornecer 1 h 4 min 10 s. 5 Escreva um programa que converta um intervalo de tempo dado em minutos para horas, minutos e segundos. Por exemplo, se o tempo dado for min, o programa deve fornecer 2 h 25 min 52.2 s (vale lembrar que o ponto é o separador da parte inteira). 6 Escreva um problema que receba as três notas do aluno e mostra a média ponderada do mesmo, sabendo que os pesos de cada unidade são 4, 5 e 6. Faça o programa de modo que seja possível cálcular a nota de no mínimo três alunos. Como você faria se fossem 100 alunos? Para resolver tal problema precisamos saber um pouco sobre laços de repetição, assunto dos próximos capítulos.

29 26 Capítulo 3 - Estruturas de controladores de fluxo Estruturas de desvios condicionais: a) O comando if e o comando else: Em algumas situações, alguns comandos só devem ser executados se alguma condição for satisfeita. É muito fácil encontrar situações em que a execução de uma ou mais instruções deve estar condicionada ao fato de que uma condição seja satisfeita. Por exemplo, veremos algoritmos para ordenar uma relação de números que necessitam colocar em ordem crescente os conteúdos de duas variáveis. É óbvio que para ordenar em ordem crescente os conteúdos de duas variáveis x e y só é necessário se fazer alguma coisa se o conteúdo de x for maior que o conteúdo de y, ou seja, x > y. Há situações também em que há necessidade de que se faça uma escolha entre duas ou mais sequências de instruções qual a sequência deve ser executada. Por exemplo, se pretendemos verificar se um número n é par podemos determinar o resto da divisão de n por 2. Se estre resto for zero, então o número é par. Se este resto for 1, o número é par. Vale lembrar que os algoritmos que o viver exige que executemos diuturnamente são pontuados de escolhas e decisões: se não chover, iremos à praia; se chover, iremos ao shopping; se estiver fazendo frio, vista um casaco. A verificação de que uma condição é satisfeita e, a partir daí, uma determinada sequência de comandos deve ser executada é chamada de estrutura de seleção, estrutura de decisão ou comando de seleção. O comando if é uma estrutura de decisão que decide se uma sequência de comandos será ou não executada. Sua sintaxe é If (Expressão) { sequência de comandos } Se a Expressão for verdadeira, a sequência de comandos será executada. Caso contrário todo o conteúdo entre {} será ignorado. Vejamos um exemplo em que dois números distintos são impressos em ordem decrescente:

30 27 Que, com o uso do comando else poderia ser escrito da seguinte maneira: Como podemos notar a sequência de comandos após o else é executada no caso de a Expressão ser falsa.

31 28 b) O comando switch: Muitos programas são desenvolvidos de modo que eles podem realizar várias tarefas, de forma independente. Por exemplo, um programa que gerencie um caixa eletrônico de um banco deve oferecer ao usuário algumas opções em relação à ação que ele pretende realizar na sua conta como a emissão do saldo atual, a emissão de um extrato, a realização de um saque e a realização de um depósito. É comum que um programa que permita a realização de várias tarefas inicie apresentando ao usuário um menu de opções com a indicação das diversas tarefas que o programa pode executar e a permissão de que o usuário escola a tarefa pretendida. Como, em geral, são várias as opções disponíveis (cada uma delas com uma sequência específica de comandos) e só uma das opções será a escolhida, é necessária uma estrutura que decida entre várias sequências de comandos qual vai ser executada ou quais vão ser executadas. O comando switch tem este objetivo e deve ser escrito com a seguinte sintaxe: switch (Expressão) { case constante1: sequência de instruções1 case constante2: sequência de instruções2... case constante n: sequência de instruções n default: sequência de comando x } Nesse código, a Expressão argumento do comando deve resultar num valor do tipo int ou num valor do tipo char e, opcionalmente, a última instrução de cada uma das sequências de instruções é o comando break. A Expressão é avaliada e as sequências de instruções situadas entre o valor da expressão apresentado nos cases e um comando break ou o delimitador do comando são executadas. Se o valor da Expressão for diferente de todas as opções dadas pelas constantes associadas aos cases, a sequência de instruções vinculada ao default será executada. Observe o exemplo de uma minicalculadora:

32 29 Observações: A sequência de instruções vinculada a uma opção case pode ser vazia, caso em que, evidentemente, nada é executado; Se apenas uma sequência de comandos deve ser executada, deve-se encerrá-la com um break; A opção default é opcional: se ela não aparece no comando e o valor da Expressão for diferente de todos os valores disponíveis, nada é executado e a instrução logo após o comando switch passa a ser executada.

33 30 Exercícios 1. Escreva um programa que realize arredondamentos de números utilizando a regra geral da matemática: se a parte fracionária for maior do que ou igual a 0,5, o número é arredondado para o inteiro imediatamente superior; caso contrário, é arredondado para o inteiro imediatamente anterior. 2. Escreva um programa para determinar o maior entre três números dados. 3. Escreva um programa para classificar um triângulo de lados de comprimentos dados em escaleno, isósceles ou equilátero. 4. Escreva um programa para verificar se um triângulo de lados de comprimentos dados é retângulo, exibindo, nos casos afirmativos, sua hipotenusa e seus catetos Estruturas Iterativas: a) O comando for ( ; ; ): O comando for é uma estrutura de repetição que repete a execução de uma dada sequência de comandos um número de vezes que pode ser determinado pelo próprio programa, devendo ser escrito com a seguinte sintaxe: for (inicializações; condições de manutenção da repetição; incrementos) { sequência de comandos } Como os nomes indicam, em inicializações, são atribuídos valores iniciais a variáveis; em condições de manutenção da repetição, estabelecem-se, através de uma expressão, as condições nas quais a execução da sequência de comandos será repetida; em incrementos, incrementam-se variáveis. Quando um comando for é executado, a sequência de comandos da área das inicializações é executada. Em seguida, a expressão que fixa as condições de manutenção da repetição é avaliada. Se o valor desta expressão não for nulo, a sequência de comandos é executada, sendo em seguida executada a sequência de comandos da área dos incrementos. Novamente a expressão das condições de manutenção da repetição é avaliada e tudo se repete até que o seu valor seja igual a zero (falsa).

34 31 b) O comando while Estrutura de repetição alternativa. while (Expressão) { sequência de comandos incrementos } c) O comando do while: Estrutura de repetição alternativa. do { sequência de comandos } while (Expressão)

35 32 A diferença entre essas três estruturas de repetição na ordem de execução do programa. Em uma a Expressão é avaliada para que então seja procedida a sequência de comandos; em outra, o contrário. A conveniência e cada circunstância fara o programador optar por uma delas. Exercícios 1. Escreva um programa para calcular a soma dos n primeiros números de: a) Uma progressão aritmética de razão r dada; b) Uma progressão geométrica de razão q dada. 2. Escreva um programa para determinar o número de algarismos de um número inteiro positivo dado. 3. Escreva um programa que determine o n-ésimo termo da sequência de Fibonacci. 3.3 Vetores Um vetor é um conjunto de variáveis de um mesmo tipo de dado as quais são acessadas e referenciadas através da aposição de índices ao identificador do vetor. Um vetor é declarado da seguinte forma: int Vetor [10]; Vetor [2] = 4; // vetor com 10 elementos do tipo inteiro. // atribuição de valor a um elemento do vetor por meio da indexação. OBS.: O índice do primeiro elemento de um vetor é sempre 0 (zero).

36 33 Pense num ventor como uma gaveta contendo várias pastas, cada pasta é um elemento que pode receber um determinado valor, é claro que cada gaveta só pode conter pastas contendo arquivos do mesmo tipo, ou seja, se você declarar um vetor do tipo inteiro, só poderá amazenar valores do mesmo tipo. Abaixo, um exemplo que preenche um vetor com números inteiros, checa quantos dos números são maiores ou iguais a três e quantos são menores. //Declaração de vetores do tipo inteiro de 5 elementos int vetor[5]; //Variáveis do tipo inteiro int qtdmaior = 0; int qtdmenor = 0; //Passagem de valores Preenchendo os valores for (int i = 0; i < 5; i++) { } cout << "Digite o elemento numero: " << i << endl; cin >> vetor[i]; //Checagem for (int i = 0; i < 5; i++) { } if (vetor[i] >= 3) qtdmaior++; else qtdmenor++; //Resultado cout << "Existem " << qtdmaior << " numeros maiores ou igual a 3 e " << qtdmenor << " menores!" << endl; COMENTÁRIOS: Cada elemento do vetor está associado a um índice, no nosso caso, temos um vetor de 5 elementos, o primeiro elemento tem índice 0. Na checagem usamos um loop para percorrer todos os elementos do vetor e verificar, elemento a elemento, quais são maiores ou igual a três e quais são menores, depois mostramos apenas o resultado de quantos são esses números. Você saberia mostrar quais são esses números também? (Dica: o mesmo procedimento de preenchimento pode ser usado, mas nesse caso use o cout para mostrar cada elemento).

37 Exercícios 1. Escreva um programa que exiba as componentes de um vetor na ordem inversa daquela em que foram armazenadas. 2. Escreva um programa que exiba o maior elemento de um vetor. 3. Escreva um programa que forneça as componentes distintas de um vetor dado. Por exemplo, se o vetor dado for v = {3, 2, 1, 3, 4, 1, 5, 5, 2}, deve-se obter {3, 2, 1, 4, 5}. 4. Escreva um programa que receba um vetor e o decomponha em dois outros vetores, um contendo as componentes de ordem ímpar e o outro contendo as componentes de ordem par. 34

38 35 PROBLEMAS CAPÍTULO 3 1 Escreva um programa que calcule a média de uma quantidade n de alunos determinada pelo usuário. 2 Escreva um programa que receba uma quantidade n de números determinada pelo usuários e diga quantos são os pares e os ímpares dos números recebidos. 3 Escreva um programa para determinar a idade da pessoa, em anos, meses e dias, dadas a data (dia, mês e ano) do seu nascimento e a data (dia, mês e ano) atual. 4 Um número inteiro é dito perfeito se o dobro dele é igual à soma de todos os seus divisores. Por exemplo, como os divisores de 6 são 1, 2, 3 e 6 e = 12, 6 é perfeito. A matemática ainda não sabe se a quantidade de números perfeitos é ou não finita. Escreva um programa que liste todos os números perfeitos menores que um inteiro n dado. 5 A sequência de Fibbonaci é a sequência (1, 1, 2, 3, 5, 8, 13,...) definida por a n = 1, se n = 1 ou n = 2 +, se n > 2 Escreva um programa que determine o n-ésimo termo desta sequência, n dado. 6 Dada uma seqüência de n números reais, determinar os números que compõem a seqüência e o número de vezes que cada um deles ocorre na mesma. (Dica: Use vetores) Exemplo: n = 8 Seqüência: -1.7, 3.0, 0.0, 1.5, 0.0, -1.7, 2.3, -1,7 Saída: -1.7 ocorre 3 vezes 3.0 ocorre 1 vez 0.0 ocorre 2 vezes 1.5 ocorre 1 vez 2.3 ocorre 1 vez

39 36 REFERÊNCIAS: Aprenda a Programar Programando, EVARISTO, Jaime. Curso Básico de Lógica de Programação, MORAES, Paulo Sérgio de. Slides do professor Dr. Daniel Aloise UFRN/DCA.

Na disciplina de Cálculo Numérico, vamos trabalhar com a linguagem C++ e o compilador que vamos usar é o Dev C++.

Na disciplina de Cálculo Numérico, vamos trabalhar com a linguagem C++ e o compilador que vamos usar é o Dev C++. Data: 14/8 Página 1 de 9 Primeiros passos Introdução Na disciplina de Cálculo Numérico, vamos trabalhar com a linguagem C++ e o compilador que vamos usar é o Dev C++. No tutorial anterior, mostramos como

Leia mais

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá.

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá. INTRODUÇÃO A lógica de programação é extremamente necessária para as pessoas que queiram trabalhar na área de programação, seja em qualquer linguagem de programação, como por exemplo: Pascal, Visual Basic,

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

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br Introdução O computador como ferramenta indispensável: Faz parte das nossas vidas; Por si só não faz nada de útil; Grande capacidade de resolução

Leia mais

Resumo da Matéria de Linguagem de Programação. Linguagem C

Resumo da Matéria de Linguagem de Programação. Linguagem C Resumo da Matéria de Linguagem de Programação Linguagem C Vitor H. Migoto de Gouvêa 2011 Sumário Como instalar um programa para executar o C...3 Sintaxe inicial da Linguagem de Programação C...4 Variáveis

Leia mais

Dadas a base e a altura de um triangulo, determinar sua área.

Dadas a base e a altura de um triangulo, determinar sua área. Disciplina Lógica de Programação Visual Ana Rita Dutra dos Santos Especialista em Novas Tecnologias aplicadas a Educação Mestranda em Informática aplicada a Educação ana.santos@qi.edu.br Conceitos Preliminares

Leia mais

Edwar Saliba Júnior. Dicas, Comandos e Exemplos Comparativos entre Linguagem Algorítmica e Linguagem C / C++

Edwar Saliba Júnior. Dicas, Comandos e Exemplos Comparativos entre Linguagem Algorítmica e Linguagem C / C++ Edwar Saliba Júnior Dicas, Comandos e Exemplos Comparativos entre Linguagem Algorítmica e Linguagem C / C++ Belo Horizonte 2009 Sumário 1 Nota:... 2 2 Comandos e Palavras Reservadas:... 3 3 Dicas... 4

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

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

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

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES 3.1 - IDENTIFICADORES Os objetos que usamos no nosso algoritmo são uma representação simbólica de um valor de dado. Assim, quando executamos a seguinte instrução:

Leia mais

2. OPERADORES... 6 3. ALGORITMOS, FLUXOGRAMAS E PROGRAMAS... 8 4. FUNÇÕES... 10

2. OPERADORES... 6 3. ALGORITMOS, FLUXOGRAMAS E PROGRAMAS... 8 4. FUNÇÕES... 10 1. TIPOS DE DADOS... 3 1.1 DEFINIÇÃO DE DADOS... 3 1.2 - DEFINIÇÃO DE VARIÁVEIS... 3 1.3 - VARIÁVEIS EM C... 3 1.3.1. NOME DAS VARIÁVEIS... 3 1.3.2 - TIPOS BÁSICOS... 3 1.3.3 DECLARAÇÃO DE VARIÁVEIS...

Leia mais

2. Representação Numérica

2. Representação Numérica 2. Representação Numérica 2.1 Introdução A fim se realizarmos de maneira prática qualquer operação com números, nós precisamos representa-los em uma determinada base numérica. O que isso significa? Vamos

Leia mais

Algoritmos em Javascript

Algoritmos em Javascript Algoritmos em Javascript Sumário Algoritmos 1 O que é um programa? 1 Entrada e Saída de Dados 3 Programando 4 O que é necessário para programar 4 em JavaScript? Variáveis 5 Tipos de Variáveis 6 Arrays

Leia mais

Organização de programas em Python. Vanessa Braganholo vanessa@ic.uff.br

Organização de programas em Python. Vanessa Braganholo vanessa@ic.uff.br Organização de programas em Python Vanessa Braganholo vanessa@ic.uff.br Vamos programar em Python! Mas... } Como um programa é organizado? } Quais são os tipos de dados disponíveis? } Como variáveis podem

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

Tutorial de Matlab Francesco Franco

Tutorial de Matlab Francesco Franco Tutorial de Matlab Francesco Franco Matlab é um pacote de software que facilita a inserção de matrizes e vetores, além de facilitar a manipulação deles. A interface segue uma linguagem que é projetada

Leia mais

Resolução de problemas e desenvolvimento de algoritmos

Resolução de problemas e desenvolvimento de algoritmos SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Resolução de problemas e desenvolvimento de algoritmos Prof. Vanderlei Bonato Prof. Cláudio Fabiano Motta Toledo Sumário Análise e solução de

Leia mais

Aula 4 Pseudocódigo Tipos de Dados, Expressões e Variáveis

Aula 4 Pseudocódigo Tipos de Dados, Expressões e Variáveis 1. TIPOS DE DADOS Todo o trabalho realizado por um computador é baseado na manipulação das informações contidas em sua memória. Estas informações podem ser classificadas em dois tipos: As instruções, que

Leia mais

INF 1005 Programação I

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

Leia mais

PROGRAMAÇÃO ESTRUTURADA. CC 2º Período

PROGRAMAÇÃO ESTRUTURADA. CC 2º Período PROGRAMAÇÃO ESTRUTURADA CC 2º Período PROGRAMAÇÃO ESTRUTURADA Aula 06: Ponteiros Declarando e utilizando ponteiros Ponteiros e vetores Inicializando ponteiros Ponteiros para Ponteiros Cuidados a serem

Leia mais

Sumário. INF01040 Introdução à Programação. Elaboração de um Programa. Regras para construção de um algoritmo

Sumário. INF01040 Introdução à Programação. Elaboração de um Programa. Regras para construção de um algoritmo INF01040 Introdução à Programação Introdução à Lógica de Programação s Seqüenciais Sumário Elaboração de um programa/algoritmo Formas de representação de um algoritmo Elementos manipulados em um programa/algoritmo

Leia mais

Lição 1 - Criação de campos calculados em consultas

Lição 1 - Criação de campos calculados em consultas 1 de 5 21-08-2011 22:15 Lição 1 - Criação de campos calculados em consultas Adição de Colunas com Valores Calculados: Vamos, inicialmente, relembrar, rapidamente alguns conceitos básicos sobre Consultas

Leia mais

Algoritmos com VisuAlg

Algoritmos com VisuAlg Algoritmos com VisuAlg Prof Gerson Volney Lagemann Depto Eng de Produção e Sistemas UDESC - CCT Algoritmos com VisuAlg Introdução A linguagem VisuAlg é simples, seu objetivo é disponibilizar um ambiente

Leia mais

Curso de Programação Computadores

Curso de Programação Computadores 3 O Primeiro Programa em C Unesp Campus de Guaratinguetá Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro 3 O Primeiro Programa em C 3.1 - Introdução Depois dos conceitos

Leia mais

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

Introdução à Lógica de Programação Introdução à Lógica de Programação Sistemas Numéricos As informações inseridas em um computador são traduzidos em dados, ou seja, em sinais que podem ser manipulados pelo computador. O computador trabalha

Leia mais

OPERADORES E ESTRUTURAS DE CONTROLE

OPERADORES E ESTRUTURAS DE CONTROLE OPERADORES E ESTRUTURAS DE CONTROLE 3.1 Operadores Os operadores indicam o tipo de operação matemática que será executada gerando novos valores a partir de um ou mais operadores. São muito utilizados em

Leia mais

ESTRUTURA DE UM PROGRAMA EM C++ Estrutura de um Programa em C++

ESTRUTURA DE UM PROGRAMA EM C++ Estrutura de um Programa em C++ ESTRUTURA DE UM PROGRAMA EM C++ Estrutura de um Programa em C++ #include { Este trecho é reservado para o corpo da função, com a declaração de suas variáveis locais, seus comandos e funções

Leia mais

Aluísio Eustáquio da Silva

Aluísio Eustáquio da Silva 1 Aluísio Eustáquio da Silva SciLab Programável Material didático usado em aulas de Programação de Computadores, Algoritmos e Lógica de Programação Betim Maio de 2012 2 PROGRAMAÇÃO O SciLab permite que

Leia mais

Apostila de Fundamentos de Programação I. Prof.: André Luiz Montevecchi

Apostila de Fundamentos de Programação I. Prof.: André Luiz Montevecchi Apostila de Fundamentos de Programação I Prof: André Luiz Montevecchi Introdução O mundo atual é dependente da tecnologia O uso intenso de diversos aparatos tecnológicos é parte integrante do nosso dia-a-dia

Leia mais

Exercícios Teóricos Resolvidos

Exercícios Teóricos Resolvidos Universidade Federal de Minas Gerais Instituto de Ciências Exatas Departamento de Matemática Exercícios Teóricos Resolvidos O propósito deste texto é tentar mostrar aos alunos várias maneiras de raciocinar

Leia mais

Prof. Esp. Adriano Carvalho

Prof. Esp. Adriano Carvalho Prof. Esp. Adriano Carvalho O que é um Programa? Um arquivo contendo uma sequência de comandos em uma linguagem de programação especifica Esses comandosrespeitam regras de como serem escritos e quais

Leia mais

Linguagem e Técnicas de Programação I Operadores, expressões e funções. Prof. MSc. Hugo Souza Material desenvolvido por: Profa.

Linguagem e Técnicas de Programação I Operadores, expressões e funções. Prof. MSc. Hugo Souza Material desenvolvido por: Profa. Linguagem e Técnicas de Programação I Operadores, expressões e funções Prof. MSc. Hugo Souza Material desenvolvido por: Profa. Ameliara Freire Operadores básicos Toda linguagem de programação, existem

Leia mais

ARRAYS. Um array é um OBJETO que referencia (aponta) mais de um objeto ou armazena mais de um dado primitivo.

ARRAYS. Um array é um OBJETO que referencia (aponta) mais de um objeto ou armazena mais de um dado primitivo. Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 8 ARRAYS Introdução Até agora, utilizamos variáveis individuais. Significa que uma variável objeto

Leia mais

PROGRAMAÇÃO ESTRUTURADA. CC 2º Período

PROGRAMAÇÃO ESTRUTURADA. CC 2º Período PROGRAMAÇÃO ESTRUTURADA CC 2º Período PROGRAMAÇÃO ESTRUTURADA Aula 07: Funções O comando return Protótipo de funções O tipo void Arquivos-cabeçalho Escopo de variáveis Passagem de parâmetros por valor

Leia mais

Aula 01. - Bibliografia - Definições - Operadores - Criação de um algoritmo - Exercícios. Algoritmo e Programação. Prof. Fábio Nelson.

Aula 01. - Bibliografia - Definições - Operadores - Criação de um algoritmo - Exercícios. Algoritmo e Programação. Prof. Fábio Nelson. - Bibliografia - Definições - Operadores - Criação de um algoritmo - Exercícios Aula 01 Slide 1 BIBLIOGRAFIA SCHILDT H. C Completo e Total, Makron Books. SP, 1997. Curso de linguagem C da UFMG. ZIVIANI,

Leia mais

Algoritmos e Programação Conceitos e Estruturas básicas (Variáveis, constantes, tipos de dados)

Algoritmos e Programação Conceitos e Estruturas básicas (Variáveis, constantes, tipos de dados) Algoritmos e Programação Conceitos e Estruturas básicas (Variáveis, constantes, tipos de dados) Os algoritmos são descritos em uma linguagem chamada pseudocódigo. Este nome é uma alusão à posterior implementação

Leia mais

José Romildo Malaquias 2011-1

José Romildo Malaquias 2011-1 Programação de Computadores I Aula 08 Programação: Estruturas de Repetição José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/58 Motivação Como imprimir os três

Leia mais

AULA 2: INTRODUÇÃO A LINGUAGEM DE C. Curso: Ciência da Computação Profª.: Luciana Balieiro Cosme

AULA 2: INTRODUÇÃO A LINGUAGEM DE C. Curso: Ciência da Computação Profª.: Luciana Balieiro Cosme AULA 2: INTRODUÇÃO A LINGUAGEM DE C Curso: Ciência da Computação Profª.: Luciana Balieiro Cosme Agenda Introdução a linguagem C Compiladores Variáveis IDEs Exemplos Exercícios Introdução A Linguagem C

Leia mais

Curso de Linguagem C

Curso de Linguagem C Curso de Linguagem C 1 Aula 1 - INTRODUÇÃO...4 AULA 2 - Primeiros Passos...5 O C é "Case Sensitive"...5 Dois Primeiros Programas...6 Introdução às Funções...7 Introdução Básica às Entradas e Saídas...

Leia mais

Programação WEB I Estruturas de controle e repetição

Programação WEB I Estruturas de controle e repetição Programação WEB I Estruturas de controle e repetição Operadores de Incremento Operadores de incremento servem como expressões de atalho para realizar incrementos em variáveis Operadores de Incremento Vamos

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

ESTRUTURA CONDICIONAL

ESTRUTURA CONDICIONAL AULA 6 ESTRUTURA CONDICIONAL 130 Tem como objetivo executar um conjunto de comandos caso uma condição lógica seja atendida. Quando a resposta lógica for falsa, nada será executado. Sintaxe Se CONDIÇÃO

Leia mais

CURSO BÁSICO DE PROGRAMAÇÃO AULA 9. Introdução a linguagem C Estruturas de decisão

CURSO BÁSICO DE PROGRAMAÇÃO AULA 9. Introdução a linguagem C Estruturas de decisão CURSO BÁSICO DE PROGRAMAÇÃO AULA 9 Introdução a linguagem C Estruturas de decisão Introdução à Linguagem C Linguagem compilada. Desenvolvida sobre os paradigmas de programação procedural. Uma das linguagens

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

Programação Básica em Arduino Aula 2

Programação Básica em Arduino Aula 2 Programação Básica em Arduino Aula 2 Execução: Laboratório de Automação e Robótica Móvel Variáveis são lugares (posições) na memória principal que servem para armazenar dados. As variáveis são acessadas

Leia mais

Aula 1. // exemplo1.cpp /* Incluímos a biblioteca C++ padrão de entrada e saída */ #include <iostream>

Aula 1. // exemplo1.cpp /* Incluímos a biblioteca C++ padrão de entrada e saída */ #include <iostream> Aula 1 C é uma linguagem de programação estruturada desenvolvida por Dennis Ritchie nos laboratórios Bell entre 1969 e 1972; Algumas características: É case-sensitive, ou seja, o compilador difere letras

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

Soluções Nível 1 5 a e 6 a séries (6º e 7º anos) do Ensino Fundamental

Soluções Nível 1 5 a e 6 a séries (6º e 7º anos) do Ensino Fundamental a e 6 a séries (6º e 7º anos) do Ensino Fundamental 1. (alternativa C) Os números 0,01 e 0,119 são menores que 0,12. Por outro lado, 0,1 e 0,7 são maiores que 0,. Finalmente, 0,29 é maior que 0,12 e menor

Leia mais

ALGORITMOS PARTE 01. Fabricio de Sousa Pinto

ALGORITMOS PARTE 01. Fabricio de Sousa Pinto ALGORITMOS PARTE 01 Fabricio de Sousa Pinto Algoritmos: Definição 2 É uma sequência de instruções finita e ordenada de forma lógica para a resolução de uma determinada tarefa ou problema. Algoritmos 3

Leia mais

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

Barra de ferramentas padrão. Barra de formatação. Barra de desenho Painel de Tarefas

Barra de ferramentas padrão. Barra de formatação. Barra de desenho Painel de Tarefas Microsoft Power Point 2003 No Microsoft PowerPoint 2003, você cria sua apresentação usando apenas um arquivo, ele contém tudo o que você precisa uma estrutura para sua apresentação, os slides, o material

Leia mais

e à Linguagem de Programação Python

e à Linguagem de Programação Python Introdução a Algoritmos, Computação Algébrica e à Linguagem de Programação Python Curso de Números Inteiros e Criptografia Prof. Luis Menasché Schechter Departamento de Ciência da Computação UFRJ Agosto

Leia mais

Curso: Ciência da Computação Disciplina: Construção de Compiladores Período: 2010-1 Prof. Dr. Raimundo Moura

Curso: Ciência da Computação Disciplina: Construção de Compiladores Período: 2010-1 Prof. Dr. Raimundo Moura UFPI CCN DIE Curso: Ciência da Computação Disciplina: Construção de Compiladores Período: 2010-1 Prof. Dr. Raimundo Moura O projeto Desenvolver um compilador de um subconjunto básico da linguagem PORTUGOL.

Leia mais

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

Introdução à Lógica de Programação Sistemas Operacionais e Introdução à Programação Introdução à Lógica de Programação 1 Estruturas de dados Representação computacional das informações do problema ser resolvido Informações podem ser de

Leia mais

Estrutura de Dados Básica

Estrutura de Dados Básica Estrutura de Dados Básica Professor: Osvaldo Kotaro Takai. Aula 7: Recursividade O objetivo desta aula é apresentar o conceito de recursão para solução de problemas. A recursão é uma técnica de programação

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

13 Números Reais - Tipo float

13 Números Reais - Tipo float 13 Números Reais - Tipo float Ronaldo F. Hashimoto e Carlos H. Morimoto Até omomentonoslimitamosaouso do tipo inteiro para variáveis e expressões aritméticas. Vamos introduzir agora o tipo real. Ao final

Leia mais

CURSO BÁSICO DE PROGRAMAÇÃO AULA 7

CURSO BÁSICO DE PROGRAMAÇÃO AULA 7 CURSO BÁSICO DE PROGRAMAÇÃO AULA 7 Revisão para prova: Comandos de Entrada e Saída Estruturas de Decisão (Se, caso (escolha)) Laços de Repetição (Enquanto, Repita, Para) Relembrando Trabalho 1 Prazo de

Leia mais

2 echo "PHP e outros.";

2 echo PHP e outros.; PHP (Hypertext Preprocessor) Antes de qualquer coisa, precisamos entender o que é o PHP: O PHP(Hypertext Preprocessor) é uma linguagem interpretada gratuita, usada originalmente apenas para o desenvolvimento

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Aritmética Computacional Slide 1 Sumário Unidade Lógica e Aritmética Representação de Números Inteiros Aritmética de Números Inteiros Representação de Números

Leia mais

2. ENTRADA DE DADOS 2.1. TEXTOS

2. ENTRADA DE DADOS 2.1. TEXTOS 2. ENTRADA DE DADOS Os dados digitados em uma célula são divididos em duas categorias principais: constantes ou fórmulas. Um valor constante é um dado digitado diretamente na célula e que não é alterado.

Leia mais

Algoritmos Computacionais ( Programas )

Algoritmos Computacionais ( Programas ) Algoritmos Computacionais ( Programas ) A partir deste tópico, consideramos a utilização do universo Computacional na solução de problemas. Para tanto devemos lembrar que a transposição de problemas do

Leia mais

3. Tipos de Dados, Constantes e Variáveis.

3. Tipos de Dados, Constantes e Variáveis. 3. Tipos de Dados, Constantes e Variáveis. O computador realiza a sua tarefa trabalhando as informações contidas em sua memória, essas podem ser classificadas em dois tipos básicos: as instruções e os

Leia mais

Programação de Computadores I Pseudocódigo PROFESSORA CINTIA CAETANO

Programação de Computadores I Pseudocódigo PROFESSORA CINTIA CAETANO Programação de Computadores I Pseudocódigo PROFESSORA CINTIA CAETANO Pseudocódigo Pseudocódigo é uma forma genérica de escrever um algoritmo, utilizando uma linguagem simples (nativa a quem o escreve,

Leia mais

O Excel é um programa de computador desenvolvido para gerenciar dados na forma de planilhas.

O Excel é um programa de computador desenvolvido para gerenciar dados na forma de planilhas. O que é o Excel? O Excel é um programa de computador desenvolvido para gerenciar dados na forma de planilhas. Ele possibilita ao usuário desenvolver planilhas que efetuem cálculos, dos mais simples aos

Leia mais

3 Sistemas de Numeração:

3 Sistemas de Numeração: 3 Sistemas de Numeração: Os computadores eletrônicos têm como base para seu funcionamento a utilização de eletricidade. Diferente de outras máquinas que a presença ou ausência de eletricidade apenas significam

Leia mais

Introdução a Java. Hélder Nunes

Introdução a Java. Hélder Nunes Introdução a Java Hélder Nunes 2 Exercício de Fixação Os 4 elementos básicos da OO são os objetos, as classes, os atributos e os métodos. A orientação a objetos consiste em considerar os sistemas computacionais

Leia mais

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES Prof. Dr. Daniel Caetano 2012-1 Objetivos Apresentar o funcionamento do computador Apresentar a função da memória e dos dispositivos

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

Introdução a Algoritmos Parte 04

Introdução a Algoritmos Parte 04 Universidade Federal do Vale do São Francisco Curso de Engenharia de Computação Introdução a Algoritmos Parte 04 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti

Leia mais

Introdução aos cálculos de datas

Introdução aos cálculos de datas Page 1 of 7 Windows SharePoint Services Introdução aos cálculos de datas Aplica-se a: Microsoft Office SharePoint Server 2007 Ocultar tudo Você pode usar fórmulas e funções em listas ou bibliotecas para

Leia mais

3. No painel da direita, dê um clique com o botão direito do mouse em qualquer espaço livre (área em branco).

3. No painel da direita, dê um clique com o botão direito do mouse em qualquer espaço livre (área em branco). Permissões de compartilhamento e NTFS - Parte 2 Criando e compartilhando uma pasta - Prática Autor: Júlio Battisti - Site: www.juliobattisti.com.br Neste tópico vamos criar e compartilhar uma pasta chamada

Leia mais

Cálculo Numérico Aula 1: Computação numérica. Tipos de Erros. Aritmética de ponto flutuante

Cálculo Numérico Aula 1: Computação numérica. Tipos de Erros. Aritmética de ponto flutuante Cálculo Numérico Aula : Computação numérica. Tipos de Erros. Aritmética de ponto flutuante Computação Numérica - O que é Cálculo Numérico? Cálculo numérico é uma metodologia para resolver problemas matemáticos

Leia mais

Arquitetura de Rede de Computadores

Arquitetura de Rede de Computadores TCP/IP Roteamento Arquitetura de Rede de Prof. Pedro Neto Aracaju Sergipe - 2011 Ementa da Disciplina 4. Roteamento i. Máscara de Rede ii. Sub-Redes iii. Números Binários e Máscara de Sub-Rede iv. O Roteador

Leia mais

LINGUAGEM C UMA INTRODUÇÃO

LINGUAGEM C UMA INTRODUÇÃO LINGUAGEM C UMA INTRODUÇÃO AULA 1 Conceitos muito básicos 1 Introdução O C nasceu na década de 70. Seu inventor, Dennis Ritchie, implementou-o pela primeira vez usando um DEC PDP-11 rodando o sistema operacional

Leia mais

TUTORIAL DO ACCESS PASSO A PASSO. I. Criar um Novo Banco de Dados. Passos: 1. Abrir o Access 2. Clicar em Criar um novo arquivo

TUTORIAL DO ACCESS PASSO A PASSO. I. Criar um Novo Banco de Dados. Passos: 1. Abrir o Access 2. Clicar em Criar um novo arquivo TUTORIAL DO ACCESS PASSO A PASSO I. Criar um Novo Banco de Dados Passos: 1. Abrir o Access 2. Clicar em Criar um novo arquivo 3. Clicar em Banco de Dados em Branco 4. Escrever um nome na caixa de diálogo

Leia mais

Linguagem algorítmica: Portugol

Linguagem algorítmica: Portugol Programação de Computadores I Aula 03 Linguagem algorítmica: Portugol José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/34 Introdução I Lógica A lógica é usada

Leia mais

Programação para Computação

Programação para Computação Universidade Federal do Vale do São Francisco Programação para Computação Professor: Marcelo Santos Linder E-mail: marcelo.linder@univasf.edu.br Ementa Conceito de algoritmo. Lógica de programação e programação

Leia mais

Algoritmos e Programação. Prof. Tarcio Carvalho

Algoritmos e Programação. Prof. Tarcio Carvalho Algoritmos e Programação Prof. Tarcio Carvalho Conceito de Lógica A utilização da lógica na vida do indivíduo é constante, visto que é ela quem possibilita a ordenação do pensamento humano. Exemplo: A

Leia mais

Linguagem C: Estruturas de Controle. Prof. Leonardo Barreto Campos 1

Linguagem C: Estruturas de Controle. Prof. Leonardo Barreto Campos 1 Linguagem C: Estruturas de Controle Prof. Leonardo Barreto Campos 1 Sumário Estrutura de Controle e de Fluxo Comandos de Seleção: O comando if; Ifs Aninhados; A escada if-else-if; A expressão condicional;

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

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

Conceitos Importantes:

Conceitos Importantes: Conceitos Importantes: Variáveis: Por Flávia Pereira de Carvalho, 2007 i O bom entendimento do conceito de variável é fundamental para elaboração de algoritmos, consequentemente de programas. Uma variável

Leia mais

Tutorial do Iniciante. Excel Básico 2010

Tutorial do Iniciante. Excel Básico 2010 Tutorial do Iniciante Excel Básico 2010 O QUE HÁ DE NOVO O Microsoft Excel 2010 é um programa de edição de planilhas eletrônicas muito usado no mercado de trabalho para realizar diversas funções como;

Leia mais

SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2

SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2 SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2 1.1 Introdução... 2 1.2 Estrutura do IP... 3 1.3 Tipos de IP... 3 1.4 Classes de IP... 4 1.5 Máscara de Sub-Rede... 6 1.6 Atribuindo um IP ao computador... 7 2

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

JavaScript. JavaScript é uma linguagem de script usada em navegadores web. É uma linguagem dinâmica, estruturada e orientada em objetos.

JavaScript. JavaScript é uma linguagem de script usada em navegadores web. É uma linguagem dinâmica, estruturada e orientada em objetos. JavaScript JavaScript é uma linguagem de script usada em navegadores web. É uma linguagem dinâmica, estruturada e orientada em objetos. Pode ser usada dentro do próprio arquivo HTML ou estruturada em um

Leia mais

Comandos Sequenciais if else, e Switch

Comandos Sequenciais if else, e Switch Introdução à Programação Comandos Sequenciais if else, e Switch 1º ano - ESI e IGE (2011/2012) Engenheiro Anilton Silva Fernandes (afernandes@unipiaget.cv) O computador pensa? Muitas vezes utiliza-se a

Leia mais

2. ALGORITMOS. Unesp Campus de Guaratinguetá. Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro

2. ALGORITMOS. Unesp Campus de Guaratinguetá. Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro 2. ALGORITMOS Unesp Campus de Guaratinguetá Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro 2 - Algoritmo 2.1: Introdução Antes de se utilizar uma linguagem de computador,

Leia mais

1.1. Organização de um Sistema Computacional

1.1. Organização de um Sistema Computacional 1. INTRODUÇÃO 1.1. Organização de um Sistema Computacional Desde a antiguidade, o homem vem desenvolvendo dispositivos elétricoeletrônicos (hardware) que funciona com base em instruções e que são capazes

Leia mais

20 Caracteres - Tipo char

20 Caracteres - Tipo char 0 Caracteres - Tipo char Ronaldo F. Hashimoto e Carlos H. Morimoto Até agora vimos como o computador pode ser utilizado para processar informação que pode ser quantificada de forma numérica. No entanto,

Leia mais

P r o g r a m a ç ã o d e C o m p u t a d o r e s 1 o S e m - 2 0 1 3 P r o f. A n d r é A m a r a n t e L u i z L A B 5 tag %2d while printf PE1:

P r o g r a m a ç ã o d e C o m p u t a d o r e s 1 o S e m - 2 0 1 3 P r o f. A n d r é A m a r a n t e L u i z L A B 5 tag %2d while printf PE1: Inteligência É a faculdade de criar objetos artificiais, especialmente ferramentas para fazer ferramentas. Henri Bergson. WHILE Além dos comandos if-else e switch, o controle de fluxo de um programa pode

Leia mais

Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia de Computação CECOMP

Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia de Computação CECOMP Algoritmos e Programação Ricardo Argenton Ramos Baseado nos slides do professor Jadsonlee da Silva Sá Ementa Conceito de algoritmo. Lógica de programação e programação estruturada. Linguagem de definição

Leia mais

Instruções para a atividade

Instruções para a atividade 1/13 Instruções para a atividade 1. Orientações gerais. Leia atentamente: a. Esta é uma atividade contínua, baseada nos recursos do MS Excel. Foi idealizada para que a ferramenta em questão possa ter seus

Leia mais

CURSO DE PROGRAMAÇÃO EM JAVA

CURSO DE PROGRAMAÇÃO EM JAVA CURSO DE PROGRAMAÇÃO EM JAVA Introdução para Iniciantes Prof. M.Sc. Daniel Calife Índice 1 - A programação e a Linguagem Java. 1.1 1.2 1.3 1.4 Linguagens de Programação Java JDK IDE 2 - Criando o primeiro

Leia mais

ICC Introdução para JavaScript

ICC Introdução para JavaScript ICC Introdução para JavaScript Arquitetura Genérica de um Computador Máquina de Von Neumann Diagrama conhecido como Máquina de Von Neumann (grande nome da informática) A finalidade de um computador é receber,

Leia mais

Algoritmos I Aula 13 Java: Tipos básicos, variáveis, atribuições e expressões

Algoritmos I Aula 13 Java: Tipos básicos, variáveis, atribuições e expressões Algoritmos I Aula 13 Java: Tipos básicos, variáveis, atribuições e expressões Professor: Max Pereira http://paginas.unisul.br/max.pereira Ciência da Computação Primeiro Programa em Java public class OlaPessoal

Leia mais