Buscar

Logica e programação - Comando de repetição

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Estácio de Sá 
Professor Rogério 	 	Disciplina: Lógica de Programação (algoritmos)
Curso de Engenharia Civil, Engenharia de Produção e Automação Industrial
Estruturas de repetição 
Existem 03 estruturas de repetição presentes na linguagem C.
1) while 
2) for
3) do {
 } while
Estrutura de repetição while
while (< condição >){
 < comando >
}
	Quando usamos a estrutura de repetição while, o <comando> somente será executado, se a <condição> é avaliada como verdadeira, caso a <condição> é avaliada como falsa, o <comando> será ignorado.
Comando de repetição for
É uma estrutura de repetição usada quando o número de repetições é conhecido durante a elaboração do algoritmo ou quando puder ser fornecido durante a execução. 
Estrutura do comando: for (valor inicial; condição; valor incremento) {
		 bloco de comandos; 
 }
valor inicial: - é uma expressão do tipo: <identificador> = <valor inicial>;
Ex: a = 0; // a variável a recebe o valor inicial 0.
condição: é uma expressão do tipo:
<identificador> <=, <, > ou >= <valor final>;
Ex: a <= 10; // a variável a poderá receber valores enquanto forem menores ou iguais a 10.
 c >= 2; // a variável c poderá receber valores enquanto forem maiores ou iguais a 2. 
valor incremento
<identificador> = <identificador> + ou – valor
 Ex: a = a + 1;
 c = c – 2;
 a ++;
 x --;
Obs: o número de repetições do bloco de comandos será igual ao número de termos da série, portanto, na maioria das vezes, não importam os valores que a variável que controla a repetição assumirá.
Exemplos de utilização:
Exemplo 1: Crie um programa que exiba na tela 50 sinais de igual (=).
#include <iostream.h>
main(){
 int x;
 x=1;
 while (x<=50){
 cout << "=";
 x=x+1;
 }
 cout <<"\n";
 system("pause");
} 
Exemplo 2: Crie um programa que exiba na tela a seguinte tela.
======================================================= (50 sinais de igual)
| |
| |
| |
| | (20 linhas de | |).
| |
| |
| |
| |
| |
: : 
| |
=======================================================
Exemplo 3: Sequências numéricas.
a) 1, 2, 3, 4, 5 , .. , 50
b) 2, 4, 6, 8, 10, .. , 100
c) 100, 98, 96, 94, .. , 2
 
	Exemplo 3a)
#include <iostream.h>
main(){
 int x;
 x=1;
 while (x<=50){
 cout << x << " ";
 x=x+1;
 }
 cout <<"\n";
 system("pause");
}
	Exemplo 3b)
	Exemplo 3c)
	
Simulação ou teste de mesa.
(Exercício 01) Desenvolva um programa que exiba na tela a seguintes sequencias: 1- 2 - 3 - 4 - 5
	#include <iostream.h>
main(){
 int x;
 x=1; 
 while (x <= 5){
 cout << x << " - ";
 x = x+1;
 } 
 cout << "\n"; 
 system("pause");
}
	Teste de mesa ou Simulação
 x saída
1
2
3
4
5
(Exercício 02) Desenvolva um programa que exiba na tela a seguintes sequencias: 8 8 8 8 8 8 8 8 8 8 8 8 8 
	#include <iostream.h>
main(){
 int x;
 x=1; 
 while (x <= 13){
 cout << " 8 ";
 x = x+1;
 } 
 cout << "\n"; 
 system("pause");
}
	Teste de mesa ou Simulação
 x saída
 8 8 8 8 8 8 8 8 8 8 8 8 8
 
 
 
 
 
 
 
Tarefa 3:
(Exercício 03a): Desenvolva a tabuada de um número qualquer.
1 x n = n
2 x n = 2n
3 x n = 3n
.......
10 x n = n2
(Exercício 03b) Desenvolva o seguinte programa utilizando Estruturas de Repetição, a cidade A tem 200000 e cresce ao ritmo de 2% ao ano; a cidade B tem 170000 e cresce ao ritmo de 3% ao ano. Contando a partir desse ano, em que ano a cidade B passará em população a cidade A.
(Exercício 03c): A cidadeA tem atualmente 150.000 habitantes e apresenta um crescimento médio de 2% ao ano. Calcule e exiba o ano em que ano a cidadeA irá ultrapassar a quantidade de 160.00 habitantes.
(Exercício 03d): A cidadeA tem atualmente 150.000 habitantes e apresenta um crescimento médio de 2% ao ano. A cidadeB tem atualmente 120.000 habitantes e apresenta um crescimento médio de 5% ao ano. Em que ano a cidadeB ultrapassará a cidadeA em quantidade de habitantes.
(Exercício 03e): Chico tem 1,50 metro e cresce 2 centímetros por ano, enquanto Zé tem 1,10 metro e cresce 3 centímetros por ano. Construa um programa que calcule e imprima quantos anos serão necessários para que Zé seja maior que Chico.
(Exercício 03f): Em uma eleição presidencial existem quatro candidatos. Os votos são informados através de códigos. Os dados utilizados para a contagem dos votos obedecem à seguinte codificação:  
- 1,2,3,4 = voto para os respectivos candidatos;
- 5 = voto nulo;
- 6 = voto em branco;
Elabore um algoritmo que leia o código do candidato em um voto. Calcule e escreva:
- total de votos para cada candidato;
- total de votos nulos;
- total de votos em branco;
Como finalizador do conjunto de votos, tem-se o valor 0.
(Exercício 03g)::  Escrever um programa que leia uma quantidade desconhecida de números e conte quantos deles estão nos seguintes intervalos: [0.25], [26,50], [51,75] e [76,100]. A entrada de dados deve terminar quando for lido um número negativo.
(Exercício 03h):: Escreva um programa que calcule o valor aproximado de PI (3,141592654...)
 
Exercícios Extras
(Exercício 04) Desenvolva um programa que exiba na tela o seu nome 5 vezes.
main(){
 int i;
 for (i=1; i<= 10; i=i+1){
 cout << " <seu nome > ";
 } 
 cout << "\n"; 
 system("pause");
}
(Exercício 5) Desenvolva um programa que solicite ao usuário 5 números quaisquer que representam a altura da turma, apresente a média desses valores.
main(){
 float altura, media, i;
 media = 0;
 for (i=1; i<=5 ; i=i+1) {
 cout << "Digite a sua altura : ";
 cin >> altura;
 media = media + altura; 
 } 
 media = media/5.0;
 cout << "A media das alturas da sala : "<< media <<"\n"; 
 system ("pause"); 
} 
(Exercício 6) Desenvolva um programa que leia as médias de N alunos e informe a situação de cada um deles (aprovado, se média >=6.0 e reprovado, caso contrário).
main(){
 float n, aprovado=0, reprovado=0, media , i;
 cout << "Entre com a quantidade de medias: ";
 cin>> n;
 for (i=1; i <= n ; i++) {
	 cout << "Entre com a nota do aluno: " ;
	 cin >> media;
	 if (media >= 6) {
		aprovado++; 
 }
	 else {
 reprovado++;
 }
 }
 cout << "Quantidade de aprovados: " << aprovado << “\n”;
 cout << "Quantidade de reprovados:" <<reprovado << “\n”;
 system ("pause"); 
} 
(Exercício 7) Desenvolva um programa que leia o peso de N alunos e informe quantos alunos pesam abaixo ou igual a 70 kg e quantos pesam mais de 70 kg.
(Exercício 8) Desenvolva um programa que leia a idade de 5 pessoas, calcule e exiba a maior e a menor idades digitadas.
main(){
 float idade, maior, menor , i; 
 maior = 0;
 menor = 999;
 for (i=1; i <= 5; i++) {
	 cout << "Entre com uma idade: ";
 cin >> idade;
	 if (idade > maior) {
	 	maior = idade;
 }	
	 if (idade < menor ) {
		menor = idade;
 }	
 }
 cout << " Maior idade: " << maior << "\n";
 cout << " Menor idade: " << menor << "\n";
 system ("pause"); 
}
(Exercício 9) Desenvolva um programa que leia as alturas de 6 pessoas, calcule e exiba a maior e a menor alturas digitadas.
(Exercício 10) Calculo do fatorial de número (considere como entrada de dados, o número 5)
main(){
 int i, numero, fatorial; 
 cout << "Digite um numero : ";
 cin >> numero;
 fatorial = 1;
 for (i=2; i <= numero ; i=i+1){
 fatorial = fatorial * i; 
 } 
 cout << "Fatorial de " << numero << " e " << fatorial << "\n"; 
 system("pause");
}
(Exercício 11) Cálculo dos valores que são divisores de um número inteiro e positivo (considere como entrada de dados, o número 20)
main(){
 int numero, i;
 cout << "Digite um numero : ";
 cin >> numero;
 cout << "Divisores : ";
 for (i=1; i<=numero; i++){
 if (numero % i == 0){
 cout << i << " ";
 }
 } 
 cout << "\n"; 
 system ("pause"); 
}
(Exercício 12) Desenvolva um programa que verifica se um número é PRIMO ou NÃO PRIMO.
main(){
 int i, n, primo; 
 cout << "Digite um numero : ";
 cin >> n;
 primo = 1;
 for (i=2; i < n ; i=i+1){
 if (n % i == 0){
 primo = 0; 
 } 
 } 
 if (primo == 1) { 
 cout << "O numero " << n << " e PRIMO \n";
 }
 else {
 cout << "O numero " << n << " nao e PRIMO \n"; 
 } 
 system("pause");
}
Atividade Estruturada de Lógica de Programação (AV2 e AV3)
Entregar no dia da prova AV2
Nome Completo: _________________________________________________________________
Tipos de Dados: Os dados necessários para a execução de um programa deverão ser identificados em um dos tipos abaixo:	
Na linguagem C, declaramos int para armazenar valores numéricos inteiros. 
Na linguagem C, declaramos char para armazenar valores alfanuméricos.
Na linguagem C, declaramos float para armazenar números de ponto flutuante, ou seja, com casas decimais.
Exercício 01		João tem 25 anos. (_______________)
			Esta classe tem 40 alunos. (_________________)
			Ana tirou 9.5 em matemática. ( _______________ )
			A altura de Pedro é 1.85m (____________________________)
			A placa daquele carro é “BPP 6745”. (________________)
			O nome dela é : “Maria”. (_____________________)
Exercício 02) Identificar o tipo de dado (inteiro, real, alfanumérico) de cada valor abaixo.
a) 21 : 		b) “bola” :		c) 0.21 :		d) 4 :		e) “0.21” :
Comandos condicionais ou comandos de seleção: permitem que executemos blocos de comandos apenas em determinadas situações. 
	Condicional Simples
if (condição) {
 comando1;
 comando2;
 ...
}
	Estrutura Condicional Composta
if (condição) {
 comando1;
}
else {
 comando2;
}
	Estrutura Condicional Aninhada
if (condição) {
 comando1;
}
else if (condição) {
 comando2;
}
else if (condição) {
 comando3;
}
else {
 comando4;
}
Exercício 3) Qual tipo de comando condicional é ideal para:
a) determinar se um número é maior que 7: _____________________________________
b) determinar se um número é par ou impar: _____________________________________
c) determinar se um número é positivo, negativo ou nulo: _____________________________________
d) Em uma escola, caso o aluno tenha média em uma disciplina menor ou igual a 5, ele estará reprovado com conceito “E”, caso a média esteja entre 5 e 6, estará aprovado com conceito “C”, entre 6 e 8, o conceito será “B” e acima de 8 o conceito será “A”. : _____________________________________
Exercicio 04) Considere o trecho do algoritmo (pseudocódigo):
Em relação às estruturas básicas de controle, o trecho de algoritmo acima refere-se à estrutura
I. condicional simples.
II. condicional composta.
III. de repetição.
IV. de decisão ou seleção.
Exercício 5) Quais são os operadores ARITMÉTICOS da linguagem C.
Exercício 6) Quais são os operadores RELACIONAIS da linguagem C.
Exercício 7) Quais são os operadores LÓGICOS da linguagem C.
Exercício 08) É utilizada para avaliar uma determinada expressão e definir se um bloco de código deve ou não ser executado. Essa é a definição da estrutura condicional:
a) for 	b) if...else	c) while		d) do...while 	e) while....do
Exercício 9) Qual a resposta produzida pelo programa abaixo, se os seguintes valores forem digitados para n1 e n2, respectivamente: 
a) 8 e 1, solução: “a resposta será 3”.
b) 1 e 4, solução: “_________________________________”.
c) 5 e 8, solução: “_________________________________”..
d) 0 e 12, solução: “_________________________________”.
main(){
 float n1, n2;
 cout << "Entre com 2 numeros : ";
 cin >> n1 >> n2; n1=1 n2 =4
 if ((n1 < 2) && (n2 < 5 )){
 cout << "a resposta sera: "<< n1+4 <<"\n";
 } 
 else if ((n1 > 1) && (n2 > 4)){
 cout <<" a resposta sera:" << n1+2 <<"\n";
 }
 else if ((n1 < 3) || (n2 > 10)){
 cout << " a resposta sera: " << n2+n1 << "\n";
 } 
 else{
 cout << " a resposta sera: "<< n2+2 << "\n";
 } 
 system("pause");
}
	Exercício 10)
1. Qual o resultado da variável Z após a execução do código abaixo? 
main() {
int x = 5; 
int y = 7; 
int z = 3; 
if  ( (x - 1) > 2 ) {
    y = y + 1; 
}
else { 
   y = y -1;
} 
z = z + x + y;
cout << " z vale " << z << "\n";
system("pause");
}
	Exercício 11)
2. Qual o resultado da variável Z após a execução do código abaixo? 
main() {
int x = 5; 
int y = 7; 
int z = 3; 
if  ( (x - 1) > 10 ) {
   y = y + 1; 
}
else { 
   y = y -1;
} 
z = z + x + y; 
cout << " z vale " << z << "\n";
system("pause");
}
Exercício 12) Considere as linhas de código abaixo e responda:
	1) if (x = 4) {
 y := x;
 }
	2) if (x <= 4) then 
 y := x; 
	3) if (x <= 4) {
 y = x; 
 }
	4) if (x =< 4){
 y = x;
 }
	5) if (x == 4) then
 y = x;
	
O comando válido em C é: 
a) 1		b) 2		c) 3		d) 4		e) 5
Exercício 13) Qual é o valor das variáveis a e b após a execução do seguinte trecho de programa. Assinale a alternativa correta:
main() {		
int a = 3;							A) a = 3 e b = 9
int b = 9;							B) a = 16 e b = 3 
if ( (b+1) > a )							C) a = 48 e b = 9
{ a = 2 + a * 2;						D) a = 16 e b = 9
 a = a * 2;							E) a = 48 e b = 18
 b = pow(b,0.5);
 }
 else {
 a = a *3;
 } 
b=pow (b,2);
cout << " a vale " << a <<"\n";
cout << " b vale " << b << "\n";
system("pause");
}
Exercício 14. Faça o teste no trecho do programa abaixo, e diga qual será o valor da variável Z ao final do processamento.
main() {
int a, b, z;
b = 12;
	A)
	18
	B)
	16
	C)
	4
	D)
	24
	E)
	26 
a = 4;
if ( a < 3 ) {
	 z = b * 2;
}
else {
if ( a < 10) {
	 	z = a + b;
 }
else {
	 	z = a;
 }
 }
cout << " z vale " << z << "\n";
system("pause");
}
(Exercício 15) Calculo do fatorial de número (considere como entrada de dados, o número 5)
main(){
 int i, numero, fatorial; 
 cout << "Digite um numero : ";
 cin >> numero;
 fatorial = 1;
 for (i=2; i <= numero ; i=i+1){
 fatorial = fatorial * i; 
 } 
 cout << "Fatorialde " << numero << " e " << fatorial << "\n"; 
 system("pause");
}
(Exercício 16) Cálculo dos valores que são divisores de um número inteiro e positivo (considere como entrada de dados, o número 20)
main(){
 int numero, i;
 cout << "Digite um numero : ";
 cin >> numero;
 cout << "Divisores : ";
 for (i=1; i<=numero; i++){
 if (numero % i == 0){
 cout << i << " ";
 }
 } 
 cout << "\n"; 
 system ("pause"); 
}
(Exercício 17) Desenvolva um programa que verifica se um número é PRIMO ou NÃO PRIMO.
main(){
 int i, n, primo; 
 cout << "Digite um numero : ";
 cin >> n;
 primo = 1;
 for (i=2; i < n ; i=i+1){
 if (n % i == 0){
 primo = 0; 
 } 
 } 
 if (primo == 1) { 
 cout << "O numero " << n << " e PRIMO \n";
 }
 else {
 cout << "O numero " << n << " nao e PRIMO \n"; 
 } 
 system("pause");
}
Exercício 18) Leia 4 números e mostre a média ponderada, sabendo-se que os pesos são respectivamente: 1, 2, 3 e 4.
Exercício 19) Ler as notas da 1a. e 2a. avaliações de um aluno. Calcular a média aritmética simples e escrever uma mensagem que diga se o aluno foi ou não aprovado (considerar que nota igual ou maior que 6 o aluno é aprovado). Escrever também a média calculada.
Exercício 20) Desenvolva um programa que leia dois nomes de pessoas e seus respectivos peso. Exiba na tela qual o nome da pessoa que apresenta maior peso. Nesse exemplo, quantos comandos de condição ou seleção serão necessários?
Exercício 21) Desenvolver um programa que efetue os seguintes cálculos.
Soma = 1 + 2 + 3 + 4 + ....+ N
Fatorial = 1 * 2 * 3 * 4 * .... * N
Exercício 22 ) Faça um programa para ler a base e a altura de um triângulo, em seguida, escreva a área do mesmo.
Area = (Base.Altura) / 2
Exercício 23 ) Para selecionar dois atletas por altura para uma partida de vôlei, suponha um programa com duas variáveis nome1 e nome2 que armazenam os nomes de dois atletas e duas variáveis alt1 e alt2 que guardam as alturas dos dois atletas respectivamente. Construa o trecho de programa na linguagem C++ que realize testes para que possa exibir na tela o nome do atleta mais alto. 
Exercício 24) Um funcionário recebe um salário fixo mais 4% de comissão sobre vendas. Faça um programa que receba o salário fixo do funcionário e o valor de suas vendas, calcule e mostre a comissão e seu salário final.
Exercício 25 ) Faça um programa para ler um valor e escrever se é positivo ou negativo (considere o valor zero como positivo).

Outros materiais