Ir ao conteúdo

Lista encadeada, Estrutura de dados.

Saudações,

Para não perder o costume, irei postar outro exercicio resolvido em uma aula. Dessa vez o exercicio é o seguinte:
– Implemenetar o sistema de contabilidade de um mafioso. (outros detalhes continue lendo o post)

O enunciado do mesmo se encontra no “read the rest of this entry” para não deixar o post muito extenso devido ao longo enunciado.

A resolução do mesmo você pode baixar aqui.

Você é um Mafioso informatizado.
Você vai criar um sistema para gerenciar os seus débitos e também as pessoas que devem a você.
Este sistema será baseado em duas listas encadeadas:

(Imagem de exemplo)

* Para isso você vai fazer um programa que manipula mais de uma lista;

* o programa fará isto com um único conjunto de funções e passagem das diversas listas como parâmetros;
* como aplicação imaginemos um sistema de contabilidade simples;
* você vai ter um Plano de Contas constituído por duas listas: débitos e créditos;
* o mesmo conjunto de funções (que você já implementou) vai poder ser utilizado para isso: você somente precisa ampliar o conjunto de parâmetros da função para passar por referência também a lista que você quer alterar.

A passagem de parâmetro da lista deve ser por referência porque você deseja que as alterações sejam persistentes.

Cada lista de débitos ou créditos é constituída por lançamentos. Cada lançamento possui:

* um valor real (positivo);
* um nome. Por exemplo, “Pagar proteção à Mafia”

Estrutura:
tipo tLançamento {
caracter *nome;
real valor;
};

A lista encadeada que conterá os lançamentos terá um elemento de lista definido da seguinte forma:
Estrutura:
tipo tLista {
tLancamento* info;
tLista* proximo;
};
A cabeça de lista de cada lista será uma variável global contendo uma estrutura como abaixo:
tipo cLista {
tLista* lista;
inteiro ultimo;
};

No programa principal você vai definir se vai realizar uma operação de débito ou de crédito e vai chamar as operações sobre listas necessárias, passando a lista correta como parâmetro (por referência) para a função que realiza a operação.

Além das operações básicas que a lIsta vai oferecer, você deve implementar uma operação adicional: totalização. Essa operação funciona assim:

* percorre a lista, escrevendo o nome e o valor correspondente a cada item (débito ou crédito)
* soma o valor em uma variável auxiliar
* escreve ao final o total de débitos ou de créditos, dependendo de qual lista você mandou totalizar.

Publicado emAprendendoCEstrutura de Dados

10.460 Comentários

  1. Vengo jugando casi medio ano con 888starz y para que mentir no esperaba gran cosa, porque aqui en Espana uno se cansa de paginas que venden humo. Darse de alta fue cosa de dos minutos, los datos basicos y fuera, y el minimo para depositar esta en unos pocos euros, que para probar viene de lujo.

    De slots hay una barbaridad — andan por mas de 7.000 slots repartidos entre Pragmatic Play, NetEnt, Play’n GO, Betsoft y Yggdrasil. Yo me quedo en Gates of Olympus y Sweet Bonanza, aunque tambien le he dado a alguna de Microgaming. La pega es que encontrar un juego concreto es un lio cuando hay tantisimo.

    El casino en directo es de Evolution, basicamente y se nota la diferencia: mesas con crupier en espanol, Crazy Time que enganchan una barbaridad. La oferta de entrada ronda el 100% hasta 300€ con 150 giros, el wagering esta en unas 35 veces, que no es regalado pero tampoco un robo. Va rotando bonos sin deposito de vez en cuando, puedes mirar las condiciones exactas desde 888starz no deposit bonus code porque cambian cada mes.

    El tema de sacar pasta es lo que mas me ha sorprendido. Retire el otro dia por Skrill y lo tuve en 40 minutos. Con Visa se va a dos o tres dias, nada nuevo. Tienen Neteller, Bitcoin y USDT que es lo mas rapido con diferencia.

    En el telefono va suave, la app de Android existe si bien la version web hace el mismo apano. El chat de ayuda te contesta en castellano, me atendieron rapido cuando pregunte por el KYC. Licencia de Curazao, asi que no es un.es regulado y conviene tenerlo claro. Yo sigo ahi, con sus cosas, y sin volverse loco con los bonos.

  2. Ya llevo unos cuantos meses en 888starz y la verdad tenia dudas al principio, porque en Espana acabas quemado de paginas que venden humo. Darse de alta me llevo dos minutos, correo, contrasena y listo, y el minimo para depositar ronda los 1 euro, que para probar viene de lujo.

    De tragaperras tienen un catalogo enorme — andan por mas de 7.000 slots repartidos entre Pragmatic Play, NetEnt, Play’n GO, Betsoft y Yggdrasil. Mis habituales son Sweet Bonanza y Book of Dead, aunque tambien le he dado a los Megaways. Lo que me raya es que encontrar un juego concreto es un lio cuando tienes 8.000 cosas delante.

    La zona en vivo esta llevada por Evolution y eso se nota: blackjack con gente real, Crazy Time y Monopoly Live para el que le guste el show. El bono de bienvenida ronda el 100% hasta 300€ mas 150 tiradas, hay que apostarlo x40, nada raro comparado con otros. Va rotando algun free spin sin deposito, yo miraria lo que hay vigente desde 888starz apk ios antes de registrarte.

    El tema de sacar pasta es lo que mas me ha sorprendido. Saque hace poco por Skrill y lo tuve en 40 minutos. Con tarjeta tarda mas, eso ya es cosa del banco. Van con Neteller, Bitcoin y USDT y ahi es donde vuela de verdad.

    El movil va suave, la app de Android existe pero yo uso el navegador y me sobra. El chat de ayuda te contesta en castellano, me atendieron rapido cuando pregunte por el KYC. Licencia de Curazao, que no es la DGOJ y eso cada uno que lo valore. Por ahora no me ha fallado, pero ojo con el rollover de las promos.

  3. Здорова, народ Ситуация критическая Жена в истерике В больницу тащить страшно Короче, только это реально спасло — нарколог дом с выездом Через пару часов человек пришёл в себя В общем, телефон и цены тут — нарколог на дом вывод в воронеже https://czena.narkolog-na-dom-voronezh-14.ru Нарколог на дом — это реальный выход Перешлите тем кто в такой же ситуации

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *