bueno pues tengo un programa sobre un arreglo N en el cual el usuario ingresa el tamaño y lo llena, lo ue tengo que hacer es modificar el arreglo para que los caracteres queden de manera no decreciente e imprimirlos con asteriscos, hasta ahi no hay problema. el problema es a la hora de voltear el histograma y hacer otro arreglo!!!
para ser mas especifico:
Código C++:
Ver original
#include <iostream> int main() { int limite; int x = 30; int y = 2; int menor = 0; int mayor; std::cout<<"Cuantos numeros quieres: ";//pide al usuario hasta que numero llegar std::cin>>limite; int Asteriscos[limite]; for(int i = 0;i < limite; i++){ std::cout<<"Ingresa el "<<i+1<<" caracter: ";//se pide y se guardan los valores de cada casilla std::cin>>Asteriscos[i]; } for(int i = 0;i < limite;i++){ for(int e = i; e < limite;e++){ if(Asteriscos[i] > Asteriscos[e]){//ago un metodo burbuja pra que los guarde menor = Asteriscos[i]; //de manera ascendente Asteriscos[i] = Asteriscos[e]; Asteriscos[e] = menor; mayor = Asteriscos[e]; } } } for(int i = mayor; i >= 0; i--){ for(int k = 0; k < limite;k++){ if(Asteriscos[k] > i) std::cout<<"*"; else std::cout<<" "; } std::cout<<"\n"; } //////////////////////////// for(int i= 0;i < limite;i++) std::cout<<"_"; std::cout<<"\n\n"; for(int i = 0;i < limite; i++){//esto es para que se vea bonitos std::cout<<Asteriscos[i]; } //////////////////////////// std::cout<<"\n\n"; std::cin.get(); std::cin.get(); return 0; }
bueno pues hasta ahi todo va bien lo malo es por ejemplo:
el usuario ingresa el arreglo asi:
Código C++:
Ver original
arregloEjemplo[8];
imaginemos que ya introdujo los valores y que da asi :
Código C++:
si se fijan el caracter del primer arreglo es 11 y el tamaño del segundo arreglo seria tambien de 11 pudiendo hacer esto posible con cada caracter al momento de imprimirlo se voltearia el histograma, eso es lo que aun no puedo, alguien me puede dar un empujoncito??!! Ver original
arregloEjemplo[1,1,2,4,7,7,8,11]; -------> arregloEjemplo2[1,1,1,2,4,4,4,5,5,6,8];