Ofereço ajuda em Java, C/C++, Python, C#, LISP, AutoLisp, AutoCAD
+55 (062) 98553-6711
Ofereço ajuda em PHP, Python, C#, JavaScript, Laravel, Google Ads e SEO
+55 (062) 98243-1195

Você está aqui: C++ ::: Desafios e Lista de Exercícios Resolvidos ::: Arquivos e Diretórios

Escreva um programa C++ para ordenar as linhas de um arquivo texto em ordem alfabética - Desafio de Programação Resolvido em C++

Quantidade de visualizações: 62 vezes
Pergunta/Tarefa:

Escreva um programa C++ para ordenar as linhas de um arquivo texto em ordem alfabética. Seu código deverá abrir um arquivo texto, ordenar suas linhas em ordem alfabética e salvar o resultado em outro arquivo texto.

Sua saída deverá ser parecida com:

Conteúdo do arquivo:

MARIO SANTOS REIS
ALBERTO SANTIAGO GOMES
INES DE SOUZA MAGALHAES
CARLOS THIAGO SANTOS
ROBERTO CARLOS SILVA REIS
BEATRIZ MARIA CASTRO

As linhas foram escritas em ordem alfabética com sucesso.

Conteúdo do arquivo:

ALBERTO SANTIAGO GOMES
BEATRIZ MARIA CASTRO
CARLOS THIAGO SANTOS
INES DE SOUZA MAGALHAES
MARIO SANTOS REIS
ROBERTO CARLOS SILVA REIS
Resposta/Solução:

Veja a resolução comentada deste exercício usando C++:

----------------------------------------------------------------------
Precisa de ajuda? Chama no WhatsApp +55 (62) 98553-6711 (Osmar)

Este código foi útil? Paga um cafezinho pra mim :-(
PIX: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

// vamos precisar da biblioteca de entrada e saída
#include <iostream>
// vamos precisar também da biblioteca de fluxo de arquivos
#include <fstream>
// vamos precisar do contêiner vector para adicionar as linhas de texto
#include <vector>
// vamos usar o algorítmo sort
#include <algorithm>
// e vamos usar um iterador também
#include <iterator>

using namespace std;

// uma função para exibir o conteúdo das linhas do arquivo
void exibir_conteudo_arquivo(const string &nome_arquivo) {
  // nome do arquivo quer será aberto
  ifstream arquivo(nome_arquivo);
  // para receber cada uma das linhas do arquivo texto
  string linha;

  // o arquivo foi aberto com sucesso?
  if (arquivo.is_open()) {
    cout << "Conteúdo do arquivo:\n" << endl;
    // vamos ler as linhas do arquivo
    while (getline(arquivo, linha)) {
      cout << linha << endl;
    }
    // vamos fechar o arquivo
    arquivo.close();
  } 
  else {
    cout << "Não foi possível abrir o arquivo." << endl;
  }
}
 
// função principal do programa
int main(int argc, char *argv[]) {
  // arquivo de entrada
  ifstream arquivo_entrada("nomes.txt");
  // arquivo de saída
  ofstream arquivo_saida("nomes_ordenados.txt");

  // os arquivos foram abertos com sucesso?
  if (arquivo_entrada.is_open() && arquivo_saida.is_open()) {
    exibir_conteudo_arquivo("nomes.txt");
	
    // um vector para guardar as linhas do arquivo de de entrada
    vector<string> linhas;
    // para guardar as linhas individuais do arquivo
    string linha;

    // vamos ler todas as linhas de texto do arquivo de entrada
    while (getline(arquivo_entrada, linha)) {
      // adiciona esta linha ao vetor
      linhas.push_back(linha);
    }

    // vamos ordenar as linhas em ordem alfabética
    sort(linhas.begin(), linhas.end());

    // agora vamos gravar o vector de linhas no arquivo de saída
    copy(linhas.begin(), linhas.end(), ostream_iterator<string>(arquivo_saida, "\n"));

    // vamos fechar os arquivos de entrada e saída
    arquivo_entrada.close();
    arquivo_saida.close();

    cout << "\nAs linhas foram escritas em ordem alfabética com sucesso.\n" << endl;
    exibir_conteudo_arquivo("nomes_ordenados.txt");
  } 
  else {
    cout << "Não foi possível abrir os arquivos de entrada e saída." << endl;
  }
   
  cout << "\n\n";
  return EXIT_SUCCESS;
}


Link para compartilhar na Internet ou com seus amigos:

Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de C++

Veja mais Dicas e truques de C++

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 24 usuários muito felizes estudando em nosso site.