sexta-feira, 19 de maio de 2017

Comandos de Seleção e Comandos de Repetição



Comandos de Seleção

Comando IF

  • Formato Geral:
 if (condição) declaração;

No comando if, a expressão da condição será avaliada. Se for zero (falsa), a declaração não será executada. Se for diferente de zero (verdadeira), a declaração será executada. A declaração pode ser um bloco de código ou apenas um comando. É a maneira mais simples de representar uma tomada e decisão do tipo "se isto, então aquilo".


  • Formato if-else:
if (condição) declaração_1;
else declaração_2;

O comando else é um complemento do comando if. Fazendo uso dele, agora podemos executar uma declaração caso a condição seja falsa e uma outra diferente caso seja verdadeira. No entanto, é importante salientar que usando a estrutura if-else, sempre uma das duas declarações será executada. Nunca as duas, ou nenhuma.


  • Formato if-else-if:
if (condição_1) declaração_1;
else if (condição_2) declaração_2;
else if (condição_3) declaração_3;
.
.
.
else if (condição_n) declaração_n;
else declaração_final;

Nessa estrutura, o programa começa a testar as condições começando pela 1 e continua a testá-las até que ache uma expressão cujo resultado seja verdadeiro. Quando a encontra, executa a declaração correspondente. Apenas uma declaração será executada, ou seja, a primeira que for verdadeira. Caso todas sejam falsas, será executada a declaração final (opcional).


Comando SWITCH

  • Formato Geral:
switch (variável)
{
case valor_1:
declaração_1;
break;
case valor_2:
declaração_2;
break;
.
.
.
case valor_n:
declaração_n;
break;
default:
declaração_final;
}

O comando switch, assim como o comando if, é usado para tomada de decisão. No entanto, para assegurar um código elegante, enxuto e de fácil entendimento, ele pode ser usado como uma espécie de if-else-if, com a diferença de não aceitar expressões. Apenas constantes. O comando testa a variável e executa a declaração correspondente ao valor atual dessa variável. Caso o valor não seja igual a nenhuma das constantes, será executada a declaração final (opcional).


Comandos de Repetição

Comando FOR

  • Formato Geral:
for (inicialização;condição;incremento) declaração;

O comando for é utilizado para repetir um comando, ou bloco de comandos, repetidas vezes e de maneira controlada. Ele testa a condição, executa a declaração, incrementa a variável, e testa novamente. Ou seja, enquanto a condição for verdadeira será executada a declaração. Podemos utilizar o comando omitindo informações para termos efeitos diferentes: Se omitirmos a condição, o programa já não para mais de executar a declaração caso a condição seja falsa, gerando um loop infinito. Da mesma maneira, omitindo a declaração podemos fazer o programa "esperar" uma quantidade de tempo antes de prosseguir para a próxima linha de código.


Comando WHILE

  • Formato Geral:
while (condição) declaração;

O comando testa a condição, e caso verdadeira, é executada a declaração. Em seguida ele verifica a condição novamente, e assim por diante. É uma versão um pouco diferente do comando for. For parece ser mais apropriado quando o número de iterações do loop é conhecido antecipadamente. Por outro lado, em situações em que o número de repetições depende de outras variáveis, tornando difícil defini-lo, usa-se, preferencialmente while.


Comando DO-WHILE

  • Formato Geral:
do
{
declaração;
}
while (condição);

O comando do-while executa a declaração. testa a condição e, caso verdadeira, volta para a declaração. A principal diferença para for e while é que do-while garante que a declaração seja executada pelo menos uma vez.

COMANDOS DE SELEÇÃO E REPETIÇÃO

Comandos de Seleção

    If – Este comando é usado para executar um comando apenas se a condição descrita nele for verdadeira.
            If(condição) declaração;
            {comandos}

   Else – É utilizado após o if e executa um comando se a condição do if não for verdadeira.
            If(condição) declaração;
            {comandos}
            Else {comandos}


   Os comandos if e else podem ser utilizados dentro das condições de outros ifs e elses formando estruturas conhecidas como else-if e if-else, que analisam mais condições dependendo dos resultados das anteriores e executando seus respectivos comandos com base em suas próprias condições.
           
  Switch – Testa uma variável e executa um comando dependendo do seu valor. Os valores são comparados com os valores que acompanham os cases.
           
                    Switch (variável) declaração;
                        case valor1: declaração; break;
                        case valor2: declaração; break;
                        case valor3: declaração; break;
(opcional)   default: declaração; break;



  O default é acionado quando o valor da variável não é representado pelos valores testados nos cases. O break para o switch e pula para o próximo comando (pode ser usado em outros comandos além do switch).


Comandos de Repetição

  While – Testa uma variável ou expressão e executa um comando enquanto for verdadeira.
            While (variável) {comandos}



   For – inicializa uma variável, testa a condição, incrementa ou decrementa e executa um comando enquanto a condição for verdadeira.

for(variável; condição; operação)
{comando}



  Do while – Executa um comando e testa a condição, se verdadeira executa o comando novamente e continua esse processo até que a condição seja falsa.
            do
            {comandos}
            while(condição);



Grupo: Algoritmx United: Arthur Dias, Arthur Napoleão, Henrick Bartolo e Matheus Rocha.

BREVES COMENTÁRIOS SOBRE OS COMANDOS WHILE, IF/ELSE, E FOR.

LEONARDO ALVES MARCELINO DOS SANTOS
Os comandos de seleção e repetição que estudamos até agora são o "while", o "if/else" e o "for".
While
O comando de seleção while é dividido em duas partes: a expressão de teste e o corpo da repetição, devendo se digitar: while(expressão do teste) seguido do corpo da repetição. Enquanto a condição for verdadeira, o comando é repetido. O comando pode ser apenas uma instrução do C ou um bloco de instruções entre chaves. EX.:
int contador = 0;

             while( contador < 5 )
             {
               printf( "contador = %d\n", contador);
               contador += 1;
             }
             printf("ACABOU !!!!\n");
Os comandos if e if-else são instruções que permitem a execução condicional de outros comandos.

if/else
Da forma completa, if-else, o comando-if é funciona quando a condição é verdadeira, caso não seja, o comando-else é executado.
Ocorre que em o else é desnecessário em algumas situações, e por isso a linguagem C permite a outra construção if (sem o else) desse comando. No diagrama, o bloco comando-else (quando a condição é falsa), se torna vazio, isto é, não existem comandos a serem executados pelo programa. Ex.:
#include <stdio.h>
int main ()
{
int num;
printf ("Digite um numero: ");
scanf ("%d",&num);
if (num>10)
      printf ("\n\nO numero e maior que 10");
else if (num==10)
        {
        printf ("\n\nVoce acertou!\n");
        printf ("O numero e igual a 10.");
        }
      else if (num<10)
             printf ("\n\nO numero e menor que 10");
return(0);
}
Nunca se deve esquecer de usar "{" e "}" após de escrever as condicionais.

For
Um comando for está sempre acompanhado de uma variável contadora que armazena quantas vezes o bloco de sentenças do for deve ser executado. Com ele observamos que o programa faz a inicialização, que atribui o valor inicial à variável contadora, e em seguida avalia a expressão, que determina se o valor da variável contadora está dentro do limite desejado. Se sim, o bloco de sentenças será executado e, em seguida, será executada a atualização, que altera o valor da variável contadora. Este processo se repetirá avaliando novamente a expressão. A sintaxe da estrutura for está na ilustrado abaixo:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]) {
int numero;
int divisor;
int resto;
 printf("Digite o numero: ");
 scanf("%d", &numero);
 for (divisor = 1; divisor <= numero; divisor++) {
 resto = numero % divisor;
 if (resto == 0) {
 printf("Divisor encontrado: %d \n", divisor);
 }
 }
return 0;
}
Grupo Avalon
 Comandos de repetição e comandos de seleção
 Os comandos de repetição e seleção deixam o programa mais completo, permitindo a possibilidade de criar programas mais desenvolvidos, podendo ser utilizados em atividades complexas. Os comandos de repetição habilitam o programa à ser utilizado quantas vezes a aplicação dele for necessária. Sem a necessidade de recomeçar após cada execução. Os comandos utilizados são: While: garante que o programa continuará a ser execução enquanto determinada condição for atendida, podendo ser alterada no decorrer do programa. Do While: possui praticamente a mesma função do comando while, ele garante que o programa continuará a ser execução enquanto determinada condição for atendida, podendo ser alterada no decorrer do programa.A única diferença é que ele permite a execução do programa primeiro e depois verifica se a condição de repetição do programa está sendo atendida. Muito útil em programa que muitas vezes precisam se executados apenas uma vez. For: É o comando mais simples de repetição na qual o programador estabelece previamente o números de vezes que o programa será utilizado, a partir de um contador que verificará o número de vezes que o programa está sendo executado. Quando ele atingir o valor previamente estabelecido ele encerrará o programa. Os comandos de seleção consistem em comandos de que verificam se um condição está mantida. Os comandos de repetição são: if/else: O if compara o valor recebido com o valor já estabelecido pelo programador. Se a condição for verdadeira ele executa determinada ação, se não, ele não continua a executar o programa. O else é o complemento do "if" permitindo a opção de executar uma ação caso a condição seja falsa. Switch: Possui a mesma função do comando "if/else", mas permitindo o uso de mais ações de acordo com o as condições estabelecidas.

Comandos de Seleção e Repetição - MECHMANIACS

Comandos de Seleção

   Estes comandos, como o próprio nome diz, permitem fazer uma seleção, a partir de uma ou mais alternativas, da ação que o computador deve tomar. A seleção é baseada no valor de uma expressão de controle. Em C, um valor pode ser testado através do comando if ou do comando switch


  • if

   Serve para escolher um entre dois comandos alternativos. Em C, a estrutura condicional é codificada da seguinte forma: 

if( condição ) comando1; else comando2

e funciona, conforme ilustrado na figura, da seguinte maneira: 

① avalia a condição, que deve ser uma expressão lógica; 
② se a condição for verdadeira, executa apenas o comando1
③ senão, executa apenas o comando2



Exemplo:



  • switch
   A estrutura de decisão múltipla é bastante adequada quando precisamos escolher uma entre várias alternativas previamente definidas, por exemplo, num menu. A decisão múltipla tem a seguinte forma básica:

switch( expressão ) { 
case constante1 : comando1; break;  
case constante2 : comando2; break;  
... 
case constantencomandon; break; 
default : comando; 


e funciona da seguinte maneira: 

① avalia a expressão, que deve ser do tipo char ou int
② encontra o case cuja constante é igual ao valor da expressão e executa todos os comandos seguintes até encontrar um comando break; 
③ se não existe tal caso, executa as instruções associadas ao caso default



Exemplo:




Comandos de Repetição


   Os comandos de repetição (ou iteração) especificam a execução de loops, isto é, fazem com que os outros comandos que eles controlam sejam executados zero ou mais vezes. Em C, um loop pode ser determinado através dos comandos for, while e do-while.


  • for
   A estrutura de repetição com contador tem seu funcionamento controlado por uma variável que conta o número de vezes que o comando é executado. Em C, essa estrutura é implementada pelo comando for, cuja forma básica é a seguinte:

for( inicialização; condição; alteração ) comando; 

A inicialização é uma expressão que atribui um valor inicial ao contador, a condição verifica se a contagem chegou ao fim e a alteração modifica o valor do contador. Enquanto a contagem não termina, o comando associado ao for é repetidamente executado. O funcionamento dessa estrutura pode ser acompanhado na figura a seguir: 





Exemplo:
Uma contagem progressiva


A saída produzida pelo código será 1 2 3 4 5 6 7 8 9.


  • while
while( condição ) comando;

   Seu funcionamento é controlado por uma única expressão, sua condição, cujo valor deve ser verdadeiro para que o comando seja repetido. A repetição para somente quando sua condição torna-se falsa.  






Exemplo:

O programa ao lado é executado enquanto i for menor que 100













  • do-while


   Ao contrário dos laços for e while, que testam a condição do lago no começo, o laço do-while verifica a condição ao final do laço. Isso significa que um laço do-while sempre será executado ao menos uma vez. A forma geral do laço do-while é:

do {
comando;
} while(condicao);




O laço do-while repete até que a condição se torne falsa. Dizemos que o comando do-

while é um loop com teste no final.




Exemplo:

























Referências:


  1. PEREIRA, S. L. Linguagem C. Editora Érica, 2001. 136p.
  2. Apostila "Linguagem de Programação C++" - Professora Isabel Harb Manssour (PUCRS)
  3. Apostila "Programação em C"- Professor Flávio Giraldeli (IFES/Serra)