introduÇÃo a programacao aula 2

Upload: estevao-lima

Post on 09-Mar-2016

217 views

Category:

Documents


0 download

DESCRIPTION

AULA TEÓRICA SOBRE ESTRUTURA DE PROGRAMAÇÃO PARA INICIANTES

TRANSCRIPT

  • 1Introduo Programao

    Vania Bogorny e

    Deise Saccol

    Adaptado de slides das Profas. Patrcia Jaques e Mnica Py

  • 2 ESTRUTURAS DE DECISO Comandos de deciso ou desvio fazem parte das

    tcnicas de programao, para construir estruturas de algoritmos que no so totalmente seqenciais.

    Com as instrues de desvio pode-se fazer com que o algoritmo proceda de uma ou outra maneira, de acordo com as decises lgicas tomadas em funo dos dados ou resultados anteriores.

    As principais estruturas de deciso so: SE...ENTO

    SE...ENTO...SENO

    CASO FOR...ENTO

    Lgica de programao

  • 3- Formato: Se ento

    Significado: Se a resultar em verdadeiro, ento executar as . Seno, simplesmente ignorar as e seguir para a prxima instruo no algoritmo.

    Usada para decidir se um conjunto de aes opcionais deve ser executado ou no, dependendo do valor de algum dado ou de algum resultado que j tenha sido calculado no algoritmo. O valor do dado ou do resultado anterior ser testado na operao lgica.

    Lgica de programaoSE ... ENTO ...

  • 4 Exemplo da estrutura SE...ENTO:Avisar se um nmero lido for negativo.

    PSEUDOCDIGO:

    Ler N

    Se (N < 0)

    ento exibir negativo!

    FLUXOGRAMA:

    Lgica de programao

    INCIO

    negativo!

    FIM

    N

    N < 0Sim

    No

    OPERAO LGICA:

    Poder ser V ou F, depen-

    dendo do valor de N, que

    foi lido antes.

  • 5- Formato:Se ento

    seno

    Significado: Se a resultar em verdadeiro, ento executar . Seno, ignorar e executar .

    Usada para decidir entre duas alternativas de aes. Um dos dois conjuntos de aes ser executado e o outro no, dependendo do valor de algum dado ou de algum resultado que j tenha sido calculado no algoritmo. O valor do dado ou do resultado anterior ser testado na operao lgica, determinando qual conjunto de aes ser executado.

    Lgica de programaoSE ... ENTO ...SENO...

  • 6 Exemplo da estrutura SE...ENTO...SENO:Mostrar a diferena entre 2 nmeros quaisquer.

    PSEUDOCDIGO:

    Ler N1

    Ler N2

    Se (N1 > N2) ento DIF = N1 - N2seno DIF = N2 - N1

    Mostrar DIF

    (Obs.: Este algoritmo funciona mesmo se os dois nmeros forem iguais, pois ser calculado N2 - N1, o que resultar em 0. Tambm funciona se um ou ambos forem negativos. Experimente!)

    Lgica de programao

  • 7 FLUXOGRAMA:

    Lgica de programao

    INCIO

    DIF

    FIM

    N1 > N2Sim

    N1

    N2

    NoDIF = N1 - N2DIF = N2 - N1

  • 8Se ... Ento ... Seno ... encadeados

    Se ento

    seno se ento

    seno

    Exemplo:

    se (valor10) ento res = 2;

    seno res = 3;

  • 9 Formato:Caso ento Caso ento Caso ento Caso

    Significado: Se for igual a , ento executar . Se for igual a , ignorar e executar , e assim por diante.

    Usada para escolher apenas um conjunto de aesdentre vrios alternativos. Aqui o teste no mais uma operao lgica: o prprio valor de algum dado ou resultado anterior (que pode ser de outros tipos alm do lgico) que vai determinar qual desses conjuntos de aes ser executado.

    Lgica de programaoCASO ... ENTO...

  • 10

    Exemplo da estrutura CASO...ENTO:Escolher uma das 4 operaes bsicas para aplicar em dois nmeros.

    PSEUDOCDIGO:

    Ler N1

    Ler N2

    Ler OPERACAO (que ser do tipo caractere)

    Caso OPERACAO:+ ento RESULT = N1 + N2- ento RESULT = N1 - N2* ento RESULT = N1 * N2/ ento RESULT = N1 / N2caso contrario exibir Operao no vlida!

    Exibir RESULT

    Lgica de programao

  • 11

    FLUXOGRAMA:

    Lgica de programao

    INCIO

    R

    FIM

    OPER

    N1, N2

    OPER

    R = N1 + N2 R = N1 - N2 R = N1 * N2 R = N1 / N2

    + - * /

  • 12

    Introduo Linguagem C

    Deise Saccol

    Adaptado de slides das Profas. Patrcia Jaques e Mnica Py

  • 13

    Estrutura condicional simples

    Comando ifif (condio)

    comando;

    if (condio) {

    comando1;

    comando2;

    comando3;

    }

    if (a

  • 14

    Estrutura condicional composta

    Comando if...elseif (condio)

    comando;

    else

    comando;

    if (condio) {

    comando1;

    comando2;

    }

    else {

    comando3;

    comando4;

    }

    if (peso= =peso_ideal)

    printf (Vc est em forma!);else

    printf (Necessrio fazer dieta!);

    em pseudo-cdigo:se (peso= =peso_ideal)

    entao exibir Vc est em forma!senao exibir Necessrio fazer dieta!

    Executa o comando se a condio for qualquer coisa diferente de zero!

  • 15

    Estrutura SWITCH

    switch (numero){case 1: printf ("Janeiro\n"); break;case 2: printf ("Fevereiro\n"); break;case 3: printf ("Marco\n"); break;case 4: printf ("Abril\n"); break;case 5: printf ("Maio\n"); break;case 6: printf ("Junho\n"); break;case 7: printf ("Julho\n"); break;case 8: printf ("Agosto\n"); break;case 9: printf ("Setembro\n"); break;case 10: printf ("Outubro\n"); break;case 11: printf ("Novembro\n"); break;case 12: printf ("Dezembro\n"); break;default: printf (Mes invalido\n");

    }

  • 16

    Exerccio 1

    1) Dados dois nmeros A e B, some 100 ao maior nmero e imprima.

    #include #include main(){

    int A, B, soma;printf ("Digite o valor de A: ");scanf ("%d", &A);printf ("Digite o valor de B: ");scanf ("%d", &B);if (A>B)

    soma=A+100;else

    soma=B+100;printf ("O maior valor adicionado de 100 resulta em %d\n", soma);system("pause");

    }

  • 17

    Exerccio 2

    2) Escreva um algoritmo para determinar se uma pessoa maior ou menor de idade.

    #include

    #include

    main (){

    int idade;

    printf ("Digite a idade da pessoa: ");

    scanf ("%d", &idade);

    if (idade>=18)

    printf ("Pessoa eh maior de idade.\n");

    else

    printf ("Pessoa eh menor de idade.\n");

    system("pause");

    }

  • 18

    Exerccio 3

    Ou utilizando boolean:

    #include #include main (){int idade;bool status;printf ("Digite a idade da pessoa: ");scanf ("%d", &idade);if (idade>=18)

    status=true;else

    status=false;if (status)

    printf ("Pessoa eh maior de idade.\n");else

    printf ("Pessoa eh menor de idade.\n");system("pause");}

  • 19

    Exerccios

    4) Faa um algoritmo que leia a quantidade comprada de um produto e o preo unitrio deste produto.

    - Se o preo total a ser pago for inferior a R$ 100, ento fornea um desconto de 5%.

    - Se o preo total a ser pago ficar entre 100 e 1000, ento fornea um desconto de 5% e armazene um bnus de 5% em cima do valor total.

    - Se o preo total a ser pago for superior a 1000, ento fornea um desconto de 10%, armazene um bnus de 5% em cima do valor total e escreva na tela que o cliente ser cadastrado como Cliente Vip.

  • 20

    #include #include main(){

    int qtdade;float preco, valorTotal, descontado, bonus;printf ("\nDigite a qtdade: ");scanf ("%d", &qtdade);printf ("\nDigite o preco unitario: ");scanf ("%f", &preco); valorTotal=qtdade*preco;if (valorTotal=100 && valorTotal1000)//poderia ser soh: else{

    descontado=valorTotal*0.90;bonus=valorTotal*0.05;printf ("\n Cliente vip!\n");

    } printf ("\n Valor Total eh %.2f\n", valorTotal);printf ("\n Valor com desconto eh %.2f\n", descontado);printf ("\n Bonus eh %.2f\n", bonus);system("pause");

    }

  • 21

    Exerccios

    Fazer lista de exerccios parte 1

    Fazer lista de exerccios parte 2