Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Gustavo Rodrigues Torre

[Fixo]Repetição e Decisão

Recommended Posts

Bom galera ai vai o material q eu usei no 1º sem. de algoritmo.

 

ALTERNATIVA

•Definição: A ação vai depender de um teste anterior.

 

Tipos de alternativas

 

ALTERNATIVA SIMPLES: Se, então, fim-se / If, then, end-if

 

 

o Estrutura:em Portugol:

 

Se  <condição>
						   então
							  Comando-1;
							  Comando-2;
									  :
							  Comando-n;
						Fim-se;

o Exemplo: Algoritmo que, dado um número, identifica se é par.

 

Início
									Variáveis:
									   Inteiro:	 N, X;
									   Caracter: Mensagem; 
									Instruções:
									   Leia (N);
									   X   <-   Resto (N,2);
									   Se  X = 0
										  então
											 Mensagem   <-   'É UM NÚMERO PAR';
											 Imprima (N,Mensagem);
									   Fim-se;					
								  Fim.

•ALTERNATIVA COMPOSTA: Se, então, senão, fim-se - If, then, else, end-if

 

o Estrutura em Portugol:

 

Se  <condição>;
									 então
										Comando-1;
										Comando-2;
									 senão 
										Comando-3;						 
										Comando-4;
								  Fim-se;

o Exemplo: Algoritmo que, dado um número, identifica se é par ou ímpar.

 

Início
									   Variáveis:
										  Inteiro:	 N, X;
										  Caracter: Mensagem; 
									   Instruções:
										  Leia (N);
										  X   <-   Resto (N,2);
										  Se  X = 0
											 então
												Mensagem   <-   N  +  'É UM NÚMERO PAR';
											 senão 
												Mensagem   <-   N  +  'É UM NÚMERO IMPAR';
										   Fim-se; 
										   Imprima (Mensagem);
									Fim.

•ALTERNATIVA ANINHADA / ENCADEADA:

 

o É um agrupamento de alternativas.

 

o Normalmente, ocorre quando uma ação ou bloco de ações, deve ser executado, quando um grande conjunto de possibilidades ou combinações de situações for satisfeito.

 

o Estrutura em Portugol:

 

Se  <condição-1>
								 então
									Comando-1;
								senão
									Se  <condição-2>
									   então
										   Comando-2;
									   senão
										  Se  <condição-3>
											 então
												Comando-3;
											 senão
												Comando-4;
										  Fim-se;
									Fim-se;
							 Fim-se;

o Exemplo: O que será impresso depois da execução do algoritmo abaixo para:

 

 

a) Num = 10 B ) Num = -20 c) Num = 0

 

 

Início
								   Variáveis:
									  Inteiro:	 Num;
									  Caracter: Mensagem;  
									Instruções:
									   Leia (Num);
									   Se  Num  >  0
										  então
											 Mensagem   <-   'NÚMERO POSITIVO';
										  senão
											 Se  Num  <  0
												então
												   Mensagem   <-   'NÚMERO NEGATIVO';
												senão
												   Mensagem   <-   'NÚMERO NULO';
											 Fim-se; 
									   Fim-se;
									   Imprima (Num,Mensagem);
								Fim.

SELEÇÃO DE MÚLTIPLA ESCOLHA:

 

o Estrutura em Portugol:

 

Escolha  <variável>
							   Caso   <variável>  =  X1, Y1, Z1 :  Comando-1;
							   Caso   <variável>  =  X2, Y2, Z2 :  Comando-2;
							   :
							   Caso   <variável>  =  Xn, Yn, Zn :  Comando-n;
							   Senão :										Comando-p;
							Fim-escolha;

o Exemplo: Algoritmo que, dado a Idade de um nadador, classifique-o nas

categorias:

 

a. Fraldinha - até 4 anos.

b. Infantil - 5 a 10 anos.

c. Juvenil - 11 a 17 anos.

d. Senior - maiores de 18 anos, inclusive.

 

 

Início
								   	   Variáveis:
											 Caracter: Categoria;
											 Inteiro:	 Idade;
								   	   Instruções: 
												 Leia (Idade);
												 Escolha Idade
													Caso Idade <=  4: Categoria   <-   'FRALDINHA';
													Caso Idade <= 10: Categoria   <-   'INFANTIL';
													Caso Idade <= 17: Categoria   <-   'JUVENIL';
													Senão:				   Categoria   <-   'SENIOR';
												 Fim-escolha; 
												 Imprima (Idade,Categoria);
										   Fim.

SOMADOR ou ACUMULADOR:

 

• Variável auxiliar, ou de processamento, utilizada para armazenar uma

somatória de valores.

 

• Deverá ser inicializada no começo do processo: Soma <- 0.

 

• Um novo valor processado deverá ser somado: Soma <- Soma + Valor.

 

FLAG:

 

• Valor de uma variável (normalmente, uma variável de entrada), que vai indicar o fim de um processo de repetição.

 

• Outros nomes:

 

- EOF : End of File

- FDA : Fim de Arquivo

 

Parte2: Repetição

 

Repetição

REPETIÇÃO COM TESTE NO INÍCIO : Enquanto, Fim-Enquanto - While, End-While

 

• Definição: Um conjunto de ações é executado repetidamente, enquanto uma determinada condição permanece válida.

 

o Estrutura em Portugol:

Enquanto  <condição>  faça
				   Comando-1;
				   Comando-2;
				   :	   :		:
				   Comando-n;
				Fim-enquanto;

Ex: Elaborar um algoritmo que calcula a soma de uma série de números

inteiros, dispostos em cartões, sendo o último deles = -1 - FLAG,

não considerado no processo.

 

 

Início											  {Encontra a soma dos valores}  
					Variáveis:		  
					   Inteiro: Valor, Soma;
					 Instruções:
						Soma   <-   0;						  {Inicializa a variável Soma}
						Leia (Valor);							{Primeira leitura}
						Enquanto  Valor <>  -1  faça
						   Soma   <-   Soma + Valor;   {Acumula valor} 
						   Leia (Valor);						 {Leitura dos demais valores}
						Fim-enquanto;
						Imprima ('O VALOR TOTAL É:',Soma);  {Mostra o resultado}  
				 Fim.

REPETIÇÃO COM TESTE NO FINAL

: Repita, até - Perform, until

 

• Definição: Os comandos são executados, pelo menos, uma vez. Quando a condição for encontrada, ela é testada:

 

o Se V (Verdadeira), o comando seguinte, fora da rotina, será executado.

 

o Se F (Falsa), os comandos do loop serão repetidos até que a condição

seja verdadeira.

 

o Observação: Equivale ao comando Enquanto, onde a <condição> do Repita é a negação da <condição> do Enquanto.

 

• Estrutura em Portugol:

 

Repita
				   Comando-1;
				   Comando-2;
				   :	   :		:
				   Comando-n;
				até  <condição>;

Ex:Elaborar um algoritmo que calcula a soma de uma série de números inteiros, dispostos em cartões, sendo o último deles = -1 ( Flag ), não considerado no processo.

 

Início											  {Encontra a soma dos valores}  
					Variáveis:		  
					   Inteiro: Valor, Soma;
					 Instruções:
						Soma   <-   0;						  {Inicializa a variável Soma}
						Leia (Valor);							{Primeira leitura}
						Repita
						   Soma   <-   Soma + Valor;   {Acumula valor} 
						   Leia (Valor);						 {Leitura dos demais valores}
						Até  Valor = -1;
						Imprima ('O VALOR TOTAL É:',Soma);  {Mostra o resultado}  
				 Fim.

REPETIÇÃO COM VARIÁVEL DE CONTROLE

 

• Estrutura em Portugol:

 

Para  v  de  i  até  f  passo  p  faça
				Comando-1;
				Comando-2;
				:	   :		:
				Comando-n;
			 Fim-para;

v - variável de controle.

 

i - valor inicial da variável v.

 

f - valor final da variável v.

 

p - valor do incremento/decremento dado à variável v.

 

o Toda vez que o Fim-para é encontrado, o valor inicial i é incrementado ou

decrementado de p - passo e o teste v <= f ou v >= f é feito.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá galera sou novato aqui e na programação tb...tenho uma lista de exercicio de Estruturas de repetição para entregar até quarta feira 28/11, por poblemas de saude faltei as 2 ultimas aulas...gostaria que vcs mim desse uma ajuda...Meu objetivo é aprender se poderem explicar eu agradeceria...

 

Estruturas de repetição

 

1. Crie um algoritmo que leia 10 números de um arquivo (um número por linha) e imprima o maior e o menor deles.

2. Desenvolva um algoritmo que leia 10 números inteiros do arquivo e apresente o seu fatorial. Lembre que fatorial é uma função que trabalha exclusivamente com números positivos. Exemplo: fat(5) = 5*4*3*2*1 = 120.

3. Foi feita uma pesquisa para determinar o índice de mortalidade infantil em um certo período. Fazer um algoritmo que:

• Leia inicialmente o número de crianças nascidas no período

• Leia em seguida, um número indeterminado de linhas contendo, alternadamente, o sexo de uma criança morta (masculino, feminino) e o número de meses de vida da criança.

• Determine e imprima:

a. A porcentagem de crianças mortas no período;

b. A porcentagem de crianças do sexo masculino mortas no período;

c. A porcentagem de crianças que viveram 24 meses ou menos no período

4. Supondo que a população de um país “A” seja da ordem de 90.000.000 de habitantes com uma taxa de crescimento de 3% e que a população de um país “B”, seja aproximadamente, 200.000.000 de habitantes com uma taxa anual de crescimento de 1,5%. Faça um algoritmo que determine o número de anos necessários para que a população do país “A” ultrapasse a do país “B”. Leia a ordem de grandeza da população dos países de um arquivo (linhas alternadas) e mantenha sempre estas taxas de crescimento.

5. Desenvolva um algoritmo que desenha um histograma na tela. Histograma são gráficos, normalmente de barras, que apresentam a quantidade de vezes que um determinado valor aparece em um conjunto de dados. Seu algoritmo deve ler 50 dados de um arquivo e apresentar na tela a quantidade representativa deste valor em forma de *. Exemplo: leu o inteiro 7 do arquivo, imprimir na tela *******.

6. Desenvolva um algoritmo que simule um Quiz. O usuário será apresentado a algumas perguntas e deve escolher entre as possíveis respostas. Acumule as soluções dadas pelo usuário e dê sua pontuação ao final. Procure ler as entradas, tanto perguntas como soluções de um arquivo estruturado da seguinte forma:

• Linha 1: Nome do Quis

• Conjuntos de 4 linhas com:

o Linha 1: pergunta

o Linhas de 2 a 4: possíveis soluções das respostas

Procure fazer vários Quiz, para tanto crie vários arquivos com a estrutura montada acima e no momento da escolha de qual Quiz irá executar, escolha aleatoriamente utilizando a função RandI.

Compartilhar este post


Link para o post
Compartilhar em outros sites

fiz o 1º...alguem pode dizer se ta certo e dizer como faço com um arquivo txt ou seja sem entrada do usuario...

valeu...

 

var

c : inteiro

a,menor, maior : real

inicio

// Seção de Comandos

menor <- 3

para c de 1 ate 10 passo 1 faca

escreva ("Entre com o numero: ")

leia(a)

 

se (a < menor) entao

menor <- a

fimse

se (a > maior) entao

maior <- a

fimse

 

fimpara

 

escreval

 

escreval("O menor numero é:")

escreval (menor)

escreval ("O maior é:")

escreval (maior)

fimalgoritmo

 

fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.