Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Estruturas de Controle Aula nº 07 Estrutura de Seleção Múltipla switch Estrutura de Repetição do/while * * */24 A estrutura de seleção múltipla switch É utilizada quando se quer especificar ações condicionadas a uma série de decisões nas quais uma variável ou expressão é testada para cada um dos valores constantes que ela pode assumir. * * */24 A estrutura de seleção switch Como se trata de uma estrutura de seleção múltipla, podemos dizer que a estrutura switch equivale a uma série de if’s (ou if-else’s) em que as condições consistem sempre em comparar uma mesma variável (ou expressão) com diferentes valores possíveis; Consiste de uma série de rótulos case e um caso default. * * */24 A estrutura de seleção switch switch (expressão) { case a: ações; break; ... case n: ações; break; default: ações; break; } * * */24 Exemplo Considere que em uma avaliação aplicada são atribuídos conceitos aos alunos: A, B, C, D, e E. Faça um programa que receba o conceito atingido por cada aluno e conte o número de ocorrências de cada conceito na turma, isto é, quantos conceitos A, quantos conceitos B, etc. * * */24 #include <iostream> using namespace std; int main() { char conceito; int contA, contB, contC, contD, contE; contA=contB=contC=contD=contE=0; cout<< "Forneça os conceitos." << endl << "Digite <ctrl-z> para terminar a entrada de dados." << endl ; * * */24 while ( (conceito =cin.get( ) ) != EOF) { switch (conceito ) { case 'A': case 'a': ++contA; break; case 'B': case 'b': ++contB; break; case ‘C': Case 'c': ++contC; break; * * */24 case ‘D': case ‘d’: ++contD; break; case ‘E': case ‘e': ++contE; break; default: cout<< “"Este conceito nao existe, digite um novo conceito " << endl; nota =cin.get( ) * * */24 case ‘E': case ‘e': ++contE; break; default: cout<< “Este conceito nao existe, digite um novo conceito ” << endl; nota =cin.get( ) case ‘\n’: case ‘\t’: case ‘ ’: break; * * */24 default: cout<< “Este conceito nao existe, digite um novo conceito ” << endl; break; } // fim do switch } // fim do while cout <<“\n\nOs totais por conceito são:” << “\nA: ” << contA * * */24 cout <<“\n\nOs totais por conceito são:” << “\nA: ” << contA << “\nB: “ << contB << “\nC: “ << contC << “\nD: “ << contD << “\nE: “ << contE << endl ; return 0; } // fim de main * * */24 #include <iostream> using namespace std; int main( ) { char conceito; int contA=0, contB=0, contC=0, contD=0, contE=0; cout << "Forneça os conceitos." << endl "Digite <ctrl-z> para terminar a entrada de dados." << endl ; * * */24 while ( (conceito =cin.get( ) ) != EOF) { switch (conceito) { case 'A': case 'a': ++contA; break; case 'B': case 'b': ++contB; break; ... case 'E': case 'e': ++contE; break; default: cout<<"Este conceito nao existe,digite um novo conceito"<< endl; break; } // fim do switch } // fim do while * * */24 cout <<"\n\nOs totais por conceito sao:" << "\nA: " << contA << "\nB: " << contB << "\nC: " << contC << "\nD: " << contD << "\nE: " << contE << endl ; return 0; } // fim de main * * */24 case a Fluxograma * * */24 A Estrutura de repetição do/while Semelhante à estrutura while; Nesse caso, o laço sempre é executado pelo menos uma vez; O laço é executado e só depois a condição é testada. * * */24 do corpo while (condição); A Estrutura de repetição do/while { } * * */24 Saída: Exemplo ... int main ( ) { int i = 1; do { cout << i << “ ”; } while ( ++i <= 10); cout << endl; ... } 1 2 3 4 5 6 7 8 9 10 * * */24 Fluxograma condição true * * */24 Os comandos break e continue Alteram o fluxo de controle; break (dentro de while, for, do/while ou switch) provoca a saída imediata da estrutura passando para a primeira linha após esta. * * */24 Saída: 1 2 3 4 5 6 7 8 9 10 Saiu do laço com x = 11 Exemplo ... int main ( ) { int x; for (x=1; x<=10; x++) { cout << x << “ ”; if (x == 5) break; } cout << “\n Saiu do laço com x = ” << x << endl; } * * */24 Saída: 1 2 3 4 5 Saiu do laço com x = 5 ... int main ( ) { int x; for (x=1; x<=10; x++) { cout << x << “ ”; if (x == 5) break; } cout << “\n Saiu do laço com x = ” << x << endl; } * * */24 Os comandos break e continue continue (dentro de while, for, ou do/while) salta os comandos restantes do corpo do laço e prossegue com a próxima repetição. * * */24 Saída: 1 2 3 4 6 7 8 9 10 Exemplo ... int main ( ) { int x; for (x=1; x<=10; x++) { if (x == 5) continue; cout << x << “ ”; } cout << “\n Pulou o 5 ! << endl; } Pulou o 5 ! * * */24 Operadores lógicos “e” lógico: && (curso == 1) && (idade<20) “ou” lógico: || (idade <= 20) || (idade>=50)
Compartilhar