Pesquisar este blog

sexta-feira, 30 de março de 2012

ROI (RETORNO SOBRE O INVESTIMENTO)

ROI (RETORNO SOBRE O INVESTIMENTO)

1)      Quais são as principais características do ROI? Explique esse conceito.

É definido como o retorno do capital investido, uma performance da organização: o capital total da organização dividido por seus retornos ou rendimentos. Também é definido como o retorno sobre ativos: os rendimentos de um determinado período divididos pelo valor dos ativos utilizados para produzir aquele rendimento. Para maximizar o retorno sobre um investimento diversas iniciativas apresentam grande contribuição como reduções de custos, ampliação dos retornos ou diminuição dos prazos de retorno.
Na maioria das vezes seus resultados são apresentados na forma financeira, como Fluxo de Caixa Líquido, tempo de retorno, entre outros. O maior problema encontrado em uma análise de ROI é a dificuldade de se estabelecer um custo de investimento real. O custo do investimento vêm no inicio e seu retorno durante os anos seguintes. É necessário considerar também o valor do capital ao longo do tempo. O cálculo de ROI é mais apropriado quando tanto o custo de investimento quanto seu retorno se apresentarem em um curto espaço de tempo, estiverem muito relacionados e puderem ser derivados de forma não ambígua.


2)      Como calcular o ROI? Quais aspectos devem ser considerados?

O cálculo do ROI possui diversas metodologias, algumas simples, outras nem tanto. Cada metodologia varia em função da finalidade ou do enfoque que se deseja dar ao resultado.
ROI=(Lucro Líquido ÷ Vendas)×(Vendas ÷ Total de ativos)
representa a relação entre a lucratividade e o giro dos estoques.
ROI=Lucro líquido ÷ Total de ativos
Representa o retorno que o ativo total empregado oferece. Utilizado geralmente para determinar o retorno que uma empresa dá.
ROI=Lucro líquido ÷ Investimentos
representa o retorno que determinado investimento oferece. Geralmente é utilizado para determinar o retorno de investimentos isolados. Invertendo-se a relação (ROI=Investimento ÷ Lucro Líquido), obtém-se o tempo necessário para se reaver o capital investido.
Há também a Rentabilidade do Ativo Total Médio ou Taxa de Retorno sobre o Ativo Total Médio ou Taxa de Retorno sobre o Investimento Total
Taxa=[(Lucro Líquido do Exercício)/(Vendas Líquidas)]*[(Vendas Líquidas)/ATM]*100=[(Lucro Líquido do Exercício)/ATM]*100
ATM=Ativo Total Médio=(Ativo Inicial+Ativo Final)/2

3)      O ROI deve ser um fator impeditivo na compra de TI? Justifique.

Os riscos financeiros são aqueles onde um fator não-tecnológico influencia a aplicação. Fusões, aquisições, mudanças no quadro gestor e pressões competitivas influenciam a infra-estrutura corporativa tecnológica e pode reduzir a chance de se obter o ROI esperado.

4)   Qual a relação do ROI com o profissional de TI? É possível inverter essa situação?

ROI, do inglês Return Of Investment (Retorno do Investimento), é um indicador largamente utilizado em toda a indústria de TI e serve de suporte na argumentação dos CIO (Chief Information Officer) para implementação de vários projetos da área.
 Vale lembrar aqui que o ROI por si só, como qualquer indicador, não pode ser considerado de forma isolada, mas sim relativo ao seu ambiente para que ele possa ser válido como ferramenta. Em contrapartida, em organizações que já possuem processos automatizados, uma atualização destas aplicações que se traduza em ampliação das capacidades de auditoria ou geração de relatórios, como exemplo, gerará maiores benefícios indiretos como o aumento da eficiência ou redução de prazos.


5)      Qual a relação do ROI com a sociedade atual? De que jeito isso prejudica a área de TI? E de que jeito ajuda a área de TI?

Na prática, embora muitos críticos digam que ele ainda é um exercício puro de matemática que sofre constantes alterações e padece de erros, o ROI significa o retorno de determinado investimento realizado e contabilizado em meses nos quais ele será amortizado para, então, começar a gerar lucros e benefícios.
Recomenda-se não buscar números estratosféricos para fazer comparações, baseados em outras experiências de mercado. O retorno do investimento de uma companhia nunca é igual ao de outra.
O ROI foi sistematizado por uma série de ferramentas criadas pelo mercado, e muitos sistemas possuem um módulo que o contabiliza. No entanto, o ponto forte do ROI é levar a uma ampla exposição dos motivos, envolvendo toda a cúpula da empresa, em todos os níveis, para aprovar um investimento em um projeto. Os melhores resultados são obtidos quando existe um comprometimento global dos envolvidos.

O ROI pode ser interferir na área de T.I quando não é bem planejado dando a entender que o investimento não trará nenhum retorno para empresa. Mas quando bem planejado e deixando bem transparente os benefícios do investimento pode tornar a área de T.I como “carro chefe” em melhorias para empresa toda, aumentando inclusive a credibilidade e responsabilidade da T.I.

quinta-feira, 15 de março de 2012

ENG. SOFTWARE - Quest. 01

> ENGENHARIA DE SOFTWARE - 02/03/2012


> NATUREZA SISTÊMICA:
> - O QUE É?
 A natureza sistemica é um conjunto de elementos inter-relacionados que interagem no desempenho de
uma função.


> - QUAL A SUA IMPORTÂNCIA?
Tem a importância de relacionar outros tipos de sistemas em um único processo.


> - QUAL O PAPEL DA INFORMAÇÃO?


Informação é o resultado do processamento, manipulação e organização de dados, de tal forma que represente uma modificação (quantitativa ou qualitativa) no conhecimento do sistema (pessoa, animal ou máquina) que a recebe.
Informação enquanto conceito, carrega uma diversidade de significados técnico. Genericamente, o conceito de informação está intimamente ligado às noções de restrição,comunicação, dados, formas, conhecimento, entre outros. Hoje podemos dizer que estamos na Era da Informação.




> CARACTERIZAR:




> - SISTEMA
Um sistema  é um conjunto de elementos interconectados, de modo a formar um todo organizado. É uma definição que acontece em várias disciplinas, comobiologia, informática e administração. Vindo do grego o termo "sistema" significa "combinar", "ajustar", "formar um conjunto". Todo sistema possui um objetivo geral a ser atingido. O sistema é um conjunto de órgãos funcionais,  partes ou elementos e as relações entre eles, a integração entre esses componentes pode se dar por fluxo de informações, fluxo de matéria, fluxo de energia, enfim, ocorre comunicação entre os órgãos componentes de um sistema.


> - SISTEMA INFORMATIZADO
Melhoria no modo de gerenciar, programar, consultar. Traz qualidade, competitividade e produtividade. Os sistemas informatizados utilizados em vários ramos e aspectos, na medicina desde consultas até aparelhagem de curas e tratamentos; na educação usado para triagem e ensinamentos. O sistema informatizado hoje é usado em tudo.Precisamente para alcançar estas metas, as organizações procuram aperfeiçoar seus sistemas de manufatura pela incorporação de tecnologias avançadas de produção e a reconfiguração de seus sistemas de administração e controle de operações a nível de chão-de-fábrica. Assim, a estratégia de produção derivada de economia de escala perdeu validade face a outras estratégias que focalizam a produção em pequenos lotes com flexibilidade e controle total. 


> - PROGRAMA
Levando a linha do programa de computador temos: programa informático que é uma coleção deinstruções que descrevem uma tarefa a ser realizada por um computador. O termo pode ser uma referência ao código fonte, escrito em alguma linguagem de programação, ou ao arquivo que contém a forma executável deste código fonte.


> - DADOS
Os dados referem-se a uma recolha de informações organizadas, normalmente o resultado da experiência ou observação de outras informações dentro de um sistema de computador, ou um conjunto de instalações. Os dados podem consistir em números,palavras ou imagens, as medições e observações de um conjunto de variáveis; informações, registro que identifica alguma coisa tanto objeto ou animal. Os dados podem ser humanos ou processados por uma entrada em um computador, armazenados e tratados lá, ou transmitidos (saída) para outro computador ou humano. A palavra "dados" é um termo relativo, tratamento de dados comumente ocorre por etapas, e os "dados processados" a partir de uma etapa podem ser considerados os "dados brutos" do próximo. Computação, dispositivos mecânicos, são classificados de acordo com os meios através dos quais eles representam dados. Um computador analógico representa um dado como uma tensão, distancia, posição, ou outra quantidade física. Um computador digital representa um dado como uma seqüência de símbolos traçada a partir de um alfabeto fixo. O mais comum, computadores digitais usam um alfabeto binário, isto é, um alfabeto de dois caracteres, normalmente denominadas "0" e "1". Mais familiarizado representações, tais como números ou letras, são construídos a partir do alfabeto binário.




> - INFORMAÇÃO
Informação é qualquer padrão representado. Esta visão não assume nem exatidão nem partes que se comuniquem diretamente, mas em vez disso, assume uma separação entre o obje(c)to e sua representação, bem como o envolvimento de alguém capaz de entender este relacionamento. Logo, este ponto de vista parece exigir uma mente consciente. Considere-se o seguinte exemplo:dados em computação, estatística e outros campos, são formas de informação neste sentido. Os padrõeseletromagnético numa rede de computadores e dispositivos periféricos estão relacionados a algo além do padrão em si mesmo, tais como caracteres de texto para serem exibidos e entradas de teclado.


> - CONHECIMENTO
É o ato ou efeito de abstrair ideia ou noção de alguma coisa, como por exemplo: conhecimento das leis; conhecimento de um fato (obter informação); conhecimento de um documento; termo de recibo ou nota em que se declara o aceite de um produto ou serviço; saber, instrução ou cabedal científico (homem com grande conhecimento).
O tema "conhecimento" inclui, mas não está limitado a, descrições, hipóteses, conceitos, teorias, princípios e procedimentos que são ou úteis ou verdadeiros. O estudo do conhecimento é a gnoseologia. Hoje existem vários conceitos para esta palavra e é de ampla compreensão que conhecimento é aquilo que se sabe de algo ou alguém. Isso em um conceito menos específico. Contudo, para falar deste tema é indispensável abordar dado e informação.

quarta-feira, 23 de novembro de 2011

QUESTIONÁRIO 08 - ED II

QUICKSORT




1)      Por que o método quicksort têm esse nome? Existe outra versão do método? Ele é conhecido por qual outro nome?

Resposta:
C.A.R. Hoare criou o 'Quicksort ao tentar traduzir um dicionário de inglês para russo, ordenando as palavras, tendo como objetivo reduzir o problema original em subproblemas que possam ser resolvidos mais facil e rapidamente.

2)      A ordenação pelo método quicksort é um dos mais simples. Qual a principal característica do método ou como ele funciona?

Resposta:
O Quicksort adota a estratégia de divisão e conquista. A estratégia consiste em rearranjar as chaves de modo que as chaves "menores" precedam as chaves "maiores". Em seguida o Quicksort ordena as duas sublistas de chaves menores e maiores recursivamente até que a lista completa se encontre ordenada. [3]Os passos são:
1.      Escolha um elemento da lista, denominado pivô;
2.      Rearranje a lista de forma que todos os elementos anteriores ao pivô sejam menores que ele, e todos os elementos posteriores ao pivô sejam maiores que ele. Ao fim do processo o pivô estará em sua posição final e haverá duas sublistas não ordenadas. Essa operação é denominada partição;
3.      Recursivamente ordene a sublista dos elementos menores e a sublista dos elementos maiores;
A base da recursão são as listas de tamanho zero ou um, que estão sempre ordenadas. O processo é finito, pois a cada iteração pelo menos um elemento é posto em sua posição final e não será mais manipulado na iteração seguinte.

3)      Qual é a classificação do método quicksort? Qual o seu grau de complexidade?

Resposta:
Método Recursivo, complexidade de tempo e espaço:
·         Complexidade de tempo: θ(n lg2 n) no melhor caso e θ(n) no caso médio e θ(n2) no pior caso;
·         Complexidade de espaço: θ(lg2 n) no melhor caso e no caso médio e θ(lg2 n) no pior caso. R. Sedgewick desenvolveu uma versão do Quicksort com partição recursão de cauda que tem complexidade θ(n2) no pior caso.

4)      Dê exemplo de aplicação do método quicksort, com as comparações, trocas e iterações.

Resposta:


5)      Demonstre o código-fonte do método quicksort e comente o mesmo.

Resposta:




                                                              

QUESTIONÁRIO 07 - ED II


Ordenação – Método Mergesort

1)                 Por que o método mergesort têm esse nome? Existe outra versão do método? Ele é conhecido por qual outro nome?

Resposta:
O método de ordenação Mergesort também é conhecido como “dividir para conquistar” e significa  ordenação por mistura (fusão).

2)      A ordenação pelo método mergesort é um dos mais simples. Qual a principal característica do método ou como ele funciona?

Resposta:
Sua idéia básica é muito fácil: criar uma sequência ordenada a partir de duas outras também ordenadas. Para isso, ele divide a sequência original em pares de dados, ordena-as; depois as agrupa em sequências de quatro elementos, e assim por diante, até ter toda a sequência dividida em apenas duas partes.

3)      Qual é a classificação do método mergesort? Qual o seu grau de complexidade?

Resposta:
Método recursivo e sua ordem de complexidade do algoritmo recursivo deste método é O(n log n) .

4)      Dê exemplo de aplicação do método mergesort, com as comparações, trocas e iterações.

Resposta:



5)      Demonstre o código-fonte do método mergesort e comente o mesmo.

Resposta:
// A função mergesort rearranja o vetor v[p..r-1]
// em ordem crescente.

void
mergesort (int p, int r, int v[])
{
   if (p < r-1) {
      int q = (p + r)/2;
      mergesort (p, q, v);
      mergesort (q, r, v);
      intercala (p, q, r, v);
   }
}

QUESTIONÁRIO 06 - ED II

INSERÇÃO E MÉTODO SHELL



1)      Por que o método shell têm esse nome? Existe outra versão do método? Ele é conhecido por qual outro nome?

Resposta:
Leva o nome de seu inventor, Ronald L. Shell; consiste na aplicação do método da Inserção, em vários passos, a elementos não consecutivos (separados por determinados intervalos). A cada passo, esse intervalo decresce: primeiro, são ordenados entre si todos os elementos separados de quatro posições. Em seguida, são ordenados os elementos a duas posições de distância. Finalmente, são ordenados os elementos adjacentes. Há também a versão Shell-Metzner, antecessor a ele.Também conhecido por método concha.

2)      A ordenação pelo método shell é um dos mais simples. Qual a principal característica do método ou como ele funciona?
Resposta:
Shell algoritmo de ordenação melhora a ordenação por inserção, comparando os elementos separados por um espaço de várias posições. Esto permite que un elemento haga "pasos más grandes" hacia su posición esperada. Isso permite que um elemento para fazer "passos maiores" em direção a sua posição esperada. Los pasos múltiples sobre los datos se hacen con tamaños de espacio cada vez más pequeños. A várias passagens sobre os tamanhos de dados são feitos espaço cada vez menores. El último paso del Shell sort es un simple ordenamiento por inserción, pero para entonces, ya está garantizado que los datos del vector están casi ordenados. A última etapa da espécie Shell é uma espécie de inserção simples, mas aí já é garantido que os dados são quase ordenada do vetor.


3)      Qual é a classificação do método shell? Qual o seu grau de complexidade?

Resposta:
Shell sort é o mais eficiente algoritmo de classificação dentre os de complexidade quadrática. É um refinamento do método de inserção direta.

4)      Dê exemplo de aplicação do método shell, com as comparações, trocas e iterações.

Resposta:
Execução:
Dado o vetor de entrada: 12, 43, 1, 6, 56, 23, 52, 9
12, 43, 1, 6, 56, 23, 52, 9
12, 43, 1, 6, 56, 23, 52, 9
1, 43, 12, 6, 56, 23, 52, 9
1, 6, 12, 23, 56, 43, 52, 9
1, 6, 12, 23, 52, 43, 56, 9
1, 6, 12, 23, 52, 9, 56, 43
1, 6, 12, 9, 52, 23, 56, 43
1, 6, 9, 12, 52, 23, 56, 43
1, 6, 9, 12, 23, 52, 56, 43
1, 6, 9, 12, 23, 52, 43, 56
1, 6, 9, 12, 23, 43, 52, 56

Em negrito estão os números trocados na atual iteração.
Após as seguintes trocas acima, obtemos o vetor ordenado: 1, 6, 9, 12, 23, 43, 52, 56.


5)      Demonstre o código-fonte do método shell e comente o mesmo.

Resposta:
//***************************************************************************
// Função shell_sorte – Recebe uma matriz desordenada e a ordena com
// algoritmo shell sort
//
// Entradas – matriz a ser ordenada e tamanho da matriz a ordenar
// Saídas - nenhuma
//***************************************************************************
void shell_sort(unsigned char matriz[], unsigned int tamanho){

   
unsigned int i, gap;
   
unsigned char temp, ret;

   
gap = tamanho / 2;
   
do {
      
do{
         
ret=0;
            
for (i=0; i< tamanho – gap; i++)
               
if (matriz[i] >matriz[i+gap]){
                  
temp=array[i];
                     
array[i]=array[i+gap];
                     
array[i+gap]=temp;
                     
ret=1;
               
}
      
} while(ret);
   
} while (gap = gap / 2);
}

quarta-feira, 19 de outubro de 2011

QUESTIONÁRIO 05 - ED II

ORDENAÇÃO E MÉTODO BOLHA

1)   Ordenar é um processo de rearranjar um conjunto de objetos em uma ordem ascendente/crescente ou descendente/decrescente. Qual a importância da ordenação para qualquer processo e para informática? Dê exemplos práticos de utilização. Defina a complexidade dos métodos de ordenação e a sua classificação.

Resposta:
Ordenam-se os dados para ganharmos velocidade na execução de tarefas. Dados ordenados consomem menos tempo de processamento.

2)   Qual é a classificação dos métodos de ordenação? Qual a diferença entre eles? Quais são os métodos de ordenação mais utilizados ou principais?Resposta:
Tipos de algoritmos de ordenação
• Por troca: Troca os elementos ordenando-os
• Por seleção: Seleciona o menor elemento, o segundo menor e assim por diante
• Por inserção: Reinsere os elementos na estrutura reordenando os mesmosExemplos:
Método Bolha (BubbleSort):  Troca os elementos de um arrayPercorre todo array x-1 vezes, onde x é o tamanho do array, trocando os elementos adjacentes, se estiverem desordenados


Método Seleção (SelectionSort): Seleciona o elemento de menor valor e o troca pelo primeiro. Faz-se o mesmo com os elementos restantes.
Executa-se o processo tantas vezes quanto o número de elementos no array menos um – varre o array a partir dos elementos ainda não ordenados

Método Inserção (InsertionSort): Reinsere os elementos no array reordenando  o mesmo
Ordena os dois primeiros elementos
Do terceiro elemento em diante, os valores são inseridos em relação aos elementos já ordenados.
3)   A ordenação pelo método bolha é um dos mais simples. Qual a principal característica do método ou como ele funciona?

Resposta:
A ideia é percorrer o vetor diversas vezes, a cada passagem fazendo flutuar para o topo o menor elemento da sequência. Os valores maiores afundam para o fundo (fim do vetor). Essa movimentação lembra a forma como as bolhas em um tanque de água procuram seu próprio nível, e disso vem o nome do algoritmo.
A técnica consiste em sequencialmente cada um dos elementos do vetor, comparando os elementos vizinhos entre si. Caso estejam fora de ordem, os mesmo trocam de posição (swap).
Procede-se assim até o final do vetor. Na primeira “varredura” o último elemento do vetor estará no seu devido lugar (caso a ordenação seja crescente, ele é o maior de todos).


A segunda “varredura” é análoga à primeira e vai até o penúltimo elemento.
O processo é repetido até que tenham sido feitas tantas “varreduras” quanto o número de elementos a serem classificados menos um.
Ao final o vetor estará classificado segundo o processo escolhido.

 
4) Qual é a classificação do método bolha? Qual o seu grau de complexidade?

Resposta:

O Método Bolha possui uma Classificação por “troca”. Seu Grau de Complexidade é considerado Simples, pois trabalha como um único modo: Ele compara todos os pares de elementos consecutivos e enquanto houverem pares não ordenados, ele continuará varrendo e operando. Assim que uma varredura não retorna nenhum par desordenado, o Vetor está pronto.



5) Dê exemplo de aplicação do método bolha, com as comparações, trocas e interações.

Resposta:

Exemplo:
método da bolha, pode ser aplicado a uma  lista de números, consistindo, inicialmente, na comparação entre os dois primeiros números ( os das posições 1 e 2 ). Se o da posição 1 for maior que o da posição 2, efetuamos uma troca. Caso contrário eles permanecem em suas posições originais. Em seguida, comparamos os das posições 2 e 3 e agimos como antes: só efetuamos a troca se o da posição 2 for maior que o da posição 3, e assim por diante com os números das posições 3 e 4, 4 e 5, ... até efetuarmos a comparação entre aqueles que ocupam as posições 7 e 8.
Com isso deslocamos o maior deles para a última posição ( a posição 8, mais à direita ). O maior número, por assim dizer, "borbulha" para a posição "mais elevada", como as bolhas, em um líquido, elevam-se para a sua superfície. A simulação adiante ilustra o processo completo para o leitor. Como nas simulações anteriores, os números que estarão sendo comparados serão representados em vermelho e aqueles que já tenham atingido sua posição final, em azul.

Situação inicial: 37, 22, 47, 81, 16, 59, 47, 64

PRIMEIRO PASSO: Efetuar as comparações antes descritas, com a finalidade de colocar o maior dos números na posição 8:
1ª comparação: 22, 37, 47, 81, 16, 59, 47, 64 Trocaram-se 22 com 37
2ª comparação: 22, 37, 47, 81, 16, 59, 47, 64 Permanecem, pois 37<47
3ª comparação: 22, 37, 47, 81, 16, 59, 47, 64 Permanecem, pois 47<81
4ª comparação: 22, 37, 47, 16, 81, 59, 47, 64 Trocaram-se 16 com 81
5ª comparação: 22, 37, 47, 16, 59, 81, 47, 64 Trocaram-se 59 com 81
6ª comparação: 22, 37, 47, 16, 59, 47, 81, 64 Trocaram-se 47 com 81
7ª comparação: 22, 37, 47, 16, 59, 47, 64, 81 Trocaram-se 64 com 81
Com a seqüência de comparações e trocas anteriores, o número 81 (o maior da lista) "borbulhou" para a posição 8.

SEGUNDO PASSO: Tomando-se a situação final do passo anterior como inicial, vamos fazer "borbulhar" um segundo número (menor ou igual ao que já se encontra na posição 8) para a posição 7:

Situação inicial: 22, 37, 47, 16, 59, 47, 64, 81
1ª comparação: 22, 37, 47, 16, 59, 47, 64, 81 Permanecem, pois 22<37
2ª comparação: 22, 37, 47, 16, 59, 47, 64, 81 Permanecem, pois 37<47
3ª comparação: 22, 37, 16, 47, 59, 47, 64, 81 Trocaram-se 16 com 47
4ª comparação: 22, 37, 16, 47, 59, 47, 64, 81 Permanecem, pois 47<59
5ª comparação: 22, 37, 16, 47, 47, 59, 64, 81 Trocaram-se 47 com 59
6ª comparação: 22, 37, 16, 47, 47, 59, 64, 81 Permanecem, pois 59<64
Encerra-se o segundo passo, com a posição 7 ocupada pelo número 64.

TERCEIRO PASSO: Como o leitor já percebeu, nosso objetivo é transferir um número ( menor ou igual ao 64 ) para a posição 6, partindo da última seqüência do passo anterior.

Situação inicial: 22, 37, 16, 47, 47, 59, 64, 81
1ª comparação: 22, 37, 16, 47, 47, 59, 64, 81 Permanecem, pois 22<37
2ª comparação: 22, 16, 37, 47, 47, 59, 64, 81 Trocaram-se 37 com 16
3ª comparação: 22, 16, 37, 47, 47, 59, 64, 81 Permanecem, pois 37<47
4ª comparação: 22, 16, 37, 47, 47, 59, 64, 81 Permanecem, pois 47=47
5ª comparação: 22, 16, 37, 47, 47, 59, 64, 81 Permanecem, pois 47<59
Encerra-se o passo com o número 59 na sexta posição.

QUARTO PASSO: Preencher a quinta posição com um número menor ou igual àquele que se encontra na posição 6:

Situação inicial: 22, 16, 37, 47, 47, 59, 64, 81
1ª comparação: 16, 22, 37, 47, 47, 59, 64, 81 Trocaram-se 22 com 16
2ª comparação: 16, 22, 37, 47, 47, 59, 64, 81 Permanecem, pois 22<37
3ª comparação: 16, 22, 37, 47, 47, 59, 64, 81 Permanecem, pois 37<47
4ª comparação: 16, 22, 37, 47, 47, 59, 64, 81 Permanecem, pois 47=47

QUINTO PASSO: Preencher a quarta posição com um número menor ou igual àquele que se encontra na posição 5:

Situação inicial: 16, 22, 37, 47, 47, 59, 64, 81
1ª comparação: 16, 22, 37, 47, 47, 59, 64, 81 Permanecem, pois 16<22
2ª comparação: 16, 22, 37, 47, 47, 59, 64, 81 Permanecem, pois 22<37
3ª comparação: 16, 22, 37, 47, 47, 59, 64, 81 Permanecem, pois 37<47

SEXTO PASSO: Preencher a terceira posição com um número menor ou igual àquele que se encontra na posição 4:

Situação inicial: 16, 22, 37,
47, 47, 59, 64, 81
1ª comparação: 16, 22, 37, 47, 47, 59, 64, 81 Permanecem, pois 16<22
2ª comparação: 16, 22, 37, 47, 47, 59, 64, 81 Permanecem, pois 22<37

SÉTIMO PASSO: Preencher a segunda posição com um número menor ou igual àquele que se encontra na posição 3:
Situação inicial: 16, 22, 37, 47, 47, 59, 64, 81
1ª comparação: 16, 22, 37, 47, 47, 59, 64, 81 Permanecem, pois 16<22

O processo finaliza com a seqüência ORDENADA.

6) Demonstre o código-fonte do método bolha e comente o mesmo.

Resposta:

/* Algoritmo de ordenação Bubble Sort */

#include <stdio.h>

  /* Definição da função bubble_sort */
  void bubble_sort (int vet[], int max) {     
    int flag, i, aux;  
   
    do {
      flag = 0;
      for (i = 0; i < (max - 1); i++) {
      
       /* Verfica se o vetor está em ordem, no caso ele coloca em ordem crescente, para decrescente trocar '>' por '<' */
       if (vet[i] > vet[i+1]) {
         /* Caso não esteja, ordena */
         aux = vet[i];
         vet[i] = vet[i+1];
         vet[i+1] = aux;
         flag =1;
       }
      }
    /* Repete enquanto algum valor estiver fora de ordem */ 
    } while (flag == 1);
   
    /* Imprime o vetor ordenado em ordem crescente */
    for (i = 0; i < max; i++) {
      printf ("%d ",vet[i]);
    }
    printf ("\n");
  }

main () {
  int max, i;
 
  /* Lê o total de números do vetor */
  scanf ("%d", &max);
 
  /* Define o vetor com o número max de algarismos */
  int vetor[max];
 
  for (i = 0; i < max; i++) {
    /* Lê cada indice do vetor */
    scanf ("%d",&vetor[i]);
  }
 
  /* Dentro dessa função o vetor será ordenado */
  bubble_sort (vetor, max);
 
}