Buscar

Redes de Comunicação de Dados e Ética Profissional

Prévia do material em texto

UNIVERSIDADE PAULISTA 
SEPI – SISTEMA DE ENSINO PRESENCIAL INTERATIVO 
 
 
 
 
 
 
 
Projeto Integrado Multidisciplinar-III 
 
QUALY 
 
 
 
EDMILSON SANTOS CAVALCANTE 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Nazaré 
Belém 
2019 
 1 
UNIVERSIDADE PAULISTA 
SEPI – SISTEMA DE ENSINO PRESENCIAL INTERATIVO 
 
 
 
 
 
 
 
 
Projeto Integrado Multidisciplinar-III 
QUALY 
 
 
 
 
 
 
EDMILSON SANTOS CAVALCANTE 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Nazaré 
Belém 
2019 
 
 
 2 
Resumo 
 
A linha de conhecimento e pesquisa “Redes de Comunicação de Dados” 
concentra as áreas tradicionalmente chamadas de “Redes de Comunicações e 
Redes de Computadores”. Cada sociedade e cada grupo possuem seus 
próprios códigos de ética. Num país, por exemplo, sacrificar animais para 
pesquisa científica pode ser ético. Em outro país, esta atitude pode 
desrespeitar os princípios éticos estabelecidos de não utilização de animais 
para estes fins. O avanço tecnológico, dentre muitos, pode significar o 
caminhar por percursos jamais tocados ou pisados. Pode significar o 
ultrapassar as barreiras do tempo e do espaço, entre o distante e o perto. 
Palavra chave: pequisa.grupo.tempo. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 3 
 
Abstract 
 
 
The knowledge and research line “Data Communication Networks” 
concentrates the areas traditionally called “Communication Networks and 
Computer Networks”. Each society and each group has their own codes of 
ethics. In one country, for example, sacrificing animals for scientific research 
can be ethical. In another country, this may violate established ethical principles 
of not using animals for these purposes. Technological advancement, among 
many, can mean walking along paths that have never been touched or stepped 
on. It can mean overcoming the barriers of time and space between the distant 
and the near. 
 Keyword: search.group.time. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 4 
SUMÁRIO 
 
1 Introdução...............................................................................................5 
2 Fundamentos de Redes de Dados e Comunicação.................................6 
3 Ética e Legislação Profissional................................................................7 
4 Matemática Para Computação.................................................................8 
5 Metodologia Científica..................................................................9 
6 CONCLUSÃO.........................................................................................10 
7 REFERÊNCIAS BIBLIOGRÁFICAS.......................................................11 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 5 
 Introdução 
 
 
Qualy foi a primeira a adotar o pote retangular e ditou tendência, 
seguida por todas as outras marcas. Criada com o compromisso de oferecer 
uma margarina inovadora, de melhor qualidade, sabor e cremosidade para 
todos os brasileiros, Qualy foi tão rapidamente aceita pelos consumidores 
desde que surgiu nas gôndolas dos supermercados e padarias que se tornou 
líder de vendas ao completar apenas seis anos de idade, em 1997. 
 Tudo começou no início dos anos de 1990 quando a Sadia, já 
reconhecida no segmento agroindustrial pelas décadas de experiência na 
produção de derivados de carne suína, bovina, de frango e peru, resolveu 
ingressar no então crescente setor de margarinas. Após inaugurar uma fábrica 
na cidade portuária de Paranaguá, estado do Paraná, a empresa lançou no 
mercado a margarina Qualy em 1991. A nova marca já nasceu inovando. 
Quando ninguém ainda pensava nisso, ela surgiu falando de qualidade de vida. 
Qualy também é sinônimo de inovação quando o assunto é embalagem. Nessa 
época todas as margarinas tinham o pote redondo. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 6 
2 Fundamentos de Redes de Dados e Comunicação 
 
A linha de conhecimento e pesquisa “Redes de Comunicação de 
Dados” concentra as áreas tradicionalmente chamadas de “Redes de 
Comunicações e Redes de Computadores”. A distinção entre estas áreas era 
mais aparente no passado, no entanto, com o advento da convergência das 
tecnologias de computação e de comunicação os seus limites se tornarem 
quase indistintos e uma acaba sobrepondo outra. Na área comercial, por 
exemplo, as redes revolucionaram o uso da tecnologia dos computadores. 
Muitas empresas que costumavam depender de um sistema centralizado em 
um Mainframe (Servidor Dedicado de Grande Porte) com uma série de 
terminais agora usam redes de computadores, em que cada empregado tem 
um computador em sua mesa. A tecnologia e a perícia dos computadores não 
estão mais centralizadas no Mainframe de uma companhia e em seu 
departamento de Tecnologia da Informação; elas estão distribuídas por toda a 
organização, entre uma rede de computadores e usuários preparados. 
A indústria da computação, por assim dizer, teve um progresso 
espetacular em um curto período de tempo e as redes de comunicação 
também fazem parte desse crescimento tendo um papel fundamental nos 
processos de comunicação para o mundo globalizado. As redes de 
comunicação, cada vez mais rápidas e eficientes, permitiram a comunicação e 
o acesso rápido a qualquer parte do globo de forma praticamente instantânea. 
 
 
 
 
 
 
 7 
3 Ética e Legislação Profissional 
 
Cada sociedade e cada grupo possuem seus próprios códigos de ética. 
Num país, por exemplo, sacrificar animais para pesquisa científica pode ser 
ético. Em outro país, esta atitude pode desrespeitar os princípios éticos 
estabelecidos de não utilização de animais para estes fins. Aproveitando o 
exemplo, a ética na área de pesquisas biológicas é denominada bioética. Além 
dos princípios gerais que norteiam o bom funcionamento social, existe também 
a ética de determinados grupos ou locais específicos. Neste sentido, podemos 
citar: ética médica, ética profissional (trabalho), ética empresarial, ética 
educacional, ética nos esportes, ética jornalística, ética na política, etc. 
Importante destacar ainda alguns exemplos de atitudes éticas que todo o 
trabalhador deve ter o cuidado e praticar o ambiente de trabalho, mais 
especificamente: - Educação e respeito entre os funcionários; - Cooperação e 
atitudes que visam à ajuda aos colegas de trabalho; - Divulgação de 
conhecimentos que possam melhorar o desempenho das atividades realizadas 
na empresa; - Respeito à hierarquia dentro da empresa; - Busca de 
crescimento profissional sem prejudicar outros colegas de trabalho; - Ações e 
comportamentos que visam criar um clima agradável e positivo dentro da 
empresa como, por exemplo, manter o bom humor; - Realização, em ambiente 
de trabalho, apenas de tarefas relacionadas ao trabalho; - Respeito às regras e 
normas da empresa. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 8 
4 Matemática Para Computação 
 
 
 No Brasil colabora fortemente com a computação científica; com 
quatro centros de estudos avançados um na Unifesp (graduação), em São 
José dos Campos, outro na UFMG (graduação), em Belo Horizonte, na 
Unicamp (com o curso de matemática aplicada e computacional), em 
Campinas, na UFS(graduação) e outro naUSP de São Carlos. Esta última em 
um sentido mais estrito, trata dos aspectos de programação e desenvolvimento 
de códigos, técnicas de visualização de resultados de processamento 
numérico, processamento de alto desempenho computacional. 
 
 Possui também forte integração com a Modelagem Computacional, 
uma área de conhecimento que trata da aplicação de modelos matemáticos à 
análise, compreensão e estudo da fenomenologia de problemas complexos em 
áreas tão abrangentes quanto as Engenharias, Ciências exatas, Computação, 
e Ciências humanas. Diante disso, não é mais possível ignorar as alterações 
que as tecnologias provocam na forma como as pessoas vêem e apreendem o 
mundo, bem como desprezar o potencial que essas tecnologias trazem quando 
incorporadas à educação. Portanto em busca de alternativas é importante 
investigar: Como fazer uso das novas tecnologias na educação matemática? 
Como trabalhar funções fazendo uso de meios tecnológicos? 
 O avanço tecnológico, dentre muitos, pode significar o caminhar por 
percursos jamais tocados ou pisados. Pode significar o ultrapassar as barreiras 
do tempo e do espaço, entre o distante e o perto, o possível e o impossível, 
pode, enfim, representar a própria vida ou, em seu contraste, a perda da vida 
no sentido das estratégicas formas de destruição, por meio de instrumentos 
altamente tecnológicos usados para fins maléficos e destrutivos a qualquer 
forma de vida. 
 
 
 
 
 
 
 9 
5. Metodologia Científica 
 
 
Metodologia científica é o estudo dos métodos ou dos instrumentos 
necessários para a elaboração de um trabalho científico. É o conjunto de 
técnicas e processos empregados para a pesquisa e a formulação de uma 
produção científica. 
A metodologia é o estudo dos métodos, especialmente dos métodos 
das ciências. É um processo utilizado para dirigir uma investigação da verdade, 
no estudo de uma ciência ou para alcançar um fim determinado. 
A Metodologia científica aborda as principais regras para uma 
produção científica, fornecendo as técnicas, os instrumentos e os objetivos 
para um melhor desempenho e qualidade de um trabalho científico. 
A pesquisa é uma das atividades primordiais para a elaboração dos 
trabalhos realizados com base na metodologia científica. É a fase da 
investigação e da coleta de dados sobre o tema a ser estudado. 
Ao cumprir as exigências descritas pela metodologia, o aluno deverá 
organizar as etapas necessárias à produção de seu texto, as quais deverão 
agregar saberes e técnicas que o acompanharão ao longo de sua existência. 
 
 
 
 
 
 
 
 
 
 10 
Conclusão 
 
Neste trabalho fica evidente que a empresa Qualy cresceu, sendo que 
a identidade visual da marca passou por uma acentuada alteração ao longo de 
sua história. Em 2006, ano em que as embalagens passaram a ter imagens 
fotográficas, o logotipo passou por mudanças que acompanhavam tendências 
da linguagem visual, dando cada vez mais suavidade e beleza. Qualy detém 
42.1% do mercado nacional (AC/Nielsen) e está presente em sete entre 10 
lares brasileiros. A margarina pode ser encontrada em embalagens de 250gr e 
500gr, nas versões com e sem sal, tradicional, light e Aera. Além disso, Qualy é 
vendida em alguns países da América do Sul, como por exemplo, Argentina e 
Chile, onde é líder de mercado. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 11 
REFERÊNCIAS BIBLIOGRÁFICAS 
 
Material de apóio: Conteúdo das aulas. 
 
Modelos de relatório do PIM 
ARMSTRONG G.; KOTLER P. Princípios de marketing. Rio de Janeiro: 
Prentice Hall, 1988. 
 
ASHLEY, P.A.(Coordenação). Ética e responsabilidade social nos negócios. 
São Paulo: Saraiva, 2002. 
SALOMON, Delcio V. Como fazer uma monografia. São Paulo: Martins Fontes. 
1999 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 12 
UNIVERSIDADE PAULISTA 
SEPI – SISTEMA DE ENSINO PRESENCIAL INTERATIVO 
 
 
 
 
 
 
 
 
Projeto Integrado Multidisciplinar –IV 
 
QUALY 
 
 
 
 
 
 
EDMILSON SANTOS CAVALCANTE 
UP19134916 
 
 
 
 
 
 
 
 
 
 
 
Nazaré 
Belém 
2019 
 
 
 
 13 
UNIVERSIDADE PAULISTA 
SEPI – SISTEMA DE ENSINO PRESENCIAL INTERATIVO 
 
 
 
 
 
 
 
Projeto Integrado Multidisciplinar-IV 
 
QUALY 
 
 
 
 
 
 
 
EDMILSON SANTOS CAVALCANTE 
UP19134916 
 
 
 
 
 
 
 
 
 
 
 
 
Nazaré 
Belém 
2019 
 
 
 14 
Resumo 
 
 É a descrição, de forma lógica, dos passos a serem executados no 
cumprimento de determinada tarefa. É a forma pela qual descrevemos 
soluções de problemas do nosso mundo, afim de serem implementadas 
utilizando os recursos do mundo computacional. Os princípios da engenharia 
de software são sete de acordo com o cientista David Hooker. Eles são 
chamados gerais porque podem ser aplicados a uma única camada da 
engenharia de software, sua qualidade, processos, métodos ou ferramentas, 
bem como a ela como um todo. 
 
Palavra chave : logica.problemas.processos. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 15 
 
 
Abstract 
 
 
 
It is the logical description of the steps to be performed to accomplish a given 
task. It is the way in which we describe problem solutions of our world in order 
to be implemented using the resources of the computational world. The 
principles of software engineering are seven according to scientist David 
Hooker. They are called general because they can be applied to a single layer 
of software engineering, its quality, processes, methods or tools, as well as to it 
as a whole. 
Keyword: logica.problemas.processes. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 16 
SUMÁRIO 
 
1 INTRODUÇÃO........................................................................................17 
2 Linguagem e Técnicas de Programação...................................18 
3 Engenharia de Software I........................................................................19 
4 CONCLUSÃO........................................................................................ 20 
5 REFERÊNCIAS BIBLIOGRÁFICAS.......................................................21 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 17 
 Introdução 
 
Durante este trabalho observou-se na pratica o conhecimento teórico 
deste semestre no funcionamento de uma empresa como a Qualy ,Quando o 
assunto é comunicação e relacionamento, a marca sempre foi inovadora .A 
campanha publicitária no formato de novela fez QUALY se aproximar da vida 
real dos consumidores. A primeira foi ao ar em 1991, com a história do casal de 
jovens protagonistas, Marina e Marcelo. Ele, solteiro, morava com o cão de 
estimação. Ela, também solteira, vivia com os pais e os irmãos. Quando se 
apaixonaram, passaram a frequentar a casa da família de Marina. Em tom 
suave, a marca mostrou o quanto mudam as relações em cada família e que 
reunir pessoas queridas à mesa é muito importante para manter a proximidade 
e a harmonia familiar. Oito anos mais tarde, o garoto Rui foi o protagonista que 
fez o pai conhecer, namorar e se casar com a vizinha do prédio. A história 
caminhou até sua adolescência, quando Rui se apaixonou por Raquelzinha e 
passou a conviver com sua família. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 18 
 
2. Linguagem e Técnicas de ProgramaçãoÉ a descrição, de forma lógica, dos passos a serem executados no 
cumprimento de determinada tarefa. É a forma pela qual descrevemos 
soluções de problemas do nosso mundo, afim de serem implementadas 
utilizando os recursos do mundo computacional. Como este possuí severas 
limitações em relação ao nosso mundo, exige que sejam impostas algumas 
regras básicas na forma de solucionar os problemas para que possamos 
utilizar os recursos de hardware e software disponíveis. Uma linguagem de 
programação é uma notação formal para descrição de algoritmos que serão 
executados por um computador. Como todas as notações formais, uma 
linguagem de programação tem dois componentes: Sintaxe e Semântica. 
 A sintaxe consiste em um conjunto de regras formais, que especificam 
a composição de programas a partir de letras, dígitos, e outros símbolos. Por 
exemplo, regras de sintaxe podem especificar que cada parênteses aberto em 
uma expressão aritmética deve corresponder a um parênteses fechado, e que 
dois comandos quaisquer devem ser separados por um ponto-e-vírgula. As 
regras de semântica especificam o “significado” de qualquer programa, 
sintaticamente válido, escrito na linguagem. 
código fonte do sistema de de compra de passagem: 
#include <stdio.h> 
#include <string.h> 
#include <stdlib.h> 
// Variaveis globais para guardar os assentos dos passageiros, independente 
de onde sejam chamadas as variaveis 
int bus001[50]={0},bus002[50]={0},bus003[50]={0},bus004[50]={0}; 
 
// Estrutura para armazenar os dados 
typedef struct passagem{ 
 int cod_onibus, assento; 
 char nome[67], destino[20], horario[8]; 
 int idade; 
 char estudante[2]; // S ou N pra validar se é estudante 
 float valor; 
 struct passagem * proximo; 
} Passagem; 
 
// Função para iniciar a lista apontando para NULL 
 19 
Passagem* inicia(){ 
 return NULL; 
} 
 
// Função que determina a tarifação do sistema 
Tarifa (int cod_onibus, float desconto){ 
 float valor; 
 if (cod_onibus == 001)(valor=68.00); // Se destino for Campinas -> 
Santos atribui o preço de R$ 68.00 
 if (cod_onibus == 002)(valor=49.00); // Se destino for Campinas -> 
Sao Paulo, atribui o preço de R$ 49.00 
 if (cod_onibus == 003)(valor=78.00); // Se destino for Campinas -> 
Minas Gerais, atribui o preço de R$ 78.00 
 if (cod_onibus == 004)(valor=17.00); // Se destino for Campinas -> 
Jaguariuna, atribui o preço de R$ 17.00 
 valor=valor*desconto; // Atribui desconto se aplicavel. 
 return valor; 
} 
 
// Função que busca o assento na hora da venda, para evitar que duas pessoas 
ocupem a mesma poltrona 
int buscaAssento(int onibus[50]){ 
 int i=1; 
 while ( onibus[i] != 0 ) { 
 i++; 
 }; 
 onibus[i]=i; 
 return onibus[i]; 
} 
 
Passagem* exibe(Passagem* lista){ 
 Passagem* aux; 
 for (aux = lista; aux != NULL; aux = aux->proximo){ 
 printf("\n---------------------- Passagem ------------------
------\n"); 
 printf("Codigo do Onibus: 00%d | Assento: %d \n", aux-
>cod_onibus, aux->assento); 
 printf("Destino.......: %s \n", aux->destino); 
 printf("Passageiro....: %s", aux->nome); 
 printf("Idade.........: %d \n", aux->idade); 
 printf("Estudante.....: %s \n", aux->estudante); 
 printf("Preco total: R$ %3.2f", aux->valor); 
 printf("\n--------------------------------------------------
------\n"); 
 } 
return lista; 
} 
 
Passagem* fechaCaixa(Passagem* lista){ 
 int contador=0; 
 float saldo=0; 
 Passagem* aux; 
 for (aux = lista; aux != NULL; aux = aux->proximo){ 
 saldo=saldo+aux->valor; 
 contador++; 
 } 
 printf("\n--------------- Resumo Financeiro ---------------------
\n\n"); 
 printf("Quantidade de passagens vendidas: %d \n", contador); 
 20 
 printf("Valor total das vendas..........: R$ %3.2f \n", saldo); 
 printf("\n--------------------------------------------------------
\n"); 
} 
 
// Função principal para venda de passagens. 
// Cria um novo nó na lista ligada usando a estrutura definida da linha 6 a 
13. 
Passagem* insere(Passagem* lista, int cod_onibus){ 
 char estudante_aux[2]; 
 float desconto=1; 
 // Cria novo nó e aloca a memória dinamicamente 
 Passagem* nova_passagem = (Passagem*)malloc(sizeof(Passagem)); 
 // Atribui os valores do novo nó 
 nova_passagem->cod_onibus = cod_onibus; 
 printf("Nome do passageiro.....: "); 
 fgets(nova_passagem->nome,16,stdin); 
 fflush(stdin); 
 printf("Idade..................: "); 
 scanf("%d", &nova_passagem->idade); 
 fflush(stdin); 
 printf("Estudante? (S/N).......: "); 
 fgets(estudante_aux,2,stdin); 
 fflush(stdin); 
 strcpy(nova_passagem->estudante,estudante_aux); 
 if (*estudante_aux == 'S')(desconto=0.5); 
 nova_passagem->valor = Tarifa(cod_onibus,desconto); 
 if (cod_onibus == 001) { 
 nova_passagem->assento=buscaAssento(bus001); 
 strcpy(nova_passagem->destino,"Santos"); 
 strcpy(nova_passagem->horario,"10:00hrs"); 
 } 
 if (cod_onibus == 002) { 
 nova_passagem->assento=buscaAssento(bus002); 
 strcpy(nova_passagem->destino,"Sao Paulo"); 
 strcpy(nova_passagem->horario,"10:45hrs"); 
 } 
 if (cod_onibus == 003) { 
 nova_passagem->assento=buscaAssento(bus003); 
 strcpy(nova_passagem->destino,"Minas Gerais"); 
 strcpy(nova_passagem->horario,"11:30hrs"); 
 } 
 if (cod_onibus == 004) { 
 nova_passagem->assento=buscaAssento(bus004); 
 strcpy(nova_passagem->destino,"Jaguariuna"); 
 strcpy(nova_passagem->horario,"13:00hrs"); 
 } 
 nova_passagem->proximo = lista; 
 // Exibe informações da venda na tela 
 system("cls"); 
 printf("\nVenda concluida com exito, a passagem sera exibida a 
seguir.\n"); 
 printf("\n---------------------- Passagem ------------------
------\n"); 
 printf("Codigo do Onibus: 00%d | Assento: %d \n", 
nova_passagem->cod_onibus, nova_passagem->assento); 
 printf("Destino.......: %s | Horario de partida: %s \n", 
nova_passagem->destino, nova_passagem->horario); 
 printf("Passageiro....: %s", nova_passagem->nome); 
 21 
 printf("Idade.........: %d \n", nova_passagem->idade); 
 printf("Estudante.....: %s \n", nova_passagem->estudante); 
 printf("Preco total: R$ %3.2f", nova_passagem->valor); 
 printf("\n--------------------------------------------------
------\n"); 
 return nova_passagem; 
} 
 
// Função que exibe o itinerário e quantidade de poltronas disponiveis 
void itinerario(int bus001[],int bus002[],int bus003[],int bus004[]){ 
 int vagas1=0, vagas2=0, vagas3=0, vagas4=0, i; 
 for( i = 1; i <= 50; i++ ) { 
 if( bus001[i] == 0 ) { 
 vagas1++; 
 } 
 }; 
 for( i = 1; i <= 50; i++ ) { 
 if( bus002[i] == 0 ) { 
 vagas2++; 
 } 
 }; 
 for( i = 1; i <= 50; i++ ) { 
 if( bus003[i] == 0 ) { 
 vagas3++; 
 } 
 }; 
 for( i = 1; i <= 50; i++ ) { 
 if( bus004[i] == 0 ) { 
 vagas4++; 
 } 
 }; 
 printf("Onibus 001: \n Origem: Campinas / Destino: Santos \n Horario 
de saida: 10:00 / Assentos disponiveis: %d\n\n",vagas1); 
 printf("Onibus 002: \n Origem: Campinas / Destino: Sao Paulo \n 
Horario de saida: 10:45 / Assentos disponiveis: %d\n\n",vagas2); 
 printf("Onibus 003: \n Origem: Campinas / Destino: Minas Gerais \n 
Horario de saida: 11:30 / Assentos disponiveis: %d\n\n",vagas3); 
 printf("Onibus 004: \n Origem: Campinas / Destino: Jaguariuna \n 
Horario de saida: 13:00 / Assentos disponiveis: %d\n\n",vagas4); 
} 
 
// Main 
int main(){ 
 // Variaveis 
 int operador; 
 float desconto=1; // Sera atribuido 0.5 em caso de estudante, 0 em 
caso de Idoso (até 2 passagens) senão for nem estudante nem idoso será 1. 
 Passagem* lista; 
 lista = inicia(); 
 int onibus,assento,i; 
 int cod_onibus; 
 
 // Menu interativo 
 while (operador!=4) 
 { 
 system("cls"); 
 printf("***** Sistema de venda de passagens ******\n\n"); 
 printf("Menu principal\n\n"); 
 printf("1 - Vender passagem \n"); 
 22 
 printf("2 - Consultar vendas \n"); 
 printf("3 - Consultar Itinerario \n");printf("4 - Fechar caixa e sair \n"); 
 scanf("%d",&operador); 
 switch (operador) 
 { 
 case 1: 
 { 
 system("cls"); 
 printf("***** Iniciando venda de passagem 
*****\n\n"); 
 printf("\n\nObserve o Itinerario e selecione 
um destino\n"); 
 itinerario(bus001,bus002,bus003,bus004); 
 printf("\n\nInforme o codigo do Onibus 
desejado: "); 
 scanf("%d", &onibus); 
 fflush(stdin); 
 system("cls"); 
 if (onibus == 001 || onibus == 002 || onibus 
== 003 || onibus == 004)( 
 lista = insere(lista, onibus) 
 ); 
 else ( 
 printf("\nERRO: Numero invalido... 
venda cancelada.\n\n") 
 ); 
 system("pause"); 
 break; 
 } 
 case 2: 
 { 
 system("cls"); 
 printf("***** Exibindo vendas do dia 
******\n\n"); 
 lista = exibe(lista); 
 system("pause"); 
 break; 
 } 
 case 3: 
 { 
 system("cls"); 
 printf("****** Consultar Itinerario 
*******\n\n"); 
 itinerario(bus001,bus002,bus003,bus004); 
 system("pause"); 
 break; 
 } 
 case 4: 
 { 
 // Apenas dá um break para sair do case, fechar o 
caixa e sair do programa 
 break; 
 } 
 default: 
 printf("Opcao invalida!"); 
 } 
 } 
 system("cls"); 
 23 
 printf("****** Fechamento de caixa ******\n\n"); 
 fechaCaixa(lista); 
 system("pause"); 
 return 0; 
} 
 
CÓDIGO FONTE DE ESCOLHA DE POLTRONA: 
#include <stdio.h> 
#include <string.h> 
#include <stdlib.h> 
// Variaveis globais para guardar os assentos dos passageiros, independente 
de onde sejam chamadas as variaveis 
int bus001[50]={0},bus002[50]={0},bus003[50]={0},bus004[50]={0}; 
 
// Estrutura para armazenar os dados 
typedef struct passagem{ 
 int cod_onibus, assento; 
 char nome[67], destino[20], horario[8]; 
 int idade; 
 char estudante[2]; // S ou N pra validar se é estudante 
 float valor; 
 struct passagem * proximo; 
} Passagem; 
 
// Função para iniciar a lista apontando para NULL 
Passagem* inicia(){ 
 return NULL; 
} 
 
// Função que determina a tarifação do sistema 
Tarifa (int cod_onibus, float desconto){ 
 float valor; 
 24 
 if (cod_onibus == 001)(valor=68.00); // Se destino for Campinas -> 
Santos atribui o preço de R$ 68.00 
 if (cod_onibus == 002)(valor=49.00); // Se destino for Campinas -> Sao 
Paulo, atribui o preço de R$ 49.00 
 if (cod_onibus == 003)(valor=78.00); // Se destino for Campinas -> 
Minas Gerais, atribui o preço de R$ 78.00 
 if (cod_onibus == 004)(valor=17.00); // Se destino for Campinas -> 
Jaguariuna, atribui o preço de R$ 17.00 
 valor=valor*desconto; // Atribui desconto se aplicavel. 
 return valor; 
} 
 
// Função que busca o assento na hora da venda, para evitar que duas pessoas 
ocupem a mesma poltrona 
int buscaAssento(int onibus[50]){ 
 int i=1; 
 while ( onibus[i] != 0 ) { 
 i++; 
 }; 
 onibus[i]=i; 
 return onibus[i]; 
} 
 
Passagem* exibe(Passagem* lista){ 
 Passagem* aux; 
 for (aux = lista; aux != NULL; aux = aux->proximo){ 
 printf("\n---------------------- Passagem ----------------------
--\n"); 
 printf("Codigo do Onibus: 00%d | Assento: %d \n", aux-
>cod_onibus, aux->assento); 
 printf("Destino.......: %s \n", aux->destino); 
 printf("Passageiro....: %s", aux->nome); 
 printf("Idade.........: %d \n", aux->idade); 
 25 
 printf("Estudante.....: %s \n", aux->estudante); 
 printf("Preco total: R$ %3.2f", aux->valor); 
 printf("\n------------------------------------------------------
--\n"); 
 } 
return lista; 
} 
 
Passagem* fechaCaixa(Passagem* lista){ 
 int contador=0; 
 float saldo=0; 
 Passagem* aux; 
 for (aux = lista; aux != NULL; aux = aux->proximo){ 
 saldo=saldo+aux->valor; 
 contador++; 
 } 
 printf("\n--------------- Resumo Financeiro ---------------------
\n\n"); 
 printf("Quantidade de passagens vendidas: %d \n", contador); 
 printf("Valor total das vendas..........: R$ %3.2f \n", saldo); 
 printf("\n--------------------------------------------------------
\n"); 
} 
 
// Função principal para venda de passagens. 
// Cria um novo nó na lista ligada usando a estrutura definida da linha 6 a 
13. 
Passagem* insere(Passagem* lista, int cod_onibus){ 
 char estudante_aux[2]; 
 float desconto=1; 
 // Cria novo nó e aloca a memória dinamicamente 
 Passagem* nova_passagem = (Passagem*)malloc(sizeof(Passagem)); 
 26 
 // Atribui os valores do novo nó 
 nova_passagem->cod_onibus = cod_onibus; 
 printf("Nome do passageiro.....: "); 
 fgets(nova_passagem->nome,16,stdin); 
 fflush(stdin); 
 printf("Idade..................: "); 
 scanf("%d", &nova_passagem->idade); 
 fflush(stdin); 
 printf("Estudante? (S/N).......: "); 
 fgets(estudante_aux,2,stdin); 
 fflush(stdin); 
 strcpy(nova_passagem->estudante,estudante_aux); 
 if (*estudante_aux == 'S')(desconto=0.5); 
 nova_passagem->valor = Tarifa(cod_onibus,desconto); 
 if (cod_onibus == 001) { 
 nova_passagem->assento=buscaAssento(bus001); 
 strcpy(nova_passagem->destino,"Santos"); 
 strcpy(nova_passagem->horario,"10:00hrs"); 
 } 
 if (cod_onibus == 002) { 
 nova_passagem->assento=buscaAssento(bus002); 
 strcpy(nova_passagem->destino,"Sao Paulo"); 
 strcpy(nova_passagem->horario,"10:45hrs"); 
 } 
 if (cod_onibus == 003) { 
 nova_passagem->assento=buscaAssento(bus003); 
 strcpy(nova_passagem->destino,"Minas Gerais"); 
 strcpy(nova_passagem->horario,"11:30hrs"); 
 } 
 if (cod_onibus == 004) { 
 27 
 nova_passagem->assento=buscaAssento(bus004); 
 strcpy(nova_passagem->destino,"Jaguariuna"); 
 strcpy(nova_passagem->horario,"13:00hrs"); 
 } 
 nova_passagem->proximo = lista; 
 // Exibe informações da venda na tela 
 system("cls"); 
 printf("\nVenda concluida com exito, a passagem sera exibida a 
seguir.\n"); 
 printf("\n---------------------- Passagem ----------------------
--\n"); 
 printf("Codigo do Onibus: 00%d | Assento: %d \n", nova_passagem-
>cod_onibus, nova_passagem->assento); 
 printf("Destino.......: %s | Horario de partida: %s \n", 
nova_passagem->destino, nova_passagem->horario); 
 printf("Passageiro....: %s", nova_passagem->nome); 
 printf("Idade.........: %d \n", nova_passagem->idade); 
 printf("Estudante.....: %s \n", nova_passagem->estudante); 
 printf("Preco total: R$ %3.2f", nova_passagem->valor); 
 printf("\n------------------------------------------------------
--\n"); 
 return nova_passagem; 
} 
 
// Função que exibe o itinerário e quantidade de poltronas disponiveis 
void itinerario(int bus001[],int bus002[],int bus003[],int bus004[]){ 
 int vagas1=0, vagas2=0, vagas3=0, vagas4=0, i; 
 for( i = 1; i <= 50; i++ ) { 
 if( bus001[i] == 0 ) { 
 vagas1++; 
 } 
 }; 
 28 
 for( i = 1; i <= 50; i++ ) { 
 if( bus002[i] == 0 ) { 
 vagas2++; 
 } 
 }; 
 for( i = 1; i <= 50; i++ ) { 
 if( bus003[i] == 0 ) { 
 vagas3++; 
 } 
 }; 
 for( i = 1; i <= 50; i++ ) { 
 if( bus004[i] == 0 ) { 
 vagas4++; 
 } 
 }; 
 printf("Onibus 001: \n Origem: Campinas / Destino: Santos \n Horario 
de saida: 10:00 / Assentos disponiveis: %d\n\n",vagas1); 
 printf("Onibus 002: \n Origem: Campinas / Destino: Sao Paulo \n 
Horario de saida: 10:45 / Assentos disponiveis: %d\n\n",vagas2); 
 printf("Onibus 003: \n Origem: Campinas / Destino: Minas Gerais \n 
Horario de saida: 11:30 / Assentos disponiveis: %d\n\n",vagas3); 
 printf("Onibus 004: \n Origem: Campinas / Destino: Jaguariuna \n 
Horario de saida: 13:00 / Assentos disponiveis: %d\n\n",vagas4); 
} 
 
// Main 
int main(){ 
 // Variaveis 
 int operador; 
 float desconto=1; // Seraatribuido 0.5 em caso de estudante, 0 em 
caso de Idoso (até 2 passagens) senão for nem estudante nem idoso será 1. 
 Passagem* lista; 
 29 
 lista = inicia(); 
 int onibus,assento,i; 
 int cod_onibus; 
 
 // Menu interativo 
 while (operador!=4) 
 { 
 system("cls"); 
 printf("***** Sistema de venda de passagens ******\n\n"); 
 printf("Menu principal\n\n"); 
 printf("1 - Vender passagem \n"); 
 printf("2 - Consultar vendas \n"); 
 printf("3 - Consultar Itinerario \n"); 
 printf("4 - Fechar caixa e sair \n"); 
 scanf("%d",&operador); 
 switch (operador) 
 { 
 case 1: 
 { 
 system("cls"); 
 printf("***** Iniciando venda de passagem 
*****\n\n"); 
 printf("\n\nObserve o Itinerario e selecione um 
destino\n"); 
 itinerario(bus001,bus002,bus003,bus004); 
 printf("\n\nInforme o codigo do Onibus desejado: 
"); 
 scanf("%d", &onibus); 
 fflush(stdin); 
 system("cls"); 
 if (onibus == 001 || onibus == 002 || onibus == 003 
|| onibus == 004)( 
 30 
 lista = insere(lista, onibus) 
 ); 
 else ( 
 printf("\nERRO: Numero invalido... venda 
cancelada.\n\n") 
 ); 
 system("pause"); 
 break; 
 } 
 case 2: 
 { 
 system("cls"); 
 printf("***** Exibindo vendas do dia ******\n\n"); 
 lista = exibe(lista); 
 system("pause"); 
 break; 
 } 
 case 3: 
 { 
 system("cls"); 
 printf("****** Consultar Itinerario *******\n\n"); 
 itinerario(bus001,bus002,bus003,bus004); 
 system("pause"); 
 break; 
 } 
 case 4: 
 { 
 // Apenas dá um break para sair do case, fechar o caixa e 
sair do programa 
 break; 
 } 
 31 
 default: 
 printf("Opcao invalida!"); 
 } 
 } 
 system("cls"); 
 printf("****** Fechamento de caixa ******\n\n"); 
 fechaCaixa(lista); 
 system("pause"); 
 return 0; 
} 
 
 
3 Engenharia de Software I 
 
Os princípios da engenharia de software são sete de acordo com o 
cientista David Hooker. Eles são chamados gerais porque podem ser aplicados 
a uma única camada da engenharia de software, sua qualidade, processos, 
métodos ou ferramentas, bem como a ela como um todo. 
Desde a sua concepção até a sua entrega para o cliente, um software 
passa por diversas etapas. A engenharia de software, entre outras coisas, 
garante a consistência da execução desses passos, aplicando técnicas 
comprovadamente eficientes em cada uma delas. 
De acordo com Fritz Bauer, a engenharia de software é o 
estabelecimento e a utilização de princípios de engenharia livres de falha com 
o objetivo de obter softwares que sejam economicamente viáveis e que 
possam ser executados de forma consistente. Embora ambas as definições 
sejam igualmente aceitas como válidas, elas possuem limitações de acordo 
com Pressman. Bauer, embora tenha sido responsável por nortear quais são 
os desafios envolvidos na construção de um software, levanta algumas 
 32 
discussões, tais como o que seria um software consistente. Em contrapartida, a 
segunda definição, dada pelo IEEE, evidencia que as características que fazem 
do desenvolvimento de software uma engenharia não devem ser abandonadas, 
mas devem ser adaptáveis e ágeis ao passo que possam ser justificáveis 
economicamente e facilmente utilizadas por diferentes equipes de 
desenvolvimento. 
Uma vez que sabemos qual é o objetivo da engenharia de software, 
vamos discutir ao longo desse artigo como atingir esse objetivo, sem deixar de 
atender as expectativas do cliente. Faremos isso expondo os sete princípios da 
engenharia de software de David Hooker e discutindo diferentes opiniões sobre 
cada um deles. 
 
Conclusão 
 
 A busca por posições estratégicas nas pequenas empresas, que 
superem a posição adotada pelas grandes corporações, é um grande desafio 
empresarial e ditará a direção futura dos negócios, seja para o sucesso, seja 
para o fracasso. Em 1999 foi lançada no mercado a QUALY LIGHT, que 
continha metade das calorias da versão tradicional, direcionada para um 
público que procurava uma dieta mais leve e equilibrada, sem perder a 
cremosidade da margarina. No ano seguinte a marca inovou mais uma vez ao 
lançar a primeira margarina com fibras solúveis do mercado, a QUALY FIBRA, 
que ajudava o processo digestivo. Em 2006, mais uma inovação: a 
linha QUALY LIGHT SABORIZADAS chegou ao mercado, com sabores 
diferenciados, como peito de peru, mel e queijo tipo suíço. 
 
 
 
 
 
 
 
 33 
 
 
 
 REFERÊNCIAS BIBLIOGRÁFICAS 
 
RAMEZ E.E.; SHAMKANT, E. Sistemas de Banco de Dados. São Paulo: 
Addison-Wesley, 2005. 
 
MEDEIROS, M. Banco de dados para sistemas de informação. Florianópolis: 
Visual Books, 2006. 
 
SILBERSCHATZ, A.; KORTH, H.F.; SUDARSHA, S. Sistema de Banco de 
Dados. São Paulo: Makron, 1999.Relato feito pelos sócios da empresa.

Continue navegando