Logica usando c_-_aula_1
-
Upload
cristiano-araujo -
Category
Education
-
view
230 -
download
0
description
Transcript of Logica usando c_-_aula_1
![Page 1: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/1.jpg)
21/03/14 1
Curso de Lógica
Pedro Luiz de Paula Filho
![Page 2: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/2.jpg)
21/03/14 2
Lógica
“Arte de raciocinar” Coerência de raciocínio, de idéias Maneira de raciocinar particular a
um indivíduo ou a um grupo Ela trata da correção do pensamento Como filosofia, procura saber por
que pensamos de uma forma / outra Ajuda colocar ordem no pensamento
![Page 3: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/3.jpg)
21/03/14 3
Lógica de Programação
Raciocínio lógico empregado no desenvolvimento de programas de computador, fazendo uso ordenado dos elementos básicos suportados por um dado estilo de programação
![Page 4: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/4.jpg)
21/03/14 4
Elementos para uma boa lógica de programação
Organização Criatividade Perseverança Padronização Otimização
![Page 5: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/5.jpg)
21/03/14 5
Algoritmos
Sequência de passos (ações) que devem ser executados para se alcançar um objetivo
Não é a solução de um problema, pois senão, cada problema teria somente uma única solução
O aprendizado de algoritmos só se consegue através de exercícios
![Page 6: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/6.jpg)
21/03/14 6
Conselho sobre algoritmo
Algoritmos não se aprendem: Copiando algoritmos Estudando algoritmos
Algoritmos só se aprendem:Construindo algoritmosTestando algoritmos
![Page 7: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/7.jpg)
21/03/14 7
Fases de um Algoritmo
1. Definir o problema2. Realizar um estudo da situação
atual e verificar a forma de resolver o problema
3. Usar uma linguagem para escrever um programa para resolver o problema
4. Analisar c/o usuário se o problema foi resolvido, senão volta ao 1.
![Page 8: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/8.jpg)
21/03/14 8
Definir / Resolver o Problema
Entenda muito bem o que precisa ser feito
Tente analisar se é possível de ser feito
Veja se existe uma boa relação custo x benefício
![Page 9: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/9.jpg)
21/03/14 9
Escrever o programa
Escolha uma linguagem de computação que te ajude a resolver o problema
Defina passo a passo, o que deve ser feito para a solução do problema, o planejamento é a melhor solução
Escreva teu código
![Page 10: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/10.jpg)
21/03/14 10
A programação
Toda linguagem de programação tem uma estrutura básica própria.
Os comandos tem uma sintaxe específica e bem rígida, logo, um comando fora da sintaxe é rejeitado pelo computador.
![Page 11: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/11.jpg)
21/03/14 11
Problema: Robô - Trocar uma lâmpada
Comandos: ande (metros); pegue (objeto); solte (objeto); gire (parte corpo, graus); levanteBraço (metros); Inicio Fim.
![Page 12: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/12.jpg)
21/03/14 12
Problema: Sair do labirinto
7 m 7 m
14 m
2 m
2 m
2 m
2 m
7 m 7 m
![Page 13: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/13.jpg)
21/03/14 13
Construa o labirinto para qualquer tamanho
Como fazer? Cria-se um novo programa, para
cada nova medida? Como deixar a mesma lógica,
maleável para qualquer tamanho?
![Page 14: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/14.jpg)
21/03/14 14
Constantes x Variáveis
Constante quando um dado não tem a
possibilidade de ser alterado Variável:
forma de “guardar” dados que podem sofrer alterações de um problema
A variável deve ter um tipo, de acordo com o que é armazenado
![Page 15: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/15.jpg)
21/03/14 15
Tipos de dados
int Números inteiros, ou seja, não
fracionários float
Qualquer número, tanto inteiros, quanto fracionários
char Um único caracter, qualquer
elemento presente no teclado
![Page 16: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/16.jpg)
21/03/14 16
Declaração de variáveis
tipo nome; Exemplo:
int x;
float nota1, nota2, media;
char letra, resposta;
![Page 17: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/17.jpg)
21/03/14 17
Nome de variáveis
Regra Básica: Devem começar com uma letra ou _ Pode ser seguido por letras e/ou
números Não é permitido o uso de caracteres
especiais (#, @, %, espaço, ...), exceto o sublinhado (_)
![Page 18: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/18.jpg)
21/03/14 18
Atribuição
variavel = valor; Exemplo:
x = 10;
nota1 = 9.5;
letra = resposta = ‘S’;
![Page 19: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/19.jpg)
21/03/14 19
Operadores
Aritméticos Símbolos que representam as
operações matemáticas Relacionais
Símbolos que servem para comparar valores ou expressões
Lógicos Conectivos de expressões
![Page 20: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/20.jpg)
21/03/14 20
Operadores Aritméticos
Operação Operador
Adição +
Subtração -
Multiplicação *
Divisão /
Resto %
![Page 21: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/21.jpg)
21/03/14 21
Operadores Relacionais
Comparação Operador
Igualdade ==
Diferenciação !=
Maior >
Menor <
Maior Igual >=
Menor Igual <=
![Page 22: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/22.jpg)
21/03/14 22
Operadores Lógicos
Operação Operador
Conjunção – E &&
Disjunção – OU ||
Negação – NÃO !
![Page 23: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/23.jpg)
21/03/14 23
Operadores Lógicos
A B &&(E)
||(OU)
! (A)(Não)
V V V V F
V F F V F
F V F V V
F F F F V
![Page 24: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/24.jpg)
21/03/14 24
Estrutura Básica em C
main ( ) - primeira função a ser executada
{ - inicia o corpo da função
} - termina a função
Deve existir obrigatoriamente Marca o início da execução do
programa
![Page 25: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/25.jpg)
Instalando o Dev-C++
Baixe o arquivo Devcpp-4.9.9.2_setup.exe
21/03/14 25
Editor de Código
Compilar – Ctrl+F9
Executar – Ctrl+F10
![Page 26: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/26.jpg)
Instalando o CodeBlocks
Baixe o arquivo
21/03/14 26Editor de Código
Compilar – Ctrl+F9
Executar – Ctrl+F10
![Page 27: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/27.jpg)
21/03/14 27
Instalando o Turbo C
Rode o programa Turboc.exe Em extract to: digite: c:\tc e aperte o
botão start Com isso foi criado o diretório c:\tc Dentro desta pasta tem uma pasta
bin e dentro dela tem um programa TC.EXE.
Execute ele.
![Page 28: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/28.jpg)
21/03/14 28
Instalando o Turbo C
Vá em options – directories Em Include Directories coloque:
C:\tc\include Em Library Directories coloque:
C:\tc\lib
Pronto estamos aptos a programar!
![Page 29: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/29.jpg)
21/03/14 29
Turbo C - Básico
File – New Abre um novo programa
Run – Run (Ctrl + F9) Compila e roda o programa
Window – user screen (Alt + F5) Mostra a execução do programa
Alt + F1 - Help da linguagem F1 – Help do editor Turbo C
![Page 30: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/30.jpg)
21/03/14 30
#include
Chama uma biblioteca de comandos da linguagem C
Deve ser colocado no inicio do programa
#include <stdio.h> Chama a biblioteca padrão de
entrada e saída do C.
![Page 31: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/31.jpg)
21/03/14 31
Comentários
Texto informativo colocado no meio do código para facilitar o entendimento do programa.
Pode ser: //
Usado em uma linha /* texto */
Usado para várias linhas
![Page 32: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/32.jpg)
21/03/14 32
Função printf() – Escreva
Serve para escrever uma informação na tela do computador.
Sintaxe:
printf(“expr. de controle”, args);
![Page 33: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/33.jpg)
21/03/14 33
Função printf() – Escreva
Exemplos:
printf(“Meu primeiro programa”);
printf(“Este é o No. Dois: %d”,2);
printf(“%s esta a %d milhões de milhas \ndo sol”,”Venus”, 67);
printf(“Esta é a letra jota: %c “, ‘j’);
![Page 34: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/34.jpg)
21/03/14 34
Função printf() – Escreva
Códigos Especiais\n - Nova linha
\t - Tab
\” - Aspas
\\ - Barra
Códigos printf()%c - Caracter
%d - Decimal
%e - Notação científ.
%f - Ponto flutuante
%o - Octal
%s - String
%u - Decimal s/sinal
%x - Hexadecimal
![Page 35: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/35.jpg)
21/03/14 35
/* Primeiro programa
Desenvolvido pelo Pedro
Curso de Lógica de Programação */
#include <stdlib.h>// chama biblioteca
#include <stdio.h>// chama a biblioteca
main () { // inicia o programa
printf(“Olá Mundo”); // escreve na tela
system(“pause”);
} // finaliza o programa
![Page 36: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/36.jpg)
21/03/14 36
/* Programa que soma de 2 valores
Desenvolvido pelo Pedro
Curso de Lógica de Programação */
#include <stdio.h>// chama a biblioteca
#include <stdlib.h>// chama a biblioteca
main () { // inicia o programa
int valor1, valor2, resultado; // vars.
valor1 = 20;
valor2 = 30;
resultado = valor1 + valor2;
// escreve o valor de resultado na tela
printf(“A soma é %d”, resultado);
system(“pause”);
} // finaliza o programa
![Page 37: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/37.jpg)
21/03/14 37
/* Programa de media de 2 valores
Desenvolvido pelo Pedro
Curso de Lógica de Programação */
#include <stdio.h>// chama a biblioteca
#include <stdlib.h>
main () { // inicia o programa
float valor1, valor2, media; // vars.
valor1 = 20;
valor2 = 30;
media = (valor1 + valor2) / 2;
// escreve o valor da variavel média na tela
printf(“A média é %f”, media);
system(“pause”);
} // finaliza o programa
![Page 38: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/38.jpg)
21/03/14 38
Função scanf() – Leia
Serve para ler uma informação do teclado, e armazená-la em uma variável.
Sintaxe:
scanf(“expr. de controle”, args);
![Page 39: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/39.jpg)
21/03/14 39
Função scanf() – Leia
Exemplo:scanf (“%d”, &valor1); // lê um inteiro
scanf (“%f”, &valor1); // lê um float
scanf (“%s”, &nome); // lê uma string
scanf (“%c”, &letra); // lê uma letra
![Page 40: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/40.jpg)
21/03/14 40
O OPERADOR DE ENDEREÇO (&)
Representa um endereço de memória, que é a forma pela qual o computador usa para identificar uma variável
Toda variável ocupa uma área de memória e seu endereço é o do primeiro byte por ela ocupado
![Page 41: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/41.jpg)
21/03/14 41
O OPERADOR DE ENDEREÇO (&)
Ex :
int - 2 bytes
float - 4 bytes
char - 1 byte Quando usamos & precedendo uma
variável, estamos falando do endereço da mesma na memória
![Page 42: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/42.jpg)
21/03/14 42
/* Programa que soma 2 variáveis informadas
Desenvolvido pelo Pedro
Curso de Lógica de Programação */
#include <stdio.h>// chama a biblioteca
#include <stdlib.h>
main () { // inicia o programa
int valor1, valor2, resultado; // vars.
printf(“Informe o 1o valor”);
scanf(“%d”, &valor1);
printf(“Informe o 2o valor”);
scanf(“%d”, &valor2);
resultado = valor1 + valor2;
printf(“A soma é %d”, resultado);
system(“pause”);
} // finaliza o programa
![Page 43: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/43.jpg)
21/03/14 43
/* Progr. de media de 2 variáveis informadasDesenvolvido pelo PedroCurso de Lógica de Programação */#include <stdio.h>// chama a biblioteca#include <stdlib.h>main () { // inicia o programa float valor1, valor2, media; // vars. printf(“Informe o 1o valor”); scanf(“%f”, &valor1); printf(“Informe o 2o valor”); scanf(“%f”, &valor2); media = (valor1 + valor2) / 2; // escreve o valor da variavel média na tela printf(“A média é %f”, media); system(“pause”);} // finaliza o programa
![Page 44: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/44.jpg)
21/03/14 44
Exercícios – Lista Um
1. Leia 4 notas e informe a média.
2. Leia 2 valores e informe a soma, a subtracao, a multiplicacao e a divisao entre eles.
3. Leia base e altura e calcule a área de um triangulo
![Page 45: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/45.jpg)
21/03/14 45
Exercícios – Lista Um
4. Leia um grau Celsius e calcule seu equivalente em Fahrenheit
5. Calcule o volume de uma esfera de raio r
![Page 46: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/46.jpg)
21/03/14 46
Exercícios – Lista Um
6. Faça um programa que calcule as raízes usando baskara
7. Dado as coordenadas de dois pontos no espaço (x1, y1) e (x2, y2). Calcule a distância entre eles.
![Page 47: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/47.jpg)
21/03/14 47
Exercícios – Lista Um
8. Calcule o salário líquido de um funcionário, sabendo que sobre o salário bruto, incide-se um desconto de 8,5% para a previdência e sobre o restante, tem-se um desconto de 26,6% para o IR. Leia o salário bruto e mostre o salário líquido, o IR e a previdência.
![Page 48: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/48.jpg)
21/03/14 48
Exercícios – Lista Dois
1. Calcule x
2. Calcule z3. Uma revenda de automóveis paga a
seus vendedores dois salários mínimos fixos e mais uma comissão de R$ 100,00 por carro vendido e mais 5% do valor totals das vendas. Leia os dados necessários e calcule o salário de um vendedor.
![Page 49: Logica usando c_-_aula_1](https://reader034.fdocumentos.com/reader034/viewer/2022042503/559ba5a21a28abd9658b459c/html5/thumbnails/49.jpg)
21/03/14 49
Exercícios – Lista Dois
4. Calcule a média geométrica de quatro elementos (a,b,c,d)
5. Faça um algoritmo que leia um valor inteiro e positivo menor que 1000, e determine a soma de seus elementos. Ex. 397. 3 + 9 + 7 = 19
6. Em um consórcio, sabe-se o total de prestações, a quantidade de prestações pagas e o valor atual de cada uma. Escreva um programa que informe o total pago e o saldo devedor.