algoritmos x programação algoritmo algoritmo é um conjunto finito de regras, bem definidas, para...

42
Algoritmo e Programação

Upload: internet

Post on 21-Apr-2015

113 views

Category:

Documents


0 download

TRANSCRIPT

  • Slide 1
  • Slide 2
  • Algoritmos x Programao Algoritmo Algoritmo um conjunto finito de regras, bem definidas, para a soluo de um problema em um tempo finito. Programa Programa um algoritmo codificado (escrito) em uma linguagem de programao (C/C++). linguagem C A linguagem C foi criada por Dennis Ritchie, em 1972, no centro de Pesquisas da Bell Laboratories. Ela uma linguagem de propsito geral, sendo adequada programao estruturada.
  • Slide 3
  • Diretivas de Compilao Comandos que indicam algumas tarefas a serem executadas antes do programa, como por exemplo a incluso de uma biblioteca. Biblioteca um conjunto de comandos j criados pela linguagem e que devem ser carregados previamente para poderem ser utilizados no programa. Sempre comea com #include e os arquivos tem extenso.h. Ex: #include inclui os comandos de entrada e sada de dados
  • Slide 4
  • Sintaxe do Programa Todo programa C inicia sua execuo na funo main(). No incio da funo existe um { e no final um }. Cada instruo encerra com ; (ponto e vrgula) que faz parte do comando. Comentrios so informaes que no sero executadas. Elas devem ser colocados das seguintes formas: /* comentrio */ ou // comentrio
  • Slide 5
  • Sintaxe do Programa A estrutura bsica de um programa C : #include main( ) { // rea de declarao de variveis /* rea de comandos do programa */ }
  • Slide 6
  • Constantes e Variveis O nome das variveis deve sempre comear com uma letra ou com o caractere _ e pode ser seguido por um ou mais caracteres alfanumricos. A linguagem C case sensitive, ou seja, para ela a varivel X e a varivel x so diferentes. Todas as variveis devem ser declaradas antes de poderem ser utilizadas. A forma de declarar : tipo nome_varivel;
  • Slide 7
  • Tipos de Dados Os tipos de dados existentes na linguagem C so: int : nmero inteiro float : nmero decimal char : caracter Comparando com algoritmo temos: inteiro int real float caracter char
  • Slide 8
  • Atribuio de Valores Para atribuir um valor a uma varivel na linguagem C utiliza-se o sinal de igual (=). Ex: int a; //cria a varivel de nome a a = 0; //atribui o valor 0 na varivel a A atribuio pode ser feita no momento da declarao da varivel: int a = 0; Comparando com algoritmo temos: a
  • Operadores Relacionais Maior que: > Maior ou igual: >= Menor que: < Menor ou igual:
  • Sada de Dados Na expresso podem ser includos caracteres de controle como: \n nova linha \t tab \b volta um caractere \" mostra caractere aspas \\ mostra caractere barra
  • Slide 15
  • Sada de Dados Para determinar a quantidade de casas decimais que ser usada ao imprimir um nmero real deve-se modificar o controle acrescentando essa informao. Ex: #include main() { float x=1234,56; printf(%f, x); //imprime 1234,56000000 printf(%4:2f,x); //imprime 1234,56 printf(%10:1f,x); //imprime 1234,5 }
  • Slide 16
  • Entrada de Dados A funo padro da linguagem C para entrada de dados pelo teclado o scanf(). scanf(expresso, argumentos); Comparando com algoritmo temos: leia(varivel) scanf(expresso, argumentos);
  • Slide 17
  • Entrada de Dados Na expresso deve-se determinar o tipo de valor que ser lido (%d ou %f ou %c) e no argumento tem o nome da varivel que receber o valor lido precedido pelo & para indicar que endereo de memria. Ex: scanf(%d, &x); //l um valor inteiro para varivel x scanf(%f, &y); //l um valor real para varivel y scanf(%c, &z); //l um caractere para varivel z
  • Slide 18
  • Comandos Condicionais Na linguagem C o comando condicional mais simples o if else. if (condio) comando1; else comando2; Comparando com algoritmo temos: se condio entao if (condio) comando1 comando1; Senao else comando2 comando2; fimse
  • Slide 19
  • Comandos Condicionais Ex: #include main() { int a,b; printf("digite dois nmeros:"); scanf("%d%d",&a,&b); if (b!=0) printf("%d\n",a/b); else printf("diviso por zero\n"); }
  • Slide 20
  • Comandos Condicionais No exemplo anterior o comando if tinha apenas uma nica instruo a ser executada. Para que possam ser executadas vrias instrues necessria usar a representao de instruo composta : Uma chave aberta ( { ) Uma sequncia de instrues (cada uma terminada por ponto e vrgula ;) Uma chave fechada ( } )
  • Slide 21
  • Comandos Condicionais Existe ainda uma estrutura condicional para casos de seleo mltipla: o switch - case. switch(varivel) { case valor1: comandos 1; break; case valor2: comandos 2; break;... default: comandos; }
  • Slide 22
  • Comandos Condicionais A varivel testada sucessivamente comparando com os valores de cada caso. Ao encontrar uma coincidncia, o comando ou o bloco de comandos executado. Se nenhuma coincidncia for encontrada o comando default ser executado. O default opcional. A sequncia de comandos executada at que o comando break seja encontrado. Se no houver o comando break, todos os comandos abaixo sero realizados em sequncia, mesmo que estejam declarados em outro bloco de comandos.
  • Slide 23
  • Comandos Condicionais Comparando com algoritmo temos: switch (varivel) escolha varivel{ caso valor1 case valor1: comandos 1 comandos 1; caso valor2 break; comandos 2 case valor2:... comandos 2; outrocaso break; comandos... fimescolha default: comandos; }
  • Slide 24
  • Comandos Condicionais Ex: #include main() { int x; printf("1. incluir\n"); printf("2. alterar\n"); printf("3. excluir\n"); printf("Digite sua opo:"); scanf(%d,&x); switch(x) { case 1: printf("escolheu incluso\n"); break; case 2: printf("escolheu alterao\n"); break; case 3: printf("escolheu excluso\n"); break; default: printf("opo invlida\n"); }
  • Slide 25
  • Comandos de Repetio O comando mais simples de repetio o for que define um valor inicial a uma varivel e vai modificando-o automaticamente a cada execuo: for(inicializao; condio; incremento) comando; Inicializao: atribuio de um valor varivel de controle; Condio: teste que verifica quando o comando de repetio ser encerrado; Incremento: modificao que ser realizada no valor da varivel a cada execuo
  • Slide 26
  • Comandos de Repetio Comparando com algoritmo temos: para varivel de valor-inicial ate valor-fim faca comando fimpara for(inicializao; condio; incremento) comando;
  • Slide 27
  • Comandos de Repetio Ex: Imprime valores de 1 a 100 um em cada linha. #include main() { int x; for(x=1;x