Dev - C++ - Ejercicio Clases listas

 
Vista:
sin imagen de perfil
Val: 21
Ha disminuido su posición en 2 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ejercicio Clases listas

Publicado por Jonathan (10 intervenciones) el 20/06/2017 21:18:11
Hola saludos a todos, espero que esten bien :) tengo una lucha con este ejercicio veran:

me piden desarrollar un metodo publico, como parte de la clase Lista, llamado Sublista que recibiendo como parametro una posicion o numero de nodos de comienzo(n) y una cantidad(m), devuelve un objeto lista con los elementos a partir de n. Ej: si se tiene la L={10,8,20,25,30,9,2,1}, si se ejecute Sublista:

Lista L1=L.Sublista(3,4)... se obtiene L1={20,25,30,9}

pero estoy un poco perdido en la logica y no es tipo de ejercicio que encuentre en la red.. alguien me podria iluminar o explicar con un poquito aunque sea? lo agradeceria mil. gracias de Antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Ejercicio Clases listas

Publicado por john (9 intervenciones) el 20/06/2017 21:22:44
Pero en si cual es tu duda que llevas hasta el momento.?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 21
Ha disminuido su posición en 2 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ejercicio Clases listas

Publicado por Jonathan (10 intervenciones) el 20/06/2017 21:28:29
la logica, si tengo el metodo Sublista( n,m,&lista)
{ lista A;
while(Lista!=NULL)
{ // no se como recorrer en esta parte la lista, osea tambien me dice que considere el Atributo nElementos de cada objeto tipo lista) alguien tiene una idea de como resolver la logica?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ejercicio Clases listas

Publicado por john (9 intervenciones) el 20/06/2017 21:35:39
pues podrias
crear un arreglo sublista
y agregar los elementos usando un ciclo for.


saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 21
Ha disminuido su posición en 2 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ejercicio Clases listas

Publicado por Jonathan (10 intervenciones) el 20/06/2017 21:42:25
algo como for(i=n;i<=m;i++)?
estoy confundido de verdad..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ejercicio Clases listas

Publicado por john (9 intervenciones) el 20/06/2017 22:09:06
algo asi

solo que recuerda que los arreglos inician en 0

por que iniciaria el for

1
2
3
4
for(i=n-1; i<=m;i++)
{
  //agregar codigo para insertar en el sub arreglo.
}


no te doy la solucion porque tu debes aprender

pero aqui puedes revisar lo basico.
https://codigofacilito.com/videos/tutorial_c_ciclo_for_y_arrays
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 21
Ha disminuido su posición en 2 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ejercicio Clases listas

Publicado por Jonathan (10 intervenciones) el 20/06/2017 22:13:13
Lo que pasa es que ok se manejas for y arreglos, pero nunca he manejado arreglos con listas enlazadas simples me entiendes?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Carlos Luis
Val: 57
Ha aumentado 1 puesto en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ejercicio Clases listas

Publicado por Carlos Luis (19 intervenciones) el 20/06/2017 23:32:49
Buenas tardes, estimado amigo.

No es tan simple como el recorrer un ciclo for.

Por ejemplo, si deseas extraer una serie de elementos de un arreglo de enteros, pudiese utilizarse algo como esto:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <iostream>
 
using namespace std;
 
int* subLista(int n, int m, int arreglo[]){
	int* arr = new int(m);
	n--; //..Para ajustar el inicio.
	for(int i = n; i < (n+m); i++)
		arr[i-n] = arreglo[i];
 
	return arr;
}
 
int main()
{
	int arreglo[] = {10,8,20,25,30,9,2,1};
	int n = 3, m = 4;
 
	int* arr = subLista(n,m,arreglo);
 
	//...Mostrar el resultado.
	for(int j = 0; j < m ; j++)
		cout << arr[j] << " ";
	cout <<"\n";
 
    return 0;
}

funcionesVirtuales

Pero, creo que no es lo que te estan pidendo; ya que me hablas sobre una clase lista que almacena enteros y tiene un metodo subLista, que reduce el tamaño de la misma:

1
Lista L1=L.Sublista(3,4)... se obtiene L1={20,25,30,9}


Creo que tienes que mostrar todo el código de la clase lista y la implementación de la misma para que podamos ayudarte mejor; ya que, este comportamiento se observa usualmente en los contenedores de la libreria STD., tales como vectores, listas, arrays, etc.
Ejemplo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// copy algorithm example
#include <iostream>     // std::cout
#include <algorithm>    // std::copy
#include <vector>       // std::vector
 
int main () {
  int myints[]={10,20,30,40,50,60,70};
  std::vector<int> myvector (7);
 
  std::copy ( myints, myints+7, myvector.begin() );
 
  std::cout << "myvector contains:";
  for (std::vector<int>::iterator it = myvector.begin(); it!=myvector.end(); ++it)
    std::cout << ' ' << *it;
 
  std::cout << '\n';
 
  return 0;
}



funcionesVirtuales2

Espero haber podido ayudar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 21
Ha disminuido su posición en 2 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ejercicio Clases listas

Publicado por Jonathan (10 intervenciones) el 21/06/2017 00:16:12
oye que bello, eres un amor gracias xD, bueno no es un laboratorio como tal o un programa completo sino un ejercicio y lo unico que me dice Adicional es que considere nElementos que tiene cada objeto lista y ya. con tu codigo voy a ponerme a entenderlo lo unico que me hace ruido es la funcion copia? el iterador It? disculpa, es que estoy acostumbrado a programar con otros constructores y Borland xD
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Carlos Luis
Val: 57
Ha aumentado 1 puesto en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ejercicio Clases listas

Publicado por Carlos Luis (19 intervenciones) el 21/06/2017 00:34:23
No se preocupe por los iteradores. Como usted dice es un ejercicio sencillo. Seguramente la respuesta también lo es. Revise el primer ejemplo únicamente para ver si le sirve.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 21
Ha disminuido su posición en 2 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ejercicio Clases listas

Publicado por Jonathan (10 intervenciones) el 21/06/2017 00:40:16
Muchas gracias por su ayuda, bueno entonces usare su ejemplo y se lo mostrare al profe a ver si le convence.. porque no estoy muy seguro entender esa parte cuando hizo la clase. Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar