elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Security Series.XSS. [Cross Site Scripting]


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Duda con arrays C++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Duda con arrays C++  (Leído 1,389 veces)
aRaZer

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Duda con arrays C++
« en: 23 Octubre 2018, 02:36 am »

Hola muy buenas gente, quisiera saber si alguien me podría ayudar con una duda que tengo. Tengo que hacer un programa en el cual se introducirán un total de 31 datos en un arreglo y después el programa tendrá que imprimir el numero de datos que son diferentes al ultimo número ingresado al arreglo; Ejempo: en un arreglo se introducen 8 datos-> 1,1,2,2,3,4,2,1 = entonces en el programa me deberá imprimir el número 5 por qué son 5 números los que son diferentes al ultimo dato del arreglo.

Si alguien me pudiera apoyar diciéndome como es que puedo lograr el conteo de los números que no se repiten el arreglo se lo agradecería bastante, sin mas que decir gracias por su tiempo.


En línea

Beginner Web


Desconectado Desconectado

Mensajes: 634


youtu.be/0YhflLRE-DA


Ver Perfil
Re: Duda con arrays C++
« Respuesta #1 en: 23 Octubre 2018, 02:46 am »

Con un contador de numeros diferentes al ultimo;
Haces el recorrido y preguntas en cada vuelta si el numero actual es diferente al ultimo ingresado arreglo[ULTIMAPOSICION] y si es diferente incrementas el valor del contador +1;

Código
  1. int cantidadNumeros(arreglo a)
  2. {
  3. int contador=0;
  4. for(int i=0;i<TAMAÑOARREGLO;i++)
  5. if(a[i]!=a[ULTIMAPOSICION])
  6. contador++;
  7. return contador;
  8. }


« Última modificación: 23 Octubre 2018, 03:04 am por Beginner Web » En línea

7w7
elgilun

Desconectado Desconectado

Mensajes: 17



Ver Perfil
Re: Duda con arrays C++
« Respuesta #2 en: 24 Octubre 2018, 09:33 am »

La función que necesitas ya existe en la biblioteca estándar, es count_if
https://en.cppreference.com/w/cpp/algorithm/count

Código:
#include <iostream>
#include <vector>
#include <algorithm>

auto diferentes(const std::vector<int>& arreglo, int ultimo)
{
// contar los números distintos a "ultimo"
return std::count_if(arreglo.begin(), arreglo.end(), [&ultimo](auto i) { return i != ultimo; });
}

int main()
{
// ejemplo
// en un arreglo se introducen 8 datos:
std::vector<int> arreglo{1, 1, 2, 2, 3, 4, 2, 1};

std::cout << diferentes(arreglo, 1);

}
« Última modificación: 24 Octubre 2018, 09:36 am por elgilun » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
duda con arrays o matriz?
Programación Visual Basic
ricardovinzo 4 3,839 Último mensaje 10 Junio 2008, 23:36 pm
por CeLaYa
Duda con arrays dentro de arrays « 1 2 »
PHP
Servia 11 6,808 Último mensaje 10 Marzo 2011, 09:04 am
por Servia
Duda con arrays en javascript
Desarrollo Web
jamatbar 6 3,290 Último mensaje 12 Octubre 2016, 19:28 pm
por EFEX
Duda con arrays en PHP
PHP
RevolucionVegana 8 3,629 Último mensaje 8 Agosto 2017, 03:09 am
por RevolucionVegana
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines