Beruflich Dokumente
Kultur Dokumente
PROINTER II
Tutora:
INTRODUO
Irei apresentar um projeto que foi desenvolvido para ajudar no controle da renda e
despesas das famlias.
Esse projeto mostra a quantidade de pessoas na famlia, se a renda maior ou
menor que as despesas.
Tudo isso acontecera aps o cadastramento dos membros da famlia, logo aps
teremos os dados e informaremos a renda e os gastos de cada um.
Esta etapa ir frisar os principais sistemas utilizados hoje para o controle de
despesas, organizao e funcionamento de uma empresa.
Mostrando a importncia e funo de cada um destes sistemas, complementando o
primeiro sistema criado na primeira parte, anteriormente apresentado.
O trabalho a seguir ir mostrar um pouco mais desse projeto e suas funes
1 Contextualizao
Neste trabalho irei mostra um projeto desenvolvido para melhorar o controle de
despesa das famlias de qualquer classe social que opte em usar o sistema.
O sistema foi desenvolvido com o intudo de melhor controlar os gastos das famlias
de grande ou pequeno porte, trazendo facilidade e agilidade nos clculo e controle.
Com apenas um cadastro e possvel calcular o numero de membros totais, separar
filhos, quantidade de filhos maiores de 18 anos, renda, tipo de renda. porem tudo
isso parte do cadastro da famlia, podendo ser modificado aps iniciar
Suponhamos que temos uma determinada famlia onde o numero total de membros
so 3 pai, me e filho. Porm essa famlia aps um tempo ganha mais um membro
onde a despesa mensal da famlia aumenta, o sistema permite realizar e assim
passara a registrar novos clculos passando as despesas de 3 para 4 membros
checando todos os dados acima citado.
O funcionamento parte de um cadastro, basta realizar o cadastro de todos os
membros da famlia e as despesas e a mesma ir calcular a despesa total,
verificando os dados solicitados como:
i.
ii.
iii.
iv.
v.
vi.
vii.
viii.
2.1-Cronograma de Desenvolvimento
3-Fluxograma
3.1-Mapas do Sistema
3.2-Diagrama do Fluxo
4 Algoritmo
Algoritmo"Orcamento Familiar"
6
Declare
ESTRUTURA MEMBRO
INCICIO
CODMEMBRO: INTEIRO
NOME[50]: CARACTERE
TIPO[20]: CARACTERE
IDADE: INTEIRO
FIMESTRUTURA
DECLARE
ESTRUTURA RECEITA
INICIO
CODRECEITA: INTEIRO
CODMEMBRO: INTEIRO
DESCRICAO[20]: CARACTERE
VALOR: REAL
FIMESTRUTURA
DECLARE
ESTRUTURA DESPESA
INCICIO
CODDESPESA: INTEIRO
CODMEMBRO: INTEIRO
7
DESCRICAO: CARACTERE
VALOR: REAL
TIPO[20]: CARACTERE
FIMESTRUTURA
LISTADESPESA()
INICIO
File *ArquivoD
ESTRUTURA DESPESA D
SE (ARQUIVO == ABRIR (ARQUIVO.DAT, r)) == NULO ENTAO
ESCREVA(ERRO AO ABRIR O ARQUIVO
SENAO
SAIR
FACA
LEIA(D, TAMANHO DO ARQUIVO(ESTRUTURA DESPESA), 1, ARQUIVOD)
ESCREVA(MOSTRE: , D.CODDESPESA, D.CODMEMBRO,
D.DESCRICAO, D.VALOR, D.TIPO)
ENQUANTO(FIM_ARQUIVO(ARQUIVOD) ==0)
FECHAR(ARQUIVOD)
FUCAO CADASTROMEMBRO()
INICIO
LIMPA(TELA)
8
ARQUIVO *ARQUIVOM
ESTRUTURA MEMBRO MEMBRO: M
SE ((ARQUIVOM==ABRIR)("ARQUIVO.DAT", "r"))==NULO ENTAO
ESCREVA("ERRO AO ARIR O ARQUIVO")
SENAO
SAIR
FIMSE
FACA
Leia(Arquivo m, tamanho do arquivo(estrutura MEMRO),1, ArquivoM)
ESCREVA(Mostre: , m.codmembro, m.Nome, m.Tipo, m.Idade)
ENQUANTO(fim_do_arquivo(ArquivoM) == 0)
FECHAR(ArquivoM)
//Chamada da funo receita
ARQUIVO *ARQUIVOR
ESTRUTURA RECEITA r
SE (ARQUIVOR == ABRIR(ARQUIVO.DAT, r)) == NULO ENTAO
ESCREVA(ERRO AO ABRIR O ARQUIVO)
SAIR
FACA
LEIA(R, TAMANHO DO ARQUIVO(ESTURTURA RECEITA),1,
ARQUIVOR)
ESCREVA(MOSTRE: , R.CODRECEITA,
R.CODMEMBRO, R.DESCRICAO, R.VALOR)
9
ENQUANTO(FIM_ARQUIVO(ARQUIVOR == 0)
CadastroMembro()
Limpa Tela
Estrutura Membro membro
ESCREVAL(\t\tCADASTRO DE MEMBROS)
ESCREVA(CODIGO. :)
LEIA(Membro.codMembro)
ESCREVA(Nome...:)
LEIA(membro.Nome)
ESCREVA(Tipo....:)
LEIA(membro.Tipo)
ESCREVA(Idade....:)
LEIA(membro.idade)
ARQUIVO *ARQUIVOm
SE (ARQUIVOm ==ABRIR(ARQUIVO.DAT, a)) == NULO ENTAO
ESCREVA(Erro ao abrir o arquivo)
SENAO
SAIR
FIMSE
FECHAR(ARQUIVOm)
FIMFUNCAO
FUNCAO CADASTRORECEITA()
INICIO
10
LIMPA TELA
Estrutura RECEITA receita
ESCREVA L(\t\tCadastro de Receita: )
ESCREVA (Codigo da Receita: )
Leia(receita.codReceita)
ESCREVA (Codigo do Membro: )
Leia(receita.codMembro)
ESCREVA(Descricao....: )
Leia(receita.Descricao)
ESCREVA(Valor....................:)
Leia(receita.valor)
ARQUIVO *ARQUIVOR
SE (ARQUIVOR == ABRIR (ArquivoR.dat, a)) == nulo ENTAO
ESCREVA(Erro ao abrir o arquivo)
SENAO
SAIR
FIMSE
ESCREVA(receita, tamanho do arquivo(estrutura Receita),1,ArquivoR)
FECHAR(ARQUIVOR)
FIMFUNCAO
Funcao CadastroDespesa()
INICIO
Limpa Tela
11
Limpa tela
Achou, codigo: inteiro
Estrutura Membro m
Estrutura Despesa d
ESCREVAL(Relatorio de despesas pessoais)
ESCREVA(Digite o cdigo: )
Leia(cdigo)
ARQUIVO *ArquivoM
Se (ArquivoM == abrir(ArquivoM.dat,r)) == nulo Entao
ESCREVA(Erro ao abrir o arquivo)
Senao
Sair
FACA
Leia(m, tamanho(Estrutura Membro),1,ArquivoM)
Se (m.codMembro == cdigo) Entao
Achou = 1
Pausa
Fimse
ENQUANTO(fim_arquivo <>(ArquivoM)
FECHAR(ArquivoM)
Td: real
Se (achou==0) Entao
ESCREVA(Membro no cadastrado: )
13
Pausa
Senao
ESCREVA(Codigo Nome Tipo Idade, m.codMembro, m.Nome,
m.Tipo, .Idade)
Se (m.Idade < 18) Entao
ESCREVAL(Membro menor de idade)
ESCREVA(Suas despesas esto includas as despesas da
famlia)
Senao
ARQUIVO *arquivo
Se (ArquivoD ==abrir(ArquivoD.dat,r)) == nulo Entao
ESCREVA(Erro ao abrir o arquivo)
Seno
sair
fimse
fimse
FACA
Leia(d, tamanho(Estrutura Despesa), 1,ArquivoD)
Se (fim_arquivo<>(ArquivoD) Entao
Se (d.codMembro == cdigo e tamanho(d.Tipo, p) == 0) Entao
ESCREVAL(Codigo despesa descrio Valor
Tipo,d.codDespesa, d.Descricao, d.Valor, d.Tipo)
Td <- td + d.valor
Fimse
14
ENQUANTO(fim_arquivo <>(ArquivoD))
ESCREVA(Total: , td:2:2)
pausa
Fimse
FIMFUNCAO
FUNCAO RelatorioFamilia()
INICIO
Limpa tela
Achou, codigo: inteiro
Achou = 0
Td: real
Td = 0
Estrutura Membro m
Estrutura despesa d
ESCREVAL(Relatorio de despesas familiares: )
ARQUIVO * ArquivoM
ARQUIVO *ArquivoD
Se (ArquivoM == abrir(Arquivo.dat, r)) == nulo Entao
ESCREVA(Erro ao abrir o arquivo)
Ento
Seno
Sair
Fimse
15
FACA
LEIA(m, tamanho(Estrutura Membro),1,ArquivoM)
Se (ArquivoD == abrir(ArquivoD.dat,r)) == nulo Entao
ESCREVA(Erro ao abrir o arquivo)
Seno
sair
fimse
FACA
LEIA(d, tamanho(Estrutura Despesa),1,ArquivoD)
Se(m.codMembro ==d.codMembro e (d.Tipo, f) ==0) Entao
Td <- td + d.valor
ESCREVA(d.codDespesa, d.Descricao, d.Valor, d.Tipo)
Seno
Se (m.codMembro == d.codMembro e m.Idade <18) Entao
Td <- td + d.Valor
ESCREVA(d.codDespesa, d.Descricao, d.Valor,
d.Tipo)
fimse
Fimse
ENQUANTO(fim_arquivo <>(ArquivoD))
FECHAR(ArquivoD)
ENQUANTO (fim_arquivo <>(ArquivoM))
FECHAR(ArquivoM)
16
ESCREVA(Total: , Td:2:2)
FIMFUNCAO
FUNCAO Relatorio()
INICIO
Limpa Tela
Op: inteiro
ESCREVAL(\t\tRelatorio: )
ESCREVA(1 Despesas Pessoais 2 despesas Familiares Qual a sua
opo: )
Leia(op)
ESCOLHA (OP)
CASO 1: RelatorioPessoal()
Pausa
Caso 2: RelatorioFamilia()
pausa
FIMESCOLHA
FIMFUNCAO
FUNCAO Lista()
INICIO
Limpa tela
Op: inteiro
ESCREVAL(\t\tListagem:)
17
FIMESCOLHA
FIMFUNCAO
INICIO
OP: inteiro
FACA
LIMPA TELA
ESCREVAL(\t\tMenu Principal)
ESCREVAL(1- Cadastro Membro 2 Cadastro Receita 3
Cadastro Despesa 4 Relatorio
5 Listagem 6 sair)
19
20
21
22
23
24
Pointer 2 Parte
7-Componentes de Sistemas de Informaes
Para seu funcionamento em SI tem como estrutura fundamental cinco recursos
principais, que so interligados e interdependentes:
25
Recursos Humanos;
Software;
Hardware;
Rede de dados.
Recursos Software
Programas-Sistemas
operacionais,
programas
de
planilhas
eletrnicas,
de
processamento de textos.
Procedimentos-procedimento de entrada de dados, procedimentos de correo de
erros.
Recursos de Dados
Descrio de produtos, cadastro de clientes, arquivos de funcionrios, banco de
dados de estoque.
Recursos de Rede
Meio de comunicao, internet, acessa a redes e software de controle.
7.1 Atividades do SI
Entrados de Dados-Captao e reparao dos dados para o processamento.
A entrada normalmente assume a forma de atividade de registro de dados
como gravar e editar. Uma vez registrados, os dados podem ser armazenado
at serem requisitados para processamento.
Processamento Os Dados so submetidos a atividades de processamento
com clculo, comparao, separao, classificao e resumo. Estas
atividades organizam, analisam e manipulam os dados, convertendo-os assim
em informao para os usurios finais.
Sada- A informao e transmitida em vrias formas para o usurios finais e
colocadas disposio destes na atividade de sada. A meta dos sistemas de
informao e a produo de produtos de informaes apropriadas para o
usurio finais.
Armazenamento-E a atividade do sistema de informao na qual os dados e
informaes so retidos de uma maneira organizada para uso posterior.
Controle- Uma importante atividade do sistema de informao e o controle de
seu desempenho. Um sistema de informao deve produzir feedback sobre
suas atividades de entrada, processamento, sada e armazenamento. O
feedback deve ser monitorado e avaliado para determinar se o sistema est
atendendo os padres de desempenho estabelecidos, e utilizado para fazer
ajustes nas atividades do sistema para correo de defeitos.
7.2 Aplicaes de Sistemas de Informao
27
competitiva.
Exemplos:
comercio
de
aes
online,
29
Sendo assim temos diversos outros que podem ser citados como sistema
empresarial como SIG (Sistema de Informao Gerencial),responsveis pelo
relatrio fornecidos entrada e sada do sistema.Conjunto interado de pessoas
,procedimentos , banco de dados e dispositivos que suprem os gerentes e os
tomadores de deciso com informaes para ajuda-los a alcanar as metas das
organizao ,gerando relatrios diversos.Ele gera produtos de informao que
apoiam muitas necessidades cotidianas de tomadas de decises de gerentes de
empresas.
Controle de estoque;
Contas a receber;
Contas a pagar;
Folha de pagamento etc...
30
31
Marketing
Produo
Administrao financeira
Administrao de materiais
Administrao de Recursos Humanos
Administrao de servios
Gesto empresarial
Subdividem-se em funes necessrias ao funcionamento de uma empresa,
pois, por meio de execuo das funes e atividades que se alcanam
Modelos estatsticos;
Modelos de Otimizao;
Modelos de previso;
Modelos de Biblioteca e;
Modelos de anlise e sensibilidade
um solo, analisando o tipo de cultura e solo para determinar o tipo de irrigao a ser
implantado.
10 Diagramas de Arquitetura
35
11 Dimensionamento do Sistema.
Para suportar nossa aplicao, necessitaremos de um servidor Cloud rodando em
Apache e Mysgl de preferncia uma data Center local (Google Cloud Neraline) com
a configurao mnima abaixo:
O link de internet deve ter no mnimo 10MB dedicado com geradores de energia
como reserva.
11.1 Interao Humana Computador
36
12 Fluxograma
#include <cstdlib>
#include <cstdio>
#include <iostream>
#include <math.h>
#include <stdio.h>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>
#include <iostream>
#include <cctype>
#include <locale.h>
/* run this program using the console pauser or add your own getch, system("pause")
or input loop */
struct cadastro {
38
struct contas{
int codigolancamento, tipodespesa, codigoMembro;
double escola, transporte, lazer, saude, previdencia, outros, moradia, agua,
luz, gas, IPTU, prestacaooCarro, IPVA,seguro, combustivel, higienizacao,
manutencao;
bool excluido;
};
cabecalho cabecalhobanco;
FILE *arquivo;
char *nomear = "cadastro.bin";
char *ArqLanc = "lanc.bin";
39
while(!feof(arquivo)){
fread(&dados,sizeof(dados),1,arquivo);
if (codigo == dados.codigolancamento && dados.codigolancamento !=0
){
vazio = dados;
if (dados.excluido == true){
vazio = limpo;
40
}
}
}
fclose(arquivo);
return vazio;
}
while(!feof(arquivo)){
fread(&dados,sizeof(dados),1,arquivo);
if (codigo == dados.codigo && dados.codigo !=0 ){
vazio = dados;
if (dados.excluido == true){
vazio = limpo;
}
}
}
fclose(arquivo);
return vazio;
}
bool ExcluirMembroFamilia(){
int idadeMembro=0, tipocadastro=0;
cadastro dados, dadosTmp;
43
system("cls || clear");
if (dados.codigo == 0){
printf("No foi possivel encontrar o menbro com este codigo\n");
system("PAUSE");
return false;
}
dados = buscaRegistro(dados.codigo);
if (dados.codigo == 0){
printf("No foi possivel encontrar o menbro com este codigo\n");
system("PAUSE");
return false;
}
char simnao[2];
printf("Confirma a excluso do membro %s ?", dados.nomeMembro);
44
scanf("%s", &simnao);
if (simnao == "s" || simnao == "S"){
dados.excluido = true;
AddRegistroMembro(dados);
}
return true;
bool AlterarMembroFamilia(){
int idadeMembro=0, tipocadastro=0;
cadastro dados, dadosTmp;
system("cls || clear");
if (dados.codigo == 0){
printf("No foi possivel encontrar o menbro com este codigo\n");
system("PAUSE");
45
return false;
}
dados = buscaRegistro(dados.codigo);
if (dados.codigo == 0){
printf("No foi possivel encontrar o menbro com este codigo\n");
system("PAUSE");
return false;
}
46
bool CadastroMembroFamilia(){
int idadeMembro=0, tipocadastro=0;
cadastro dados, dadosTmp;
system("cls || clear");
printf("\nDigite o cdigo do Membro:");
scanf("%d", &dados.codigo);
if (dados.codigo != 0){
dadosTmp = buscaRegistro(dados.codigo);
if (dadosTmp.codigo != 0){
printf(" Codigo escolhido ja exite em nossa base de dados\n");
printf("Nome do membro: %s \n", &dadosTmp.nomeMembro);
printf("Idade: %d \n\n", &dadosTmp.idadeMembro);
system("PAUSE");
return false;
}
}
47
bool menuMembro(){
int continuar=1;
system("cls || clear");
printf("\nEscolha uma opo no menu\n");
printf("+========================================+\n");
printf("|
Cadastro de Memmbros
|\n");
printf("+========================================+\n");
printf("| Escolha uma opo no menu
|\n");
|\n");
|\n");
|\n");
48
|\n");
printf("+========================================+\n");
scanf("%d", &continuar);
switch(continuar)
{
case 1:
CadastroMembroFamilia();
case 2:
AlterarMembroFamilia();
case 3:
ExcluirMembroFamilia();
//break;
case 0:
system("cls || clear");
return false;
//break;
//
default:
printf("Digite uma opcao valida\n");
49
} while(continuar);
return true;
}
bool lancamento(){
int codigo, codigoMembro, tipodespesas;
contas lanc;
cadastro membro;
system("cls || clear");
printf("Digite o cdigo do Lanamento:");
scanf("%d", &codigo);
if (codigo == 0){
return false;
}
lanc = buscaRegistroLanc(codigo);
if (lanc.codigolancamento != 0){
printf(" Codigo do lanamento escolhido ja exite em nossa base de
dados\n");
system("PAUSE");
return false;
}
50
lanc.codigolancamento = codigo;
printf("\nDigite o cdigo do Membro:");
scanf("%d", &codigoMembro);
membro = buscaRegistro(codigoMembro);
if (membro.codigo == 0){
printf("Membro no encontrado, impossivel continuar\n");
system("PAUSE");
return false;
}
lanc.codigoMembro = codigoMembro;
printf("Membro: %s \n", membro.nomeMembro);
printf("---------------------------------------------------------------------------\n");
printf("Tipo de Depesas\n");
printf("---------------------------------------------------------------------------\n");
printf("1 - Despesa pessoal\n");
printf("2 - Despesa famlia\n");
scanf("%d", &lanc.tipodespesa);
scanf("%lf", &lanc.outros);
}else{
printf("Digite um valor pra Escola:");
scanf("%lf", &lanc.escola);
printf("Digite um valor pra Transporte:");
scanf("%lf", &lanc.transporte);
printf("Digite um valor pra Lazer:");
scanf("%lf", &lanc.lazer);
printf("Digite um valor pra Saude:");
scanf("%lf", &lanc.saude);
printf("Digite um valor pra Previdencia:");
scanf("%lf", &lanc.previdencia);
}
scanf("%lf", &lanc.gas);
printf("Digite um valor pra IPTU:");
scanf("%lf", &lanc.IPTU);
return true;
}
bool relatorio(){
int i;
system("cls || clear");
printf("===========================================================
===================\n");
printf("
printf("===========================================================
===================\n");
FILE *arquivoLanc;
arquivoLanc = fopen(ArqLanc,"r+b");
contas dados;
cadastro membro;
if (arquivoLanc==0){
printf("Erro de arquivo");
system("PAUSE");
fclose(arquivo);
return false;
}
printf("Membro
| Moradia
|Carro
|Outras\n");
while(!feof(arquivoLanc)){
fread(&dados,sizeof(dados),1,arquivoLanc);
if (dados.excluido == false){
moradia = dados.lazer + dados.saude + dados.previdencia +
dados.moradia + dados.agua + dados.luz + dados.gas + dados.IPTU;
carro = dados.prestacaooCarro + dados.IPVA + dados.seguro +
dados.combustivel + dados.higienizacao + dados.manutencao;
outros = dados.escola + dados.transporte + dados.outros;
membro = buscaRegistro(dados.codigoMembro);
printf("===========================================================
===================\n");
printf("Total
| %lf
|%lf
total_outros);
fclose(arquivoLanc);
system("PAUSE");
}
do
{
56
system("cls || clear");
printf("\n\tBem Vindos ao Gerenciador Financeiro 1.0\n\n");
printf("+========================================+\n");
printf("|
Menu Principal
|\n");
printf("+========================================+\n");
printf("| Escolha uma opo no menu
printf("| 1 - Cadastro de Membro
printf("| 2 - Fazer lanamentos
printf("| 3 - Relatorio Financeiro
printf("| 0 - Sair do sistema
|\n");
|\n");
|\n");
|\n");
|\n");
printf("+========================================+\n");
scanf("%d", &continuar);
system("cls || clear");
switch(continuar)
{
case 1:
menuMembro();
break;
case 2:
lancamento();
57
break;
case 3:
relatorio();
break;
case 0:
//sair();
break;
default:
printf("Digite uma opcao valida\n");
}
} while(continuar);
return 0;
}
14 Dicionrios de Dados
Concluso
Com base nas aulas de Construo de Algoritmo, Programao Estruturada, Analise
Estruturada de Sistemas e Responsabilidade Social e Meio Ambiente, foi possvel
criar um programa em que controla a renda e as despesas das famlias
independente de seu tamanho ou classe social, facilitando o oramento das famlias,
no qual permite um domnio de suas contas bem como suas gastos.
No que se trata de meio ambiente, o trabalho analisou como podemos preservar
nosso planeta usando recursos acessveis que todos podem fazer a sua parte.
Foi apresentado um breve treinamento de como o usurio pode manusear o
sistema.
O trabalho tambm mostrou os modos de ser exibidos em Mapa de Sistemas,
Fluxograma, Algoritmo e Diagrama de Fluxo de Dados.
Nesta etapa apresentamos os principais componentes do sistema de informao.
Apresentamos os sistemas mais utilizados nas empresas, sua rotina e
funcionamento. Sistemas tais quais CRM, SIG e SPT que apresenta grande
60
61
Bibliografias
Desenvolvimento sustentvel disponvel em,
https://pt.wikipedia.org/wiki/Desenvolvimento_sustentvel
Indicadores de sustentabilidade disponvel em,
http://www.ambiente.maiadigital.pt/ambiente/indicadores/o-que-sao-indicadores-desustentabilidade ,
Responsabilidade social disponvel em, http://www.responsabilidadesocial.com/oque-e-responsabilidade-social ,
Significados do meio Ambiente disponivel em, http://www.significados.com.br/meioambiente/ ,
Meio ambiente disponvel em, http://www3.ethos.org.br/conteudo/gestaosocialmente-responsavel/meio-ambiente/#.VipjlVJdHIU ,
Mudana climtica disponvel em,
http://www.wwf.org.br/natureza_brasileira/reducao_de_impactos2/clima/mudancas_cl
imaticas2/,,
Fundamentos De Sistemas De Informaes disponvel em,
http://www.profdamasco.site.br.com/ApostilaFundamentosSI.pdf
Fundamentos de Sistema de Informao disponvel em,
http://pt.slideshare.net/ismarfrango/fundamentos-de-sistemas-de-informacao-aula-5
62
63
64