Baixe o app para aproveitar ainda mais
Prévia do material em texto
Disciplina: Lógica de Programação I Professor: Aragão Júnior Lógica de Programação é uma das disciplinas que compõem os cursos Engenharias. Nesta disciplina, você aprenderá os fundamentos da lógica de programação, que é a base da programação de computadores. Terá a oportunidade de conhecer novos colegas e trocar informações importantes para sua formação. 1. Expositiva. 2. Resolução de exercícios. 3. Aula prática: Laboratório. 4. Aula de revisão, etc. • Critérios de avaliação. – V1 – V2 – Trabalhos Pra que aprender isso? -Criar sistemas eletrônicos, automação, desenvolvimento de sistemas. -Pesquisa Operacional. -Pesquisa Cientifica. -Automação de Cálculos Estruturais. -Estimação de parâmetros. -Adequação de sistemas. Sou capaz de aprender isso? -Procedimentos. 1. Leitura dos slides. 2. Anotar comandos. 3. Treinar os comandos. 4. Resolver exercícios. 5. Tirar dúvida. Aula 1 - O que é Lógica? • Objetivos: – Compreender um pouco sobre lógica – Diferenciar tipos de lógica – Entender o conceito de Programação Aula 1 - O que é Lógica? • Lógica é o estudo das deduções (raciocínios) válidas. – Pensamento. – Raciocínio. Exemplos de pensamentos lógicos!!! Aula 1 - O que é Lógica? • Segundo o dicionário Aurélio, a palavra lógica pode ser definida de diferentes formas, dentre elas destacam-se: Na tradição clássica, aristotélico-tomista, conjunto de estudos que visam a determinar os processos intelectuais que são condição geral do conhecimento verdadeiro. Ou ainda, como sendo um conjunto de estudos tendentes a expressar em linguagem matemática as estruturas e operações do pensamento, deduzindo-as de número reduzido de axiomas, com a intenção de criar uma linguagem rigorosa, adequada ao pensamento científico tal como o concebe a tradição empírico-positivista; lógica matemática, lógica simbólica. Aula 1 - O que é Lógica? • Historicamente • Lógica é oriunda da Grécia, em que os três mestres da filosofia ocidental, Sócrates, Platão e Aristóteles , deram os primeiros passos para a busca do conhecimento por meio da investigação científica da lógica. Inicialmente, Sócrates desafiou seus inimigos políticos em público para mostrar que ninguém, nem ele mesmo, eram portadores de dotes para julgar o certo ou o errado; sendo inclusive condenado à morte pelos seus oponentes. Aula 1 - O que é Lógica? • Lógica Moderna – A Lógica moderna e contemporânea usa os mesmos métodos usados em Matemática, e por isso também é chamada de Lógica Simbólica. Por outro lado, a própria Matemática faz uso intenso da Lógica em suas demonstrações e em seus fundamentos. – Grande parte da Informática e da Ciência da Computação utilizam a Lógica. Como a própria noção de máquina de computar é um conceito lógico, expresso por meio das máquinas de Turing criadas por Alan Turing3 , o desenvolvimento técnico não diminuiu a necessidade de reflexão filosófica a respeito dos métodos e da natureza da lógica e a transformou em paradigma para certas áreas da Filosofia, como a Filosofia Analítica. Aula 1 - O que é Lógica? • Lógica Contemporânea – A Lógica contemporânea converteu-se em uma disciplina independente e múltipla que se desenvolve em conexão com a Filosofia, a Linguística, a Matemática e as Ciências da Computação. Aula 1 - O que é Programação? • A programação é a arte de fazer com que o computador faça exatamente o que desejamos que ele faça. • Ao nível mais simples consistirá em enviar uma sequência de comandos para um computador por forma a atingir um determinado objetivo. Ou que o computador execute uma determinada função. Aula 1 - O que é Linguagem de Programação? • Linguagens de programação permitem-nos comunicar com o computador de uma forma mais próxima da linguagem humana do que da linguagem do computador • É um conjunto de regras sintáticas e semânticas usadas para definir um programa de computador. • Permite que um programador especifique precisamente sobre quais dados um computador vai atuar, como estes dados serão armazenados ou transmitidos e quais ações devem ser tomadas sob várias circunstâncias. Linguagens de programação podem ser usadas para expressar algoritmos com precisão. Aula 1 – Tipos de Linguagem de Programação • As linguagens de programação podem ser classificadas e sub-classificadas de várias formas. – Linguagens aplicativas, ou de aplicação – Linguagens concorrentes, distribuídas e paralelas – Linguagens de fluxo de dados – Linguagens de projeto – Linguagens extensíveis – Linguagens de montagem e de macro – Linguagens de microprogramação – Linguagens não determinísticas – Linguagens não procedurais – Linguagens orientadas a objeto – Linguagens de aplicação especializada – Linguagens de altíssimo nível Aula 1 – Lista de linguagens C Java Objective-C C++ PHP C♯ Visual Basic Python Perl JavaScript Ruby Visual Basic .NET Transact-SQL Lisp Pascal Bash PL/SQL Delphi / Object Pascal Ada MATLAB Aula 1 -Informática • Objetivos: – Definir informática – Conceituar Sistema Computacional – Entender formas de armazenamento de dados – Diferenciar tipos de softwares Aula 1 – Informática Revisão da Aula anterior segundo Aula 1 – Informática InforMática Informação DADOS->INFORMAÇÃO CODIFICAÇÃO->ARMAZENAMENTO Automática SISTEMA COMPUTACIONAL Aula 1 – Sistema Computacional FISICA HARDWARE LÓGICA SOFTWARE Aula 1 – Sistema Computacional Aula 1 – Informática Sistema Computacional Geração Armazenamento Zero Mecânico 1° Geração Válvulas 2° Geração Transistores 3° Geração CHIPS – pastilha de silício 4° Geração VLSI Aula 1 – Informática Aula 1 – Armazenamento de dados Aula 1 – Unidade de armazenamento de dados Aula 1 – Camadas de Software Aula 1 – Tipos de Software Básicos • Sistema Operacional • Bios/Setup • Firmware • IDE Aplicativo • Pacote Office • AutoCad • E-mail • Simulação Aula 2 - Conceitos básicos para a programação de computadores • Objetivos: – Definir algoritmos – Identificar as características de um algoritmo – Saber representar algoritmos – Representar problemas com algoritmos Aula 2 - Conceitos básicos para a programação de computadores • Tópicos: – Algoritmo – Representação – Estruturas de Algoritmos • Sequencial • Condicional • Repetição Aula 2 - Conceitos básicos para a programação de computadores – Algoritmo Algoritmo é a especificação da sequência ordenada de passos que deve ser seguida para a solução de um problema ou para a realização de uma tarefa, garantindo a sua repetitividade. Representação de um método! Aula 2 – Características desejáveis de um algoritmo • legível: o algoritmo deve ser compreensível até por um leigo • de alto nível: o algoritmo deve poder ser traduzido em qualquer linguagem de programação, ele não deve fazer uso de conhecimentos técnicos relativos a um determinado programa ou a um sistema operacional dado. • preciso: cada elemento do algoritmo não deve ser confuso, por isso é importante eliminar qualquer ambiguidade. • conciso: um algoritmo não deve exceder uma página. Se for o caso, é preciso decompor o problema em vários subproblemas Aula 2 - Características inerentes de um algoritmo • Características inerentes de um algoritmo – Sequência de passos – Trata entradas e saídas – Utiliza Lógica – Objetivo definido – Finito Aula 2 – Representação de Algoritmos – Representação • Narrativa • Fluxograma • Pseudocódigo • Diagrama de Chappin • Linguagem de programação Aula 2 - Representação narrativa Aula 2 - Representaçãonarrativa Aula 2 – Atividade de casa Representar um algoritmo na forma narrativa para resolver o problema abaixo: Realizar o empréstimo de um livro na biblioteca. Aula 2 – Representação em pseudocódigo • Algoritmo Recepcionista de Cinema • Inicio • 1 – Solicitar ao cliente o bilhete do filme. • 2 – Conferir a data e o horário do filme no bilhete. • Se data/hora atual > data/hora do filme + 30 minutos Então • 3 – Informar ao cliente que o tempo limite para entrada foi excedido. • 4 – Não permitir a entrada. • Senão Se data/hora atual < data/hora do filme – 30 minutos Então • 5 – Informar ao cliente que a sala do filme ainda não foi liberada para entrada. • 6 – Não permitir a entrada. • Senão • 7 – Permitir a entrada. • 8 – Indicar ao cliente onde fica a sala do filme. • Fim-Se • Fim Aula 2 – Representação em pseudocódigo • Outro exemplo é o pseudocódigo de um algoritmo que recebe um valor inteiro, acresce duas unidades a este, e exibe o resultado desta manipulação. algoritmo “exemplo 2” variaveis numero, resposta: inteiro escreva (“Digite um número inteiro: ”) leia (numero) resposta <- numero+2 escreva (“Resultado (número + 2): ”, resposta) fimalgoritmo Aula 2 – Atividade de casa Representar um algoritmo na forma de pseudocódigo para resolver os problemas abaixo: Construa um pseudocódigo para representar um algoritmo que efetue a multiplicação de dois inteiros quaisquer. Calcular a área de um trapézio, dado por: A = (B+b)*h/2 Calcular o IMC de uma pessoa, dado por: IMC = PESO/(ALTURA*ALTURA) Aula 2 – Representação em fluxograma Aula 2 – Representação em fluxograma Aula 2 – Representação em fluxograma Aula 2 – Estruturas de Algoritmo – Estruturas • Sequencial • Condicional • Repetição Aula 2 – Atividade de casa Representar um algoritmo na forma de fluxograma para resolver o problema abaixo: Construa um pseudocódigo para representar um algoritmo que efetue a multiplicação de dois inteiros quaisquer. Aula 3 -Estrutura Sequencial • Objetivos: – Conhecer sobre a Linguagem C – Estrutura de um programa em C – Definir variáveis – Utilizar bibliotecas da Linguagem C – Representar um algoritmo sequencial em C. Aula 3 -Estrutura Sequencial Aula 3 -Estrutura Sequencial • 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, criado por Ken Thompson. O B, por sua vez, veio da linguagem BCPL, inventada por Martin Richards. Aula 3 -Estrutura Sequencial • Estrutura de um programa em C Aula 3 -Estrutura Sequencial • Variáveis do programa – Nomes dos espaços da memória para guardar valores. – MEMÓRIA RAM A soma idade nome Aula 3 -Estrutura Sequencial Palavras reservadas Aula 3 -Estrutura Sequencial • Declaração de variáveis – Processo pelo qual reserva um espaço na memória para guardar os dados do programa. • TIPO NOME; – O tipo de uma variável informa a quantidade de memória, em bytes, que a variável ocupará e a forma como um valor deverá ser armazenado; Aula 3 -Estrutura Sequencial • Há cinco tipos básicos de dados em C: – char – int – float – double – void Aula 3 -Estrutura Sequencial Caracteres Símbolos CHAR Números Inteiros INT Números Reais FLOAT DOUBLE Aula 3 -Estrutura Sequencial – Exercícios Aula 3 -Estrutura Sequencial • Exercícios – 1- Declare as seguintes variáveis em um programa: letra = C numero1 = 13 numero2 = 3.56 pi=3,1415 mol = 6×10²³ – 2- Diga se as seguintes variáveis são válidas: a) linguagem B)progRAMA c)ufu1234 d)int e)float4 f)2012 – 3- Qual a estrutura básica da declaração de uma variável? a)tipo valor = variável! b)valor tipo = variável;; c)tipo variável == valor; d)tipo variável = valor; e)main tipo variável <- valor. Aula 3 -Estrutura Sequencial • Exercício 1- Declare as variáveis em um programa para armazenar os valores da tabela abaixo Aula 3 -Estrutura Sequencial • Objetivos: – Comandos de entrada e saída – Utilizar operadores • Atribuição • Aritméticos – Representar um algoritmo sequencial em C. Aula 3 -Estrutura Sequencial • Algumas bibliotecas da Linguagem C Biblioteca Padrão #include <stdio.h> no início do programa. Saída: A Função printf Entrada: A função Scanf Aula 3 -Estrutura Sequencial #include <stdio.h> Saída: A Função printf int printf(controle, arg1, arg2, ...); Ex: printf(“Digite seu nome”); Ex: printf(“A media é igual a %f”,media); Aula 3 -Estrutura Sequencial Aula 3 -Estrutura Sequencial #include <stdio.h> Entrada: A Função scanf scanf(controle, arg1, arg2, ...); Ex: scanf(“%d”,&idade); Ex: scanf(“%c”,&letradigitada); Ex: scanf(“%f”,¬a); Aula 3 -Estrutura Sequencial • Representando um problema na Linguagem C algoritmo “exemplo 2” variaveis numero, resposta: inteiro escreva (“Digite um número inteiro: ”) leia (numero) resposta <- numero+2 escreva (“Resultado (número + 2): ”, resposta) fimalgoritmo USANDO A LINGUAGEM C INT MAIN() { } Aula 3 -Estrutura Sequencial • Declaração int idade,ano; float peso,altura; float preco; O operador de atribuição = indica que o resultado da expressão à direita do operador será atribuído à variável. ATRIBUIÇÃO DIRETA idade = 20; peso = 33.5; ATRIBUIÇÃO INDIRETA printf(“Digite o preço”); scanf(“%f”,&preco); Aula 3 -Estrutura Sequencial • Operadores aritméticos Aula 3 -Estrutura Sequencial – Exercícios • Qual o resultado das variáveis x, y e z depois da seguinte sequência de operações: – int x, y, z; – x = y = 10; – z = x++; – x = -x; – y++; – x = x + y – z--; Aula 3 -Estrutura Sequencial – Exercícios • Escreva um programa que declare variáveis do tipo int, char e float, inicialize-as, e imprima os seus valores. • Escreva um programa que leia 3 números reais e imprima a média aritmética destes números. • Escreva um programa que pegue o valor de uma conta de restaurante e imprima o valor total a ser pago, considerando que o restaurante cobra 10% de taxa para os atendentes. • Faça um programa que peça ao usuário a quilometragem atual, a quilometragem anterior, os litros consumidos e informe a taxa de consumo (quilômetros por litro) de um automóvel. • Escreva um programa que converta uma temperatura de Farenheit para Celsius. • Escreva um programa que, dado o perímetro de um círculo, calcule sua área. Aula 3 –Aula Laboratório Aula 3 –Aula Laboratório Aula 3 –Aula Laboratório Aula 3 –Aula Laboratório Aula 3 –Aula Laboratório Aula 3 –Aula Laboratório Aula 3 –Aula Laboratório Aula 3 –Aula Laboratório Aula 3 –Aula Laboratório Aula 3 –Aula Laboratório Aula 3 –Aula Laboratório Aula 3 –Aula Laboratório Aula 3 –Aula Laboratório Pratica 1 • Procedimentos – Baixar os slides e seguir instruções da Aula 3- laboratório 1 – Digitar o código do cálculo do IMC – Executar o programa Pratica 2 • Procedimentos – Crie um projeto no Dev. – Elabore um algoritmo para calcular a área de um trapézio: A = ((B+b)*h)/2; – Execute o programa Pratica 3 • Procedimentos – Crie um projeto no Dev. – Elabore um algoritmo para calcular a média de um aluno e imprimir a mensagem aprovado ou aprovado. • Se a media > = 7 – Aprovado • Senão – Reprovado – Execute o programa Solução da pratica Aula 4 - Estrutura Condicional • Tópicos: – Introdução– Estruturas Simples – Estruturas Compostas Aula 4 - Estrutura Condicional Tomar uma decisão! Aula 4 - Estrutura Condicional • Definição – Estruturas que permitem a escolha da execução de um trecho de código de acordo com a condição. Aula 4 - Estrutura Condicional • A ESTRUTURA IF/ELSE: – Estruturas que permitem a escolha da execução de um trecho de código de acordo com a condição. Aula 4 - Estrutura Condicional • A ESTRUTURA IF/ELSE: – Existem três maneiras de usar essa estrutura condicional: • If sem o else • If com o else • If com else aninhado • If com else if Aula 4 - Estrutura Condicional • Exemplos Aula 4 - Estrutura Condicional Aula 4 - Estrutura Condicional • Operadores relacionais Aula 4 - Estrutura Condicional • Operadores lógicos Aula 5 - Estrutura de Repetição • Tópicos: – Introdução – PARA – ENQUANTO – FAÇA/ENQUANTO 104 • ESTRUTURAS DE REPETIÇÃO – Se uma ação se repete em um algoritmo, em vez de escrevê-la várias vezes, em certos casos podemos resumir anotando uma vez só e solicitando que ela se repita, usando uma das estruturas de repetição. – Podemos executar uma ação (ou um conjunto de ações) um número definido ou indefinido de vezes, ou enquanto um estado permanecer ou até que um estado seja atingido. – As principais estruturas de repetição são: • PARA...ATÉ...REPETIR • ENQUANTO...REPETIR • REPETIR...ENQUANTO Lógica de programação 105 • ESTRUTURAS DE REPETIÇÃO Lógica de programação 1) Primeiro: 2) Último: 3) Passo: 106 • ESTRUTURAS DE REPETIÇÃO Lógica de programação 1) Primeiro: 2) Último: 3) Passo: 107 • ESTRUTURAS DE REPETIÇÃO Lógica de programação 1) Primeiro: 2) Último: 3) Passo: • ESTRUTURAS DE REPETIÇÃO Lógica de programação 1) Primeiro: 2) Último: 3) Passo: • ESTRUTURAS DE REPETIÇÃO Lógica de programação 1) Primeiro: 2) Último: 3) Passo: • ESTRUTURAS DE REPETIÇÃO Lógica de programação 1) Primeiro: 2) Último: 3) Passo: • ESTRUTURAS DE REPETIÇÃO Lógica de programação 1) Primeiro: 2) Último: 3) Passo: 112 Fluxograma de uma estrutura de repetição: Lógica de programação INÍCIO FIM CONT <= 10? Não Sim CONT = 1 CONT = CONT + 1 Neste ponto do algoritmo podemos incluir qualquer conjunto de instruções que quisermos repetir 10 vezes. 113 Enquanto...Repetir Enquanto (condição) repetir <instruções> Repetir...Enquanto Repetir <instruções> enquanto (condição) Para...até...repetir Para <variavel> = <inicio> até <fim> repetir <instruções> Lógica de programação Estruturas de repetição condição instrução V F condição instrução V F 114 – Até agora para vários valores informados pelo usuário líamos cada valor de forma separada – Por exemplo, no algoritmo para o cálculo da média de quatro números, líamos 4 valores em 4 variáveis diferentes. Mas também poderíamos: • ler um valor para 1 variável e repetir isso 4 vezes, adicionando cada valor lido ao total em uma outra variável, a cada repetição. • Após as 4 repetições, a soma dos 4 números estaria acumulada na outra variável, bastando uma instrução para dividi-la por 4 e assim obter a média. Lógica de programação 115 Exemplo Para • Ler 50 números fornecidos pelo usuário e calcular e exibir a média. Pseudocódigo: 1. Início 2. Soma = 0 <<< o acumulador precisa ter um valor inicial 3. Para cont =1 até 50 repetir 3.1 ler num 3.2 soma = soma + num 4. Media = soma / cont 5. Mostrar media 6. Fim 116 PARA...ATÉ...REPETIR – Formato: Para <variável> = <valor inicial> até <valor final> repetir <ações> • Significado: A <variável> é inicializada com <valor inicial>. Após cada execução das <ações>, é somado 1 à <variável> e repete-se as <ações>, continuando assim até que a <variável> atinja o <valor final>. • Esta estrutura de repetição cria um contador automático, que nós não precisamos mandar incrementar. • Ao usar esta estrutura já está subentendido que a <variável> inicia com <valor inicial> e é incrementada a cada ciclo (podendo-se inclusive aproveitar seu valor dentro do ciclo), e que as <ações> serão repetidas até que a <variável> tenha o <valor final>. Lógica de programação 117 • Exemplo da estrutura PARA...ATÉ...REPETIR: “Mostrar os quadrados dos inteiros de 3 a 11.” – Pseudocódigo: Para CONT = 3 até 11 repetir Mostrar (CONT *CONT) – Usamos esta estrutura quando sabemos quantas vezes temos de repetir certas ações, mesmo que o número de vezes só seja conhecido durante a execução. Por exemplo: “Perguntar ao usuário de quantos valores ele quer calcular a média. Ler os números e calcular a média.” Lógica de programação Isto será repetido 9 vezes. 118 Lógica de programação E se eu quisesse calcular a média de N números? – Para esse problema construímos um algoritmo que será genérico, ou seja, que poderá ser usado para calcular a média de quantos números se quiser! – Pseudocódigo: 1- Início 2- Mostrar “De quantos valores você quer calcular a média?” 3- Ler QUANT (aqui se descobre quantas repetições) 4- SOMA = 0 5- Para CONT = 1 até QUANT repetir 5.1- Ler N (aqui é lido cada número, um em cada ciclo) 5.2- SOMA = SOMA + N (aqui os valores lidos são acumulados) 6- MEDIA = SOMA / QUANT (isto está fora do loop) 7- Mostrar MEDIA 8- Fim Exercício • Faça um algoritmo para calcular e escrever o valor de S: 119 50 99 ... 4 7 3 5 2 3 1 1 S Exemplo de solução 120 1. Início 2. S=0 3. Para I=1 ate’ 50 repetir 3.1 S=S+(I*2-1)/I 4. Mostrar S 5. Fim Exercício 121 Faça um algoritmo para calcular os 20 primeiros termos da série de Fibonacci: 0, 1, 1, 2, 3, 5, 8, 13, …. com F0=0 e F1=1 Exemplo de solução 1. Início 2. Mostrar 0 3. Mostrar 1 4. n_2=0 5. n_1=1 6. Para I=3 até 20 repetir 6.1 n=n_1 + n_2 6.2 mostrar n 6.3 n_2=n_1 6.4 n_1=n 7. Fim 122 Exercício Faça um algoritmo para calcular a soma dos números primos menores que 100 Faça um teste de mesa para testar a sua solução 123 Exemplo de solução 1. Início 2. Para I=1 até 99 repetir 2.1 eprimo=1 2.2 para J=2 até I-1 repetir 2.2.1 se I%j=0 então eprimo=0 2.3 se eprimo=1 então mostrar I 3. Fim 124 Estruturas de repetição em C 125 126 Estrutura de repetição: comando for • Comando for for (var=valor inicial; condição; incremento/decremento) comando; for (var=valor inicial; condição; incremento/decremento) { comando1; comando2; comando3; } Exemplo: for (cont=3; cont<=11; cont++) printf (“%d”,cont); Comando for for (var=valor inicial; condição; inc/dec) comando1; 127 Não esquecer dos parênteses O comando1 será executado enquanto a condição for verdadeira O incremento ou decremento é executado automaticamente após a execução do comando1 128 Exercício Escrever um algoritmo que lê 5 valores, e conta quantos destes valores são negativos, escrevendo esta informação. #include <stdio.h> #include <stdlib.h> main(){ int numero, cont, neg=0; for (cont=0; cont<5; cont++) { printf ("\nDigite um numero inteiro: "); scanf ("%d", &numero); if (numero<0) neg=neg+1; } printf ("\nO numero de valores negativos e’ %d\n", neg); system("pause"); } Cuidado!!! • Se o valor da variável de controle do comando for for alterado explicitamente dentro do bloco de repetição… • Exemplo: saída: 129 #include <stdio.h> #include <stdlib.h> main(){ int I; for (I=1; I<=10; I++){ printf (“%d\n",I); if (I==5) I=8; } system("pause"); } 1 2 3 4 5 9 10 Press any key to continue . . . Lembre-se!!! Qual o valor da variável de controle do for após a execução do comando for? O valor que foi testado e não passou na condição. Exemplo: saída: 130 #include <stdio.h> #include <stdlib.h> main(){ int cont; for (cont=1; cont<=10; cont=++){ printf ("%d\n", cont); } printf("valor apos o FOR: %d\n",cont); system("pause"); } 1 2 3 4 5 6 7 8 9 10 valor apos o FOR: 11 Press any key to continue... Só use quando estritamente necessário: E para forçar o término da repetição? Use um break. Exemplo : saída: 131 1 2 3 4 5 apos o FOR: 5 Press any key to continue... #include <stdio.h> #include <stdlib.h> main(){ int I; for (I=1; I<=10; I=I+1){ printf ("%d\n",I); if (I==5) break; } printf(“apos o FOR: %d\n",I); system("pause"); } Atenção para o valor de saída da variável de controle Cuidado!! • Faça sempre um teste de mesa com os valores inicial e final do loop do comando for, pois a maioria dos erros são na primeira ou na última execução do laço. • Erros comuns: – Executar o laço (repetição) uma vez a mais ou a menos que o desejado – Atribuir o valor inicial de alguma variável dentro do laço, quando deveria ser fora – Não atribuir o valor inicial de uma variável (principalmente em for s aninhados) 132 Construção de Algoritmos para resolver sequências • Identificar o número de termos • Identificar o primeiro e último termo. • Escolher uma variável para controle. • Resolver a expressão da sequência, que pode ser um somatório. • Exibir o valor final da sequência. 133 WHILE • INICIALIZAÇÃO • WHILE( CONDIÇÃO ){ – COMANDO – PASSO • } 134 DO/WHILE • INICIALIZAÇÃO • DO{ – COMANDO – PASSO • }WHILE( CONDIÇÃO ); 135 Exercícios • Faça um programa para calcular e escrever o valor de S: • Faça um programa para calcular os 20 primeiros termos da série de Fibonacci • Faça um programa para calcular os números primos menores que 100 136 Exercícios 137 50 99 ... 4 7 3 5 2 3 1 1 S ...54321 S ...108642 S ... 5 !5 4 !4 3 !3 2 !2 4321 S ... 7 6 6 5 5 4 4 3 3 2 2 1 S Aula 5 – Tipos Indexados • Tópicos: – Introdução – Índices – Vetores – Declaração de vetores – Escrevendo dados em vetores – Lendo dados em vetores Aula 5 – Tipos Indexados • Tópicos: – Criação de espaços na memória para armazenar diversos valores do mesmo tipo. Aula 5 – Tipos Indexados • Declaração Aula 5 – Tipos Indexados • Atribuindo valores – Direta – Indireta Aula 5 – Tipos Indexados • Percorrendo os valores for(indice = 0 ; indice < tamanho ; indice++) { printf(“\n %d”, ); }
Compartilhar