Ragazzi ero dietro un esercizio ma non so se ho azzeccato proprio lo stile.. stavo ordinando un array con min e max, poi crescente e decrescente, sul crescente ho risolto, sull'ordinamento decrescente non capisco cosa non vada potete dare un occhio al codice ed eventualmente suggerire procedure più valide..
#include <iostream>
using namespace std;
//massimo
int max(int a[], int dim) {
int max = NULL;
for (int i = 0; i < dim; i++) {
if (max < a[i]) {
max = a[i];
}
}
return max;
}
// minimo
int min(int a[], int dim){
int min;
for(int i=0; i<dim; i++){
if(min > a[i]){
min = a[i];
}
}
return min;
}
// ordine crescente
int crescente(int a[], int dim) {
int appoggio;
for (int i = 0; i < (dim-1); i++) {
for (int j = i + 1; j < dim; j++) {
if (a[i] > a[j]) {
appoggio = a[j];
a[j] = a[i];
a[i] = appoggio;
}
}
}
for(int i=0; i<dim; i++)cout <<a[i];
}
// ordine decrescente
int decrescente(int a[], int dim){
int appoggio;
for(int i=0; i<dim-1; i++){
for(int j=i+1; j<dim; j++){
if(a[i] < a[j]){
appoggio = a[j];
a[j] = a[i];
a[i] = appoggio;
}
}
}
for(int i=0; i<dim; i++)cout << a[i];
}
/*
*
*/
int main(int argc, char** argv) {
int numTot=0, numeri[numTot], massimo, minimo, ordinato;
cout << "Inserisci quanti numeri interi ci sono da valutare: ",
cin >> numTot;
cout << "Adesso sara' richiesto di inserire tutti i numeri:\n";
for(int i=0; i<numTot; i++){
cout << "Inserisci il " << i+1 <<"' numero: ";
cin >> numeri[i];
}
for(int i=0; i<numTot; i++){
cout << numeri[i] << '\n';
}
cout << '\n' <<'\n';
cout <<"Il numero massimo dell'array e': ";
massimo = max(numeri, numTot);
cout << massimo << '\n' << '\n';
cout <<"Il numero minimo dell'array e': ",
minimo = min(numeri, numTot),
cout << minimo << '\n' <<'\n';
cout << "L'array ordinato in modo crescente e': ",
ordinato = crescente(numeri,numTot),
cout << ordinato << '\n';
cout << "L'array ordinato in modo decrescente e': ",
ordinato = decrescente(numeri, numTot),
cout << ordinato << '\n';
}