Bungiorno a tutti,
un esercizio in C mi chiede di fare un programma che, immessi da tastiera 5 numeri interi, mi stampi un istogramma verticale con tanti asterischi quanti sono indicati dalle cifre immesse.
Il listato che ho fatto è il seguente;
Il punto è che se immetto interi positivi funziona mentre non funziona se immetto interi negativi.
Qualcuno mi può indicare come posso procedere per fare in modo che funzioni anche con numeri negativi?
Grazie
un esercizio in C mi chiede di fare un programma che, immessi da tastiera 5 numeri interi, mi stampi un istogramma verticale con tanti asterischi quanti sono indicati dalle cifre immesse.
Il listato che ho fatto è il seguente;
C:
#include <stdio.h>
#define DIM 5
int main(void) {
int numeri[10];
int i, j, min, max;
printf("\nInserici %d numeri interi:\n", DIM);
for(i = 0; i < DIM; i++) {
scanf("%d", &numeri[i]);
}
max = numeri[0];
for(i = 0; i < DIM; i++) {
if(max < numeri[i]) {
max = numeri[i];
}
}
printf("\nIl numero massimo è %d\n", max);
min = numeri[0];
for(i = 0; i < DIM; i++) {
if(min > numeri[i]) {
min = numeri[i];
}
}
printf("Il numero minimo è %d\n", min);
for(j = max; j > 0; j--) {
for(i = 0; i < DIM; i++) {
if(numeri[i] >= j) {
printf("*");
}
else {
printf(" ");
}
}
printf("\n");
}
}
Il punto è che se immetto interi positivi funziona mentre non funziona se immetto interi negativi.
Qualcuno mi può indicare come posso procedere per fare in modo che funzioni anche con numeri negativi?
Grazie