Buscar

material de apoio

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Linguagem C - Decisões - Exemplos
Veremos exemplos completos de atividades com 4 etapas de programação contendo Algoritmo, Fluxograma, Portugol e Linguagem C.
EXEMPLO 01: Criar um programa que leia 10 valores e apresente o maior e o menor valor.
1E – Algoritmo Completo
1 – criar uma variável do tipo inteiro N;
2 – ler o primeiro valor na variável N;
3 – criar duas variáveis do tipo inteiro; MAIOR e MENOR;
4 – atribuir a MAIOR e MENOR o valor de N;
5 – ler o segundo valor em N;
6 – verificar se o valor lido ( segundo ) é maior que o valor da variável MAIOR;
6.1 – SIM: atribuir a variável MAIOR o valor de N;
7 – verificar se valor lido ( segundo ) é menor que o valor da variável MENOR;
7.1 – SIM: atribuir a variável MENOR o valor de N;
8 – ler o terceiro valor em N;
9 – verificar se o valor lido ( terceiro ) é maior que o valor da variável MAIOR;
9.1 – SIM: atribuir a variável MAIOR o valor de N;
10 – verificar se valor lido ( terceiro ) é menor que o valor da variável MENOR;
10.1 – SIM: atribuir a variável MENOR o valor de N;
11 – ler o quarto valor em N;
12 – verificar se o valor lido ( quarto ) é maior que o valor da variável MAIOR;
12.1 – SIM: atribuir a variável MAIOR o valor de N;
13 – verificar se valor lido ( quarto ) é menor que o valor da variável MENOR;
13.1 – SIM: atribuir a variável MENOR o valor de N;
14 – ler o quinto valor em N;
15 – verificar se o valor lido ( quinto ) é maior que o valor da variável MAIOR;
15.1 – SIM: atribuir a variável MAIOR o valor de N;
16 – verificar se valor lido ( quinto ) é menor que o valor da variável MENOR;
16.1 – SIM: atribuir a variável MENOR o valor de N;
17 – ler o sexto valor em N;
18 – verificar se o valor lido ( sexto ) é maior que o valor da variável MAIOR;
18.1 – SIM: atribuir a variável MAIOR o valor de N;
19 – verificar se valor lido ( sexto ) é menor que o valor da variável MENOR;
19.1 – SIM: atribuir a variável MENOR o valor de N;
20 – ler o sétimo valor em N;
21 – verificar se o valor lido ( sétimo ) é maior que o valor da variável MAIOR;
21.1 – SIM: atribuir a variável MAIOR o valor de N;
22 – verificar se valor lido ( sétimo ) é menor que o valor da variável MENOR;
22.1 – SIM: atribuir a variável MENOR o valor de N;
23 – ler o oitavo valor em N;
24 – verificar se o valor lido ( oitavo ) é maior que o valor da variável MAIOR;
24.1 – SIM: atribuir a variável MAIOR o valor de N;
25 – verificar se valor lido ( oitavo ) é menor que o valor da variável MENOR;
25.1 – SIM: atribuir a variável MENOR o valor de N;
26 – ler o nono valor em N;
27 – verificar se o valor lido ( nono ) é maior que o valor da variável MAIOR;
27.1 – SIM: atribuir a variável MAIOR o valor de N;
28 – verificar se valor lido ( nono ) é menor que o valor da variável MENOR;
28.1 – SIM: atribuir a variável MENOR o valor de N;
29 – ler o décimo valor em N;
30 – verificar se o valor lido ( décimo ) é maior que o valor da variável MAIOR;
30.1 – SIM: atribuir a variável MAIOR o valor de N;
31 – verificar se valor lido ( décimo ) é menor que o valor da variável MENOR;
31.1 – SIM: atribuir a variável MENOR o valor de N;
32 – apresente os valores de MAIOR e MENOR.
 2E – Fluxograma
Obs.: clique nas imagens para melhor observação!
3E – Portugol
Programa exelmplo01_decisao;
var
MAIOR, MENOR, N : inteiro;
Inicio
escreva ( “Entre com o primeiro valor :: ” );
leia ( N );
MAIOR <– N;
MENOR <– N ;
escreva ( “Entre com o segundo valor :: ” );
leia ( N );
se ( N > MAIOR ) então
inicio
MAIOR <– N;
fim_se;
se ( N < MENOR ) então
inicio
MENOR <–N;
fim_se;
escreva ( “Entre com o terceiro valor :: ” );
leia ( N );
se ( N > MAIOR ) então
inicio
MAIOR <– N;
fim_se;
se ( N < MENOR ) então
inicio
MENOR <– N;
fim_se;
escreva ( “Entre com o quarto valor :: ” );
leia ( N );
se ( N > MAIOR ) então
inicio
MAIOR <– N;
fim_se;
se ( N < MENOR ) então
inicio
MENOR <– N;
fim_se;
escreva ( “Entre com o quinto valor :: ” );
leia ( N );
se ( N > MAIOR ) então
inicio
MAIOR <– N;
fim_se;
se ( N < MENOR ) então
inicio
MENOR <–N;
fim_se;
escreva ( “Entre com o sexto valor :: ” );
leia ( N );
se ( N > MAIOR ) então
inicio
MAIOR <– N;
fim_se;
se ( N < MENOR ) então
inicio
MENOR <–N;
fim_se;
escreva ( “Entre com o sétimo valor :: ” );
leia ( N );
se ( N > MAIOR ) então
inicio
MAIOR <– N;
fim_se;
se ( N < MENOR ) então
inicio
MENOR <–N;
fim_se;
escreva ( “Entre com o oitavo valor :: ” );
leia ( N );
se ( N > MAIOR ) então
inicio
MAIOR <– N;
fim_se;
se ( N < MENOR ) então
inicio
MENOR <–N;
fim_se;
escreva ( “Entre com o nono valor :: ” );
leia ( N );
se ( N > MAIOR ) então
inicio
MAIOR <– N;
fim_se;
se ( N < MENOR ) então
inicio
MENOR <–N;
fim_se;
escreva ( “Entre com o décimo valor :: ” );
leia ( N );
se ( N > MAIOR ) então
inicio
MAIOR <– N;
fim_se;
se ( N < MENOR ) então
inicio
MENOR <– N;
fim_se;
escreva ( “ MAIOR VALOR :: “, MAIOR, “MENOR VALOR :: “,MENOR );
fim.
4E – Linguagem C
Obs.: todas as etapas estão completas com a leitura e processamento dos 10 valores!
EXEMPLO 02 : Criar um programa que leia F ou M para o sexo do usuário e apresente Masculino ou Feminino como resposta.
 1E – Algoritmo Completo
1 – Criar uma variável do tipo caractere S;
2 – Ler o velor da variável S;
3 – verificar se valor de S igual a F;
4 – SIM: apresentar : “ FEMININO !”;
5 – NÃO: apresentar : “Masculino !”;
Obs.: o programa poderia ainda apresentar “valor inválido” caso a entrada seja diferente de F ou M, no entanto cabe ao desenvolvedor verificar se necessário ou não, neste caso não faremos tal comparação.
 2E – Fluxograma
3E – Portugol
programa exemplo2_dec
var
S : caractere;
inicio
escreva( ' Entre com F ou M :: ' ) ;
leia ( S );
se ( S == ‘f’ ou S == ‘F’ ) então
inicio
escreva ( ' Feminino! ' );
senão
escreva ( ' Masculino ! ' );
fim_se;
fim.
4E – Linguagem C
Vejamos então mais exemplos em linguagem C.
Exemplo 03: Criar um programa que leia um valor inteiro e apresente o mês correspondente.
Exemplo 04: Criar um programa que leia um valor e apresente se ele é positivo ou negativo.
Looping ( Laço de Repetição )
O looping será utilizado toda vez que um trecho do programa precisar ser feito por mais de uma vez. Existem alguns tipos de Loopings, os infinitos – de decisão no inicio e decisão no fim e os finitos. Vamos ver como funcionam os Loopings de Decisão no inicio do trecho de repetição, vamos conhecer o Looping While ( Enquanto ).
Looping While
Esse looping repete o trecho de acordo com a condicional no inicio do trecho, veja bem; ele pergunta, e, de acordo com a resposta, ele executa o trecho mais uma vez ou não. Vamos aos exemplos.
exemplo while 01: Criar um programa que leia 10 valores e apresente a soma e a média dos valores.
1E – Algoritmo
1 – criar uma variável do tipo real NUM;
2 – Criar duas variáveis do tipo real : SOMA e MEDIA;
3 – ler 10 valores em NUM  ( uma por vez ) e armazenar a soma em SOMA;
4- Implicar em MEDIA a media aritmética dos 10 valores somados em SOMA.
5 – apresentar os valores de SOMA e MEDIA.
2E – Fluxograma
Obs. O trecho será repetido 10 vezes, pedirá e somará os 10 valores e, somente quando i for 11 ele passa como Não a resposta da decisão do Looping While e segue o programa calculando a média e apresentando os resultados.
3E – Portugol
programa exemplowhile01;
var
SOMA, MEDIA, NUM : real;
i : inteiro;
inicio
i <– 1;
enquanto i < = 10 faça inicio
escreva(“entre com o valor :: );
leia(NUM);
SOMA <– SOMA + NUM;
i <– i + 1;
fim_enquanto;
MEDIA <– SOMA/10;
escreva(MEDIA, SOMA );
fim.
4E – Linguagem C
 
Exemplo While 02: Criar um programa que apresente a TABUADA de uma valor digitado pelo usuário.
1E – Algoritmo
1 – criar uma variável do tipo real NUM;
2 – Apresentar a multiplicação de NUM de 1 até 10 respectivamente;
2E – Fluxograma
 
3E – Portugol
programa exemplowhile02;
var
NUM : real;
i : inteiro;
inicio
escreva(“entre
com o valor :: );
leia(NUM);
i <– 1;
enquanto i < = 10 faça inicio
escreva( NUM * i );
fim_enquanto;
fim.
4E – Linguagem C
 
Exemplo While 03: Criar um programa que apresente os impares do intervalo de 1 a 20.
1E – Algoritmo
1 – criar uma variável do tipo inteiro I;
2 – criar um looping while de 1 até 20 com o contador I;
3 – verificar se I é IMPAR;
3.1 – SIM, apresente o valor de I;
3.2 – NÃO, passe para o próximo valor até o último (20)
2E – Fluxograma
 
3E – Portugol
programa exemplowhile03;
var
i : inteiro;
inicio
i <– 1;
enquanto i < = 20 faça inicio
se ( i % 2 == 1 ) então inicio
escreva( i );
fim_se;
fim_enquanto;
fim.
4E – Linguagem C
 
Vejamos mais alguns exemplos em Linguagem C de Looping While.
Exemplo While 04 : Criar um programa que leia o peso e o ID de 5 bois e Apresente o mais pesado e o seu ID.
Exemplo While 05 : Criar um programa que apresente a soma dos pares e a soma dos impares do intervelo de 0 a 20.
Looping For: Linguagem C
Nesta semana veremos os looping for. Este looping é finito, isto é, sua repetição é definida pelo programador, ele tem inicio e fim definidos, e, conta ainda com o incremento ou decremento de um contador.[ para avanças ou retroceder em um determinado número de passos, isso quer dizer que ele avança de um em um ou de dois em dois ou de 3 em 3 e assim por diante... Veja os principais aspectos a serem observados na imagem:
Pois bem, neste semana apenas faremos os exercícios de While em For, para observar suas diferenças e vantagens. Vamos.
Exemplo for 01: Criar um programa que leia 10 valores e apresente a soma e a média dos valores.
OBS.: lembre-se de que as outras ETAPAS de programação estão na aula anterior com Looping While. Os exercícios são os mesmos. Apenas mudamos o Looping while para o Looping For.
Exemplo for 02: Criar um programa que apresente a TABUADA de um valor digitado pelo usuário.
Observe que nos dois primeiros exemplos o looping for possui um contador i que percorre de 1 até 10 em passo 1, isto é, "vai de 1 até 10 de um em um", sendo 1, 2, 3, 4, 5, 6, 7, 8, 9 e 10, significa que o trecho será repetido 10 vezes.
Exemplo For 03: Criar um programa que apresente os impares do intervalo de 1 a 20.
Exemplo For 04 : Criar um programa que leia o peso e o ID de 5 bois e Apresente o mais pesado e o seu ID.
Exemplo For 05 : Criar um programa que apresente a soma dos pares e a soma dos impares do intervelo de 0 a 20.
 Observação! Nos exemplos notamos como o controle do looping for é bem mais fácil, já que ele conta com incremento interno e limite com inicio e fim do processo de repetição, no entanto, sempre utilize o looping que você tiver maior facilidade, não se preocupe com o tamanho do programa, o importante é responder ao problema, depois otimizaremos o código.
Linguagem C - Vetores
Vetores são estruturas de dados homogêneas, isto é, estruturas que armazenam mais de uma informação do mesmo tipo. Em uma única variável do tipo vetor, podemos guardar várias informações. No Portugol estes tipos de estrutura serão chamados de vetor e em Linguagem C, as variáveis deste tipo são criadas com colchetes definindo seu tamanho. Veja a imagem:
Assim podemos observar que o vetor é composto por elementos de um mesmo tipo de dado e que são organizados pelo índice.
Exemplo vetor 01. Criar um programa que apresente a Soma e a Média de 5 valores digitados pelo usuário.
Etapa 1: Algoritmo
1 – Criar uma variável do tipo vetor para 5 elementos do tipo inteiro VET;
2 – Criar uma variável do tipo inteiro SOMA;
3 – Criar uma variável do tipo real MEDIA;
4 – Ler os cinco valores digitados pelo usuário em VET;
5 – Implicar a soma dos valores de VET em SOMA;
6 – Implicar a média dos valores de VET em MEDIA;
7 – Apresentar SOMA e MEDIA.
Etapa 2: Fluxograma
 
OBS.:: Na imagem acima, observe o uso do laço for ( em destaque ) para realizar a leitura dos elementos do Vetor VET e somar seus valores, posteriormente realizada sua média e apresentação dos resultados. No caso do diagrama de Bloco do Loop FOR são utilizados sempre 3 parâmetros, primeiro: inicio da variável, segundo: até aonde deve ir o valor da variável e terceiro: de quanto em quanto deve ser seu passo.
Etapa 3: Portugol
programa exemplovetor1;
var
SOMA, i : inteiro;
MEDIA : real;
VET : vetor [5] de inteiros;
inicio
para i de 1 até 5 passo 1 faça
escreva( “Entre com o valor :: “);
leia( VET [i] );
SOMA <– SOMA + VET [i];
fim_para;
MEDIA <– SOMA / 5;
escreva( SOMA , MEDIA );
fim
Etapa 4: Linguagem C
  
Exemplo vetor 02: Criar um programa que leia e apresente em ordem crescente 5 valores digitados pelo usuário.
Etapa 1: Algoritmo
1 – Criar uma variável do tipo vetor para 5 elementos do tipo inteiro VET;
2- Ler os cinco valores digitados pelo usuário em VET;
3- Ordenar os valores de VET de modo Crescente com o método SORT;
4- Apresentar os Valores de VET.
Etapa 2: Fluxograma
 
Etapa 3: Portugol
programa exemplovetor2;
var
j, i , TROCA: inteiro;
VET : vetor [5] de inteiros;
inicio
para i de 1 até 5 passo 1 faça
escreva( “Entre com o valor :: “);
leia( VET [i] );
fim_para;
para i de 1 até 4 passo 1 faça
para j de i+1 até 5 passo 1 faça
se ( VET [i] < VET [j] ) então inicio
TROCA <– VET [i];
VET [i] <– VET [j];
VET [j] <– TROCA;
fim_se;
fim_para;
fim_para;
para i de 1 até 5 passo 1 faça
escreva( VET [i] );
fim_para
fim.
Etapa 4: Linguagem C
 
OBS.:: neste exemplo utilizamos o método de ordenação SORT, com duas estruturas de repetição FOR e uma condicional IF, para verificar se a posição atual possui um valor maior que a posição posterior, quando SIM ele troca os dois valores de lugar colocando o maior valor para frente.
Vejamos outros exemplos em Linguagem C.
Exemplo vetor 03: Criar um programa que leia 5 elementos em um vetor A e apresente o FATORIAL dos elementos de A em um vetor B.
Exemplo vetor 04: Criar um programa que leia 5 elementos em um vetor A e apresente os elementos de A invertidos em um vetor B.
Bibliografia
Forbellone, André Luiz Villar, e Eberspacher, Henri Frederico,Lógica de Programação, 3ª ed Editora Pearson Prentice Hall, 2005. 
SCHILDT, Herbert. C completo e total. 3 ed. São Paulo : Pearson, 2006.

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais