Buscar

orientação e atividade - algoritmos

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 7 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 7 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

1	
  
5ALCM – ALGORITMOS COMPUTACIONAIS 2014.1 
ATIVIDADES DE SALA 	
  	
  
Os programas a seguir estão codificados na linguagem de programação C, conforme visto na aula 
do dia 13/03/2014. O código dos programas está disponível no arquivo 20141-5ALCM-CodigoC-1 
no portal (Material associado a esta atividade, Aula do dia 13/03/2014). A indicação é que você 
execute-os em seu computador pessoal (tutorial disponível a seguir), ou mesmo em um dos 
computadores da Area1, a fim de aprimorar o seu conhecimento sobre Algoritmos. Não hesite em 
tentar, testar, retestar, modificar o código, para ver outras saídas, outros comportamentos etc. O 
aprendizado virá naturalmente com a prática! 
COMPILADOR DA LINGUAGEM C: Na aula, utilizamos o aplicativo DEV C++. Caso você ainda 
não o possua, baixe-o no endereço: 
http://bloodshed-dev-c.en.softonic.com/download#downloading 
Após efetuar o download do aplicativo e instalá-lo, crie um novo projeto C, seguindo o tutorial: 
http://ceng230.ceng.metu.edu.tr/Compilers/dev-cpp.html 
Em caso de dúvidas, movimente o fórum da disciplina no portal. Há sempre alguém disponível 
para ajuda-lo. 
ATIVIDADE: Para cada um dos programas, elabore o pseudocódigo que represente o 
comportamento do algoritmo. Para os programas 2, 3 e 4, elabore, além do pseudocódigo, o 
fluxograma. 
DETALHES: No cabeçalho de cada programa, há um texto (comentário em vermelho) que 
descreve o objetivo do programa e, eventualmente, uma descrição da estrutura utilizada na sua 
codificação. Atenção especial para os programas 4, 5 e 6. Estes resolvem o mesmo problema 
(calcular a média aritmética das notas de 3 alunos, e por fim calcular a média global), porém, 
utilizando estratégias distintas, isto é, cada uma das três estruturas de repetição é utilizada na 
codificação. 
BOM TRABALHO! 
	
   2	
  
PROGRAMA 1: Calcular a média aritmética de 3 notas de um aluno. 
#include <stdio.h> 
#include <stdlib.h> 
 
/* Programa de complexidade baixa, que utiliza apenas a noção de declaração de 
variáveis, e entrada (LEIA, aqui representada pela função SCANF() ) e saída de 
dados (ESCREVA, aqui representada pela função PRINTF() ). Não fique preocupado 
com a sintaxe da linguagem de programação C, no momento. Isto será discutido em 
aulas posteriores. O objetivo aqui é demonstrar como aqueles algoritmos 
podem ser executados na prática, para que você tenha a noção de sua utilidade, 
as vezes difícil de entender apenas com atividades "em papel" (sala de aula). */ 
 
int main() { 
 float nota1, nota2, nota3, media; 
 printf("Informe a nota 1: "); 
 scanf("%f",&nota1); 
 printf("Informe a nota 2: "); 
 scanf("%f",&nota2); 
 printf("Informe a nota 3: "); 
 scanf("%f",&nota3); 
 media = (nota1 + nota2 + nota3)/3; 
 printf("Media do aluno: %.2f",media); 
 return 0; 
} 
 
PROGRAMA 2: Calcular a média aritmética de 3 notas de um aluno e exibir aprovado, caso a 
média seja igual ou superior a 5, ou reprovado, caso contrário. 
 
 
#include <stdio.h> 
#include <stdlib.h> 
 
/* Programa que envolve, além da entrada e saída de dados, a estrutura de 
seleção composta SE... ENTÃO... SENÃO, aqui (na linguagem C) representada pela 
estrutura do IF { }, tradução para inglês da palavra SE. O ENTAO fica implícito, 
com o uso do símbolo de chaves { } (lembrando que uma chave aberta DEVE 
OBRIGATORIAMENTE ter uma outra chave correspondente, para fechar o bloco de 
comandos). O SENÃO fica representado pelo operador ELSE (tradução livre do 
inglês para o português da palavra SENÃO). */ 
 
int main(){ 
 float nota1, nota2, nota3, media; 
 printf("Informe a nota 1: "); 
 scanf("%f",&nota1); 
	
   3	
  
 printf("Informe a nota 2: "); 
 scanf("%f",&nota2); 
 printf("Informe a nota 3: "); 
 scanf("%f",&nota3); 
 media = (nota1 + nota2 + nota3)/3; 
 if (media >= 5) { 
 printf("A media final e: %.1f. O aluno esta aprovado!", media); 
 } 
 else { 
 printf("A media final e: %.1f. O aluno esta reprovado!\n", media); 
 } 
 return 0; 
} 
 
PROGRAMA 3: Ler três números inteiros quaisquer, do teclado, determinar e imprimir o menor 
deles. 
 
#include <stdio.h> 
#include <stdlib.h> 
 
/* O programa utiliza a estrutura de repetição pós testada (Repita...Até) 
Assunto da Unidade 4 (Estruturas de Controle) */ 
 
int main() { 
 
 int n1, n2, n3, menor, sair; 
 
 do{ 
 printf("Informe o numero 1: "); 
 scanf("%d", &n1); 
 printf("Informe o numero 2: "); 
 scanf("%d", &n2); 
 printf("Informe o numero 3: "); 
 scanf("%d", &n3); 
 
 if(n1<=n2){ 
 if(n2<=n3){ 
 menor = n1; 
 } else if(n1<=n3){ 
 menor = n1; 
 } else{ 
 menor = n3; 
 } 
 } else if(n2<=n3){ 
 menor = n2; 
	
   4	
  
 } else{ 
 menor = n3; 
 } 
 
 printf("O menor numero é: %d",menor); 
 printf("\n\nPara sair do programa, digite 9999: "); 
 scanf("%d",&sair); 
 
 } while (sair!=99); /*Testa se o num. 99 (sair do programa) foi digitado*/ 
 return 0; 
} 
 
PROGRAMA 4: Calcular a média aritmética de três notas, de três alunos distintos, e imprimir a 
informação de que cada aluno foi aprovado ou reprovado, bem como a média global da turma. 
Utilize a Estrutura de Repetição (Enquanto<condição>... Faça). 
O programa a seguir contém uma série de comentários (em C, as linhas que começam com // ou 
/* referem-se a comentários, que não são interpretados pelo compilador, ou seja, tudo que estiver 
após esses símbolos não será executado). Os comentários podem ajuda-lo a entender o 
funcionamento de cada operador contido no programa. 
 
#include <stdio.h> 
#include <stdlib.h> 
 
/* Programa para calcular a media aritmetica de tres notas, de tres alunos 
distintos. O programa informa a media de cada aluno, e diz se o aluno foi 
aprovado (media >= 5) ou reprovado, e o programa tambem informa a media dos tres 
alunos. O programa utiliza a estrutura de repetição pré testada 
(Enquanto...Faça). Assunto da Unidade 4 (Estruturas de Controle) */ 
 
int main(){ 
 
 float nota1, nota2, nota3, media, somaMedias, mediaGlobal; 
 int i; 
 
 i=0; /* Inicialização da variável i, que servirá como o contador na 
estrutura de repetição WHILE (enquanto... faça) */ 
 
somaMedias = 0; /* Inicialização do acumulador, que servir· para somar as 
médias de todos os alunos, a fim de se obter a média global da turma */ 
 
 while(i<3) { /* Aqui estamos coletando as notas de 3 alunos, caso haja uma 
quantidade maior, basta alterar este valor.*/ 
 
 printf("\n\nInforme as notas do Aluno %d\n",i+1); /* Como a variável 
i é inicializada como o valor 0, é necessário incrementa-la em 1 unidade, para 
que seja exibido o valor correto, Ex: Aluno 1... Aluno 2, etc */ 
	
   5	
  
 
 printf("Informe a nota 1: "); 
 scanf("%f",&nota1); // Leia a nota 1 (do teclado) 
 printf("Informe a nota 2: "); 
 scanf("%f",&nota2); // Leia a nota 2 
 printf("Informe a nota 3: "); 
 scanf("%f",&nota3); // Leia a nota 3 
 media = (nota1 + nota2 + nota3)/3; 
 if (media >= 5) 
 printf("A media final e: %.1f. Aluno aprovado!", media); 
 else 
 printf("A media final e: %.1f. Aluno reprovado!\n", media); 
 somaMedias = somaMedias + media; /* As medias individuais dos n 
alunos serão acumuladas na variável somaMedias */ 
 i++; 
 } 
 mediaGlobal = somaMedias/i; /* Após a saída da estrutura de repetição 
(WHILE), o cálculo da mediaGlobal é efetuado, considerando o somatório das 
médias, acumulado na variável somaMedias, e dividido pela quantidade de alunos. 
*/ 
 printf("\n\nA media global da turma e: %.1f.",mediaGlobal); 
 return 0; 
} 
 
PROGRAMA 5: Calcular a média aritmética de três notas, de três alunos distintos, e imprimir a 
informação de que cada aluno foi aprovado ou reprovado, bem como a média global da turma. 
Utilize a Estrutura de Repetição (Repita... Até<condição>) 
 
#include <stdio.h> 
#include <stdlib.h>/* Programa para calcular a media aritmética de três notas, de três alunos 
distintos. O programa informa a media de cada aluno, e diz se o aluno foi 
aprovado (media >= 5) ou reprovado, e o programa também informa a media dos três 
alunos. O programa utiliza a estrutura de repetição pós testada (Repita...Até). 
Assunto da Unidade 4 (Estruturas de Controle) */ 
 
int main(){ 
 
 float nota1, nota2, nota3, media, somaMedias, mediaGlobal; 
 int i; 
 
 i=0; 
 somaMedias = 0; 
 
	
   6	
  
 do { 
 printf("\n\nInforme as notas do Aluno %d\n",i+1); 
 printf("Informe a nota 1: "); 
 scanf("%f",&nota1); 
 printf("Informe a nota 2: "); 
 scanf("%f",&nota2); 
 printf("Informe a nota 3: "); 
 scanf("%f",&nota3); 
 media = (nota1 + nota2 + nota3)/3; 
 if (media >= 5) 
 printf("A media final e: %.1f. Aluno aprovado!", media); 
 else 
 printf("A media final e: %.1f. Aluno reprovado!\n", media); 
 somaMedias = somaMedias + media; 
 i++; 
 
 } while(i<3); 
 mediaGlobal = somaMedias/i; 
 printf("\n\nA media global da turma e: %.1f.",mediaGlobal); 
 
 return 0; 
} 
 
PROGRAMA 6: Calcular a média aritmética de três notas, de três alunos distintos, e imprimir a 
informação de que cada aluno foi aprovado ou reprovado, bem como a média global da turma. 
Utilize a Estrutura de Repetição (Para i de x a y Faça). 
 
#include <stdio.h> 
#include <stdlib.h> 
 
/* O programa utiliza a estrutura de repetição com variável de controle (Para... 
Faça). Assunto da Unidade 4 (Estruturas de Controle) 
 
int main(){ 
 
 float nota1, nota2, nota3, media; 
 float somaMedias, mediaGlobal; 
 int i; 
 
 somaMedias = 0; 
 
 for( i=0 ; i<3 ; i++) { 
 printf("\n\nValor de i: %d",i+1); 
 printf("\n\nInforme as notas do Aluno %d\n",i); 
 printf("Informe a nota 1: "); 
	
   7	
  
 scanf("%f",&nota1); 
 printf("Informe a nota 2: "); 
 scanf("%f",&nota2); 
 printf("Informe a nota 3: "); 
 scanf("%f",&nota3); 
 media = (nota1 + nota2 + nota3)/3; 
 if (media >= 5) 
 printf("A media final e: %.1f. Aluno aprovado!", media); 
 else 
 printf("A media final e: %.1f. Aluno reprovado!\n", media); 
 somaMedias = somaMedias + media; 
 
 } 
 printf("%d",i); 
 
 mediaGlobal = somaMedias/i; 
 printf("\n\nA media global da turma e: %.1f.",mediaGlobal); 
 return 0; 
}

Continue navegando