class CLista { class CCelula { public Object item; public CCelula prox; public CCelula() { item = null; prox = null; } public CCelula(object ValorItem) { item = ValorItem; prox = null; } public CCelula(object valorItem, CCelula proxCelula) { item = valorItem; prox = proxCelula; } } private CCelula primeira, pos, ultima; private int Qtde = 0; public CLista() { primeira = new CCelula(); ultima = primeira; } public bool Vazia() { return primeira == ultima; } public void Insere(Object valorItem) { ultima.prox = new CCelula(valorItem); ultima = ultima.prox; Qtde += 1; } public void InsereComeco(Object valorItem) { primeira.prox = new CCelula(valorItem, primeira.prox); CCelula nova = primeira.prox; if (nova.prox == null) ultima = nova; Qtde++; } public void Imprime() { CCelula aux = primeira.prox; while (aux != null) { Console.WriteLine(aux.item); aux = aux.prox; } } public void ImprimeFor() {