Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Projecto de elaboracao de um software em c++, Notas de estudo de Informática

detalhes da linguagem c++

Tipologia: Notas de estudo

2012

Compartilhado em 15/11/2012

helecardino-cabral-7
helecardino-cabral-7 🇧🇷

4.8

(13)

56 documentos

1 / 15

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
ÍNDICE
INTRODUÇÃO......................................................................................................................................... 1
CÓDIGO FONTE...................................................................................................................................... 1
FLUXAGRAMA..................................................................................................................................... 10
DETALHES DO CÓDIGO FONTE........................................................................................................10
CONCLUSÃO.........................................................................................................................................15
Relatório de Programação.
Helecardino Crispino Cabral.Página 1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff

Pré-visualização parcial do texto

Baixe Projecto de elaboracao de um software em c++ e outras Notas de estudo em PDF para Informática, somente na Docsity!

ÍNDICE

  • INTRODUÇÃO.........................................................................................................................................
  • CÓDIGO FONTE......................................................................................................................................
  • FLUXAGRAMA.....................................................................................................................................
  • DETALHES DO CÓDIGO FONTE........................................................................................................
  • CONCLUSÃO.........................................................................................................................................

INTRODUÇÃO

Este presente trabalho é um programa de recenseamento populacional que tem como função inserir o nome do recenseado, a idade, estado civil, profissão e o género; A pois inserir estes dados o programa deve fazer todas operações necessárias e no fim apresente a quantidade das pessoas recenseadas, o número de crianças recenseadas e a sua percentagem (que compreende a idade de 0 a 13 anos), adolescentes e sua percentagem (que compreende a idade de 14 a 17 anos), jovens e sua percentagem (que compreende a idade de 18 a 35 anos), adultos e sua percentagem (que compreende a idade de 36 a 49 anos) e idosos e a sua percentagem (que compreende a idade de 50 anos em diante), a quantidade de estudantes recenseados e sua percentagem, professores e sua percentagem, operários e sua percentagem, camponeses e sua percentagem, desempregados e sua percentagem, empreendedores e sua percentagem, quantidade das pessoas casadas e sua percentagem, casadas e sua percentagem, o número de mulheres recenseadas e sua percentagem e homens e sua percentagem.

CÓDIGO FONTE

Neste relatório irá detalhar o código fonte que se segue: #include

system ("mode con: cols=115 lines=70"); /* controlador do tamanho da tela*/ cout <<" introduza o nome: [0]-parar:\n"; cin >>nome; cout <<"introduza a idade: [0]-parar:\n"; cin >>idade; cout <<"Casado[c] solteiro[s]\ndigite o estado civil: [0]-parar\n"; cin>>estado; while (estado!='s'&&estado!='c'&&estado!='0') /* condicao de erro*/ { cout <<"opsao incorecta\nCasado[c] solteiro[s]\ndigite o estado civil: [0]-parar\n"; cin >>estado; } estado_civil(); /* chamada da funcao estado sivil*/ cout <<"PROFESSOES\nprofessor [p]\nestudante [e]\noperario [o]\nimprendedor [i] \ncampones [c]\ndesempregado[d]\n"; cout <<"digite a professao: [0]-parar:\n"; cin >>prof; while (prof!='0'&&prof!='p'&&prof!='e'&&prof!='o'&&prof!='c'&&prof!='i'&&prof!='d') /* condicao de erro*/ { cout <<"opsao incorecta\ndigite a professao: [0]-parar\n";

cin >>prof; } cout <<"mascolino[m] femenino[f]\nintroduza o sexo [m] [f]: [0]-sair:\n"; cin >>sexo; trabalho(); /* chamada da funcao emprego*/ while (sexo!='m'&&sexo!='f'&&sexo!='0') /* opsao de erro*/ { cout <<"opsao incorecta\nmascolino[m] femenino[f]\nintroduza o sexo [m] [f]: [0]-sair: \n"; cin >>sexo; switch (sexo) { case 'm' : g++; /contador de homens/ break ; case 'f': h++; /* contador das mulheres*/ break ; default : cout <<"\n"; } if (idade>0&&idade<=13) /* teste*/

while (idade!=0) ; /condicao para o programa parar/

system ("cls"); /limpa os dados ja inceridos/ relatorio(); /* chamada da funcao relatorio*/ return 0;

} void relatorio()/segunda funcao/ {

percent(); /chamada da funcao que calcula a percentagem/ cout<<"---------------------------------------"<<endl<<"os recenciados sao: \n"<<i<<endl<<"---------------------------------------"<<endl<<"criancas: "<<a<<". equivale a:"<<pcrianca<<"%"<<endl<<"adolescentes:"<<b<<". equivale a:"<<padolcent<<"%"<<endl<<"jovens: "<<c<<". equivale a:"<<pjovem<<"%"<<endl<<"adultos: "<<d<<". equivale a:"<<padulto<<"%"<<endl<<"idosos: "<<e<<". equivale a:"<<pidoso<<"%"<<endl<<"mulheres: "<<h<<". equivale a:"<<pmulher<<"%"<<endl<<"homens: "<<g<<". equivale a:"<<phome<<"%"<<endl; cout<<"professores: "<<pcont<<". equivale a:"<<ppofe<<"%"<<endl<<"estudantes "<<econt<<". equivale a:"<<pecont<<"%"<<endl<<"desempregado "<<dcont<<". equivale a:"<<pdcont<<"%"<<endl<<"campones "<<ccont<<". equivale a:"<<pccont<<"%"<<endl<<"operario "<<ocont<<". equivale a:"<<pocont<<"%"<<endl<<"empreendedor "<<icont<<". equivale a:"<<picont<<"%"<<endl;

cout<<"casados: "<<cacont<<". equivale a:"<<pcacont<<"%"<<endl<<"solteiros: "<<scont<<". equivale a:"<<pscont<<"%"<<endl<<"empregado estatal: "<<eestat<<". equivale a:"<<peestat<<"%" ; cout<<"\n--------------------------------------"; Sleep (100000); /tempo que a tela deve permanecer activa mostrando o relatorio/

}; void estado_civil() /terceira funcao/ { switch (estado) { case 's' : scont++; /contador de solteiros/ break; case 'c': cacont++; /contador de casados/ defaul t: cout<<"\n"; } } void trabalho() /quarta funcao/ {

return; } void percent() /quinta funsao/ { /* calculo de percentagens*/ pidoso=(100e)/i; pcrianca=(100a)/i; padolcent=(100b)/i; pjovem=(100c)/i; padulto=(100d)/i; pmulher=(100h)/i; phome=(100g)/i; ppofe=(100pcont)/i; pecont=(100econt)/i; pdcont=(100dcont)/i; pccont=(100ccont)/i; pocont=(100ocont)/i; picont=(100icont)/i; eestat=(pcont+ocont); pcacont=(cacont100)/i;

pscont=(scont100)/i; peestat=(100eestat)/i; } FLUXAGRAMA

O fluxograma que se segue irá mostrar a sequência exacta das funções e como elas estão organizadas (como se chamam).

DETALHES DO CÓDIGO FONTE

O código fonte acima citado é composto por bibliotecas, declaração de funções, declaração de variáveis e as próprias funções. Foram declaradas 4 bibliotecas a saber:

  • #include que é a biblioteca padrão para o uso do main;
  • (^) #include<conio.h> que usa o getch para parar a tela esystem ("cls") para limpar os dados a pois serem inseridos ;
  • #include <stdlib.h> que usa system("mode con: cols= y lines= x") e serve para ajustar o tamanho da tela de interface com o usuário, onde x é o numero de linhas e o y de colunas deve ter a tela de interface;

FUNÇÃOPRINCIPAL (MAIN)

FUNÇÃOESTADO CIVIL

FUNÇÃOTRABALHO )

FUNÇÃORELATORIOFUNÇÃOPERCENTAG EM

Int a=0,b=0,c=0,d=0,e=0,g=0,h=0,econt=0,dcont=0,ccont=0,ocont=0,icont=0,scont=0,cacont=0 ; int pcont=0; int i=- Como vemos todos foram inicializados na sua maioria por zero, exceptuando o contador i que tem um defeito de 1, pois o programa só para com a idade; Como já tinha se detalhado nas funções os contadores a (conta as crianças) , b (conta os adolescentes) , c (conta os jovens) , d (conta os adultos) , e (conta os idosos), i (conta os nomes que equivalem ao numero das pessoas recenseadas) , econt (conta os estudantes) , dcont (conta os desempregados) , ccont (conta os camponeses) , ocont (conta os operários) , icont (conta os empreendedores) , scont (conta os solteiros) , cacont (conta os casados) , pcont (conta os professores), todos eles são do tipo inteiro.

  • Variáveis simples char nome[25],sexo,prof,professao,estado; int idade; A que as variáveis são de 2 tipos inteiros e caracteres; Do tipo caracteres: nome que recebe 25 caracteres e recebe o nome do recenseado, sexo recebe o sexo do recenseado que pode ser masculino ou feminino, profissão recebe a profissão do recenseado também que pode ser professor, estudante, desempregado, camponês, operário e empreendedor, e estado que recebe os valores do estado civil que podem ser casado ou solteiro. Do tipo inteiro é a variável idade que recebe os valores da idade da pessoa recenseada.
  • Acumuladores Int eestat É do tipo inteiro e armazena o valor do empregado estatal que é a soma do professor e operario.
  • Operações

Int ppofe, pecont ,pdcont, pccont, pocont, picont, peestat, pscont, pcacont; int pidoso, pcrianca, padolcent, pjovem, padulto; int pmulher, phome; Todas são do tipo inteiro e que calculam as percentagens da seguinte forma: Pprof (calcula a percentagem do professor), pecont (percentagem do estudante) , pdcont (desempregado) , pccont (camponês) , pocont (operário) , picont (empreendedor) , peestat (empregado estatal) , pscont (solteiro) , pcacont (casado) , pidoso (idoso) , pcrianca (crianças) , padolcent (adolescentes) , pjovem (jovens) , padulto (adultos) , pmulher (mulheres) , phome (homens) ; A função main que é a principal, contem a declaração de 4 variáveis locai do tipo char , m (masculino), f (feminino), c (casado), s (solteiro), é nesta função que a maquina pede ao usuário que digite o nome do recenseado, idade, estado civil, género e a profissão, esta função é constituída por 1 Estrutura de Selecção Múltipla Switch usada para contar os homens e as mulheres (caso seja ‘m’ ele incrementa g , caso seja ‘f’ incrementa h ), uma estrutura de seleção if/else que separa e conta as idades das pessoas recenseadas (se a idade for maior que 0 e menor ou igual a13- criança, se a idade for maior ou igual a 14 e menor ou igual a 17- adolescentes se a idade for maior ou igual a 18 e menor ou igual a 35- jovem se a idade for maior ou igual a 36 e menor ou igual 49- adulto e se a idade for maior ou igual a 50-idoso) e a estrutura de repeticao do/while que faz a repetição dos pedidos ou seja repete quantas vezes puder a inserção dos dados e que ela só termina quando a idade seja diferente de zero (pede que insira o nome, idade, estado civil, género e só para quando tudo isso for igual a zero) por fim 3 estruturas while que controla se forem digitadas letras não pre definidas no sexo, estado civil e professão, nela são chamadas 3 funções que são: void estado_civil(); void trabalho(); void relatorio(); (eta visualiza todos os cálculos); E ela retorna a zero (função main ).