--------------------------------------------------------------------------    
MAC-115  - Turma T23 -  17 a 24/agosto/2007  -  Comando "while" 
                                             comando "if" e "if-else"
==============================================================================
         Comandos condicionais "if"  e " if-else"
---------------------------------------------------------------
/* 
 * arquivo: num_neg_a.c
 *
 * Este programa recebe como entrada uma sequencia de inteiros
 * nao-nulos cujo termino e' indicado por um 0 (sentinela).
 * O programa imprime (a) o numero de inteiros (nao-nulos) lidos
 * e (b) o numero de numeros estritamente negativos lidos. 
 */

#include <stdio.h>


int main()
{
    int x,			/* cada um dos numeros que serao lidos */
     conta,			/* total de inteiros nao-nulos */
     conta_neg;			/* total de inteiros negativos */

    conta = 0;
    conta_neg = 0;

    printf("De varios numeros inteiros e termine a colecao fornecendo o  zero\n");
    scanf("%d", &x);

    while (x != 0) {
	if (x < 0)
	    conta_neg++;
	conta++;

	scanf("%d", &x);
    }

    printf("Numero de inteiros nao-nulos lidos: %d.\n", conta);
    printf("Numero de inteiros negativos lidos: %d.\n", conta_neg);

    return 0;
}

--------------------------------------------------------/*
 * arquivo: aula_pratica.c
 *
 * Este programa le uma sequencia de n numeros inteiros,
 * para um dado n, e determina quantos deles sao pares
 * e quantos sao impares.
 *
 */

/**** Veja o uso do operador % (operador modulo: resto da divisao). ***/
/**** O resultado de x % y e' o resto da divisao inteira de x por y ***/
/**** Assim, para testar se um numero x e' par, basta fazer x % 2;  ***/
/**** o resultado e' 0 (zero) se x e' par, e 1 (um) se x e' impar ***/


#include <stdio.h> 

int main()
{
    int n,                      /* total de numeros que devem ser lidos */
     par,                       /* conta os numeros pares */
     impar,                     /* conta os  numeros impares */
     cont,                      /* conta os numeros `a medida que sao lidos */
     num;                       /* cada um dos numeros que serao lidos */

    printf("Entre com o valor de n: ");
    scanf("%d", &n);
    printf("Digite %d numeros inteiros\n", n);
    par = 0;
    impar = 0;
    cont = 0;
    while (cont < n) {
        scanf("%d", &num);
        if (num % 2 == 0)
            par = par + 1;
        else
            impar = impar + 1;
        cont = cont + 1;
    }

    printf("Foram dados  %d numero(s) par(es) e %d impar(es).\n",
           par, impar);
    return 0;
}

--------------------------------------------------
/*
 * Arquivo: prog1.20a.c
 * -------------------
 * Este programa é uma solução do Problema 1.20 do Caderno
 * de Exercícios: dados três números, imprimi-los em ordem
 * crescente.
 */
#include <stdio.h>

int main()
{
    int x, y, z;

    printf("Forneca 3 inteiros (separados por brancos): ");
    scanf("%d %d %d", &x, &y, &z);

    if (x <= y) {
        if (y <= z)
            printf("Temos %d <= %d <= %d\n", x, y, z);
        else if (x <= z)
            printf("Temos %d <= %d <= %d\n", x, z, y);
        else
            printf("Temos %d <= %d <= %d\n", z, x, y);
    } else if (x <= z)
        printf("Temos %d <= %d <= %d\n", y, x, z);
    else if (y <= z)
        printf("Temos %d <= %d <= %d\n", y, z, x);
    else
        printf("Temos %d <= %d <= %d\n", z, y, x);

    /* Parabens se voce conseguiu ler os if e if else acima */
    /* e entendeu! */

    return 0;
}
-----------------------------------------------------------------
/*
 * Arquivo: prog1.20b.c
 * --------------------
 * Este programa é uma solução do Problema 1.20 do Caderno
 * de Exercícios: dados três números, imprimi-los em ordem
 * crescente.
 */
#include <stdio.h>

int main()
{
  int x, y, z, t;

  printf("Forneca 3 inteiros (separados por brancos): ");
  scanf("%d %d %d", &x, &y, &z);

  if (x > y) {
    t = x;
    x = y;
    y = t;
  }
  /* agora x <= y */

  if (x > z) {
    t = x;
    x = z;
    z = t;
  }
  /* agora x <= y e x <= z */

  if (y > z) {
    t = y;
    y = z;
    z = t;
  }
  /* agora x <= y <= z */

  printf("Temos %d <= %d <= %d.\n", x, y, z);

  return 0;
}

Last modified: Wed Aug 29 18:44:25 BRT 2007