Analisando propostas

Trabalhando Com Arquivos

Publicado em 04 de Novembro de 2020 dias na TI e Programação

Sobre este projeto

Aberto

O objetivo desse Trabalho Pr´atico ´e praticar a manipula¸c˜ao de arquivos em C e a cria¸c˜ao
de fun¸c˜oes para execu¸c˜ao de determinados procedimentos.
O trabalho pr´atico consiste na implementa¸c˜ao de um sistema de controle de funcion´arios,
que receber´a como entrada a lista de funcion´arios em um arquivo de extens˜ao TXT.
O programa inicialmente deve ler as entradas contendo informa¸c˜oes sobre os funcion´arios,
armazenar essas entradas em alguma estrutura interna (em mem´oria) e realizar as opera¸c˜oes
solicitadas.


Seu programa deve ser capaz de receber dados por parˆametro de linha de comando, bem
como trabalhar com leitura e grava¸c˜ao de arquivos de texto.
Entrada: A entrada possui v´arias linhas, onde cada linha tem detalhes sobre determinado
funcion´ario.
• A primeira linha possui a quantidade (Q) de funcion´arios que constam na lista
(1 ≤ Q ≤ 1000);
• As pr´oximas 4 * Q linhas representam os dados de cada funcion´ario, na seguinte
ordem (Um dado por linha):
– Nome do Funcion´ario
– Sal´ario
– Data de Admiss˜ao
– Departamento
Execu¸c˜ao: O programa deve ser executado a partir da linha de comando com os seguintes
parˆametros:
.\

Tp2 [param1] [param2] [param3]
[param1] (Obrigat´orio): Nome do arquivo de entrada.
Ex.: Input.txt
IMPORTANTE: O arquivo TXT deve estar no mesmo diret´orio do programa.
[Param2] (Obrigat´orio): N´umero correspondente `a fun¸c˜ao a ser executada, a saber:
1. Exportar Lista de Funcion´arios
2.

Listar Funcion´arios por Departamento
3. Encontrar Funcion´ario Mais Antigo
4. Encontrar Funcion´ario Mais Antigo do Departamento
5.

Calcular M´edia Salarial
1
6. Calcular M´edia Salarial por Departamento
[param3] (Opcional): Nome do arquivo de sa´ıda (se fun¸c˜ao 1) ou nome do departamento desejado (para fun¸c˜oes 2, 4 e 6).
Exemplo de cada chamada, considerando o arquivo input.txt como arquivo de
entrada:
1.

Exportar Lista de Funcion´arios: .\Tp2 input.txt 1 output.txt
2. Listar Funcion´arios por Departamento .\Tp2 input.txt 2 Financeiro
3. Encontrar Funcion´ario Mais Antigo .\Tp2 input.txt 3
4. Encontrar Funcion´ario Mais Antigo do Departamento
.\Tp2 input.txt 4 Administrativo
5. Calcular M´edia Salarial .\Tp2 input.txt 5
6. Calcular M´edia Salarial por Departamento .\Tp2 input.txt 6 Gerencia
Sa´ıda: A sa´ıda esperada para cada uma das op¸c˜oes ´e:
1. Exportar Lista de Funcion´arios:
O programa deve gerar um arquivo txt, com o nome passado pelo param3, salvo no
mesmo diret´orio de execu¸c˜ao, com a lista de todos os funcion´arios, em ordem
alfabetica ´ , com os mesmos dados da entrada, um dado por linha (nome,
sal´ario, data de admiss˜ao e departamento).
2. Listar Funcion´arios por Departamento
O programa dever´a imprimir na sa´ıda padr˜ao (tela) a lista dos funcion´arios do setor
passado no param3, em ordem alfabetica ´ , com todos os dados de cada
funcion´ario, um dado por linha (nome, sal´ario, data de admiss˜ao e departamento).
3. Encontrar Funcion´ario Mais Antigo
O programa dever´a imprimir na sa´ıda padr˜ao (tela) todos os dados do funcion´ario
mais antigo (com a data de admiss˜ao mais antiga da lista), um dado por linha (Nome,
Sal´ario, Data de Admiss˜ao e Departamento).
4. Encontrar Funcion´ario Mais Antigo do Departamento
O programa dever´a imprimir na sa´ıda padr˜ao (tela) todos os dados do funcion´ario
mais antigo pertencente ao departamento passado no param3 (com a data de admiss˜ao mais antiga do departamento), um dado por linha (Nome, Sal´ario, Data de
Admiss˜ao e Departamento).
5. Calcular M´edia Salarial
O programa dever´a imprimir na sa´ıda padr˜ao (tela) apenas o valor da m´edia salarial
de todos os funcion´arios da lista.
Ex.: 3455.22
6. Calcular M´edia Salarial por Departamento
O programa dever´a imprimir na sa´ıda padr˜ao (tela) apenas o valor da m´edia salarial
de todos os funcion´arios pertencente ao departamento passado no param3
Ex.: 4500.50
2
IMPORTANTE: As médias devem ser formatadas para exibirem apenas duas casas
decimais.

Categoria TI e Programação
Subcategoria Programação
Qual é o alcance do projeto? Bug ou alteração pequena
Isso é um projeto ou uma posição de trabalho? Um projeto
Tenho, atualmente Eu tenho uma ideia geral
Disponibilidade requerida Conforme necessário
Funções necessárias Desenvolvedor

Prazo de Entrega: 05 de Novembro de 2020

Habilidades necessárias