Escolar Documentos
Profissional Documentos
Cultura Documentos
Corr Ficha03 Mod02 Ciclos
Corr Ficha03 Mod02 Ciclos
Ficha n2.3
Correo
Contedos:
Exemplo:
int i = 1;
while (i <= 10) {
cout << i << " ";
i++;
}
Pgina 1 de 11
Programao
Ficha n2.3
Exemplo:
int i = 1;
do {
cout << i << " ";
i++;
} while (i <= 10);
Exemplo:
for (int i = 1; i <= 10; i++ )
cout << i << " ";
Pgina 2 de 11
Programao
Ficha n2.3
Termina o ciclo.
continue:
Faz
com
instrues
que
do
ciclo
ciclo
continue
que
se
sem
seguem
executar
continue.
Exemplo:
#include <iostream>
using namespace std;
void main() {
int i=0, nota, soma;
char c;
cout << "Introduza as notas dos seus 4 testes:\n";
i=0;
soma = 0;
while ( i < 4 ) {
cout << "Teste " << i << ": ";
cin >> nota;
soma += nota;
// varivel acumulador soma
i++;
}
cout << "Media dos 4 testes " << (float)soma / 4 << "\n\n";
do {
cout << "Introduza uma letra maiscula: ";
cin >> c;
if ( c == # ) break;
} while ( c < 'A' || c > 'Z' );
cout << "A letra introduzida foi : " << c << "\n\n";
cout << "Nmeros pares at 20 sem o 14\n";
for( i=2; i<=20; i+=2){
if ( i == 14 ) continue;
cout << i << " ";
}
}
Pgina 3 de 11
as
instruo
Programao
Ficha n2.3
a)
b)
c)
d)
Pgina 4 de 11
Programao
Ficha n2.3
a)
b)
c)
d)
e)
f)
g)
Pgina 5 de 11
Programao
h)
Ficha n2.3
x
x
x
x
x
x
x
4 = 8
5 = 10
6 = 12
7 = 14
8 = 16
9 = 18
10 = 20
Pgina 6 de 11
Programao
Ficha n2.3
a)
b)
c)
d)
Pgina 7 de 11
Programao
Ficha n2.3
5. Escreva um programa que l uma srie de valores positivos reais. A recolha de dados
termina quando for indicado um valor negativo. O programa tambm calcula a soma
dos valores escritos. (Utilize a estrutura dowhile).
float num, somatorio ;
somatorio = 0;
cout << "Soma dos numeros positivos introduzidos.";
cout << (Introduza um n negativo para parar)\n\n";
do {
cout << " Nmero: ";
cin >> num ;
somatorio += num;
} while( num > 0 );
somatorio -= num; // retira o ltimo n negativo, que foi somado
cout << "A soma dos valores positivos escritos " << somatorio << " ";
cout << endl << endl;
6. Escreva um programa que calcule a soma dos primeiros 5 primeiros nmeros inteiros.
(Utilize a estrutura while).
int k;
k = 1;
soma = 0;
while (k <= 5) {
soma += k;
k++;
}
cout << "A soma dos primeiros 5 inteiros (1 a 5) " << soma << " " ;
Pgina 8 de 11
Programao
Ficha n2.3
8. Crie um programa que dado um nmero inteiro positivo e um dgito, conta o nmero de
vezes que esse dgito ocorre no nmero.
int y, z, d, conta, ultimo;
cout << "Diga um nmero: ";
cin >> y;
cout << "Diga o digito a contar: ";
cin >> d;
conta = 0;
z = y;
do {
ultimo = z % 10;
if (d == ultimo)
conta++;
z /= 10;
} while (z != 0);
cout << d << " aparece " << conta << " vezes em " << y;
cout << endl << endl;
10. Qual o valor da varivel inteira x depois do seguinte cdigo ser executado?
x=1;
for(i=2; i<10 ; i++){
if (i%3==0) continue;
x+=i;
}
Resposta:
x
== 27
Porque x = 1 + 2 + 4 + 5 + 7 + 8 = 27
(3 , 6 e 9 no so somados porque so mltiplos de 3, i.e. o
resto da diviso inteira por 3 zero (i%3==0) )
Pgina 9 de 11
Programao
Ficha n2.3
11. Escreva um programa que dado um nmero inteiro positivo, retorna o seu factorial.
Exemplo: factorial de 4 : 1 x 2 x 3 x 4 = 24
int fatorial, n, j;
cout << "Qual o nmero para calcular o seu fatorial?";
cin >> n;
if (n >= 0) {
fatorial = 1;
for (j = 2; j <= n; j++)
fatorial *= j;
cout << n << "! = " << fatorial;
}
else
cout << "Fatorial calculado apenas com nmeros positivos!!!";
cout << endl << endl;
int fatorial, n, j;
cout << "Fatoriais de 1 a 8:";
for (int n = 1; n <= 8; n++) {
fatorial = 1;
for (int j = 2; j <= n; j++)
fatorial *= j;
cout << n << "! = " << fatorial << "\n";
}
if( i==10)
if( i==10)
continue;
break;
else
else
Pgina 10 de 11
Programao
Ficha n2.3
Pgina 11 de 11