Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

Playlist CLI em C

Sistema de linha de comando em C para gerenciar uma playlist de músicas usando Fila e Pilha implementadas com nós encadeados.

Problema resolvido

O sistema permite cadastrar músicas para tocar em ordem de chegada, tocar a próxima música da fila e desfazer a última reprodução.

Estruturas usadas

  • Fila encadeada: representa a playlist pendente. Faz sentido porque a próxima música tocada deve ser a primeira que entrou na fila (FIFO).
  • Pilha encadeada: representa o histórico de músicas já tocadas. Faz sentido porque o desfazer sempre atua sobre a última música reproduzida (LIFO).

Funcionalidades

  • Adicionar música
  • Listar fila de músicas
  • Tocar próxima música
  • Desfazer última reprodução
  • Buscar música por ID
  • Mostrar quantidade de músicas
  • Mostrar histórico
  • Salvar dados em arquivo

Persistência

O arquivo usado é playlist.txt.

Formato de cada linha:

F;id;nome;artista;duracao
P;id;nome;artista;duracao
  • F indica que a música está na fila.
  • P indica que a música está no histórico.

Na inicialização, o programa tenta ler esse arquivo. Se ele não existir ou estiver vazio, o sistema inicia normalmente com fila e pilha vazias.

Compilação

gcc -std=c11 -Wall -Wextra -o playlist main.c

Execução

./playlist

Limitações conhecidas

  • O nome da música e do artista não deve conter ;, pois esse caractere é usado como separador no arquivo.
  • O histórico é salvo na ordem da pilha (do topo para baixo).
  • O sistema não toca áudio de verdade; ele apenas simula o controle da playlist.

Organização do projeto

  • main.c: código-fonte principal
  • playlist.txt: arquivo de dados gerado pelo programa
  • README.md: documentação do projeto

About

Repositorio criado para a disciplina de DSA da Unirios de 2026

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages