Accedi

Sequenza di numeri

PROBLEMA

Si scriva un programma per poter analizzare una sequenza di numeri. Dati N numeri interi letti da tastiera si vogliono calcolare e stampare su schermo diversi risultati:

  1. quanti sono i numeri positivi, nulli e negativi
  2. quanti sono i numeri pari e dispari
  3. se la sequenza dei numeri inseriti è crescente, decrescente oppure né crescente né decrescente.

CODICE SORGENTE

#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]) {
 int i=0, valore=0, valore_corrente=0, numeri_da_inserire=0, crescente=0, decrescente=0, positivi=0, negativi=0, neutri=0, pari=0, dispari=0; //dischiarazione variabili
 printf("Inserisci il numero di elementi da inserire nella sequenza: "); //testo a video
 scanf("%i", &numeri_da_inserire); //input
 for(i=0; i<numeri_da_inserire; i++) { //ciclo for per ritere numero_da_inserire
  printf("Inserisci il numero: "); //testo a video
  scanf("%i", &valore); //input
  if (i==0) //se è uguale a 0
  {
   valore_corrente=valore; //assegnazione
  }
  else //afferrmazione falsa
  {
   if (valore>valore_corrente) //condizione
   {
    crescente++; //incremento
    valore_corrente=valore; //assegnazione
   }
   else if (valore<valore_corrente) //condizione
   {
    decrescente++; //incremento
    valore_corrente=valore; //assegnazione
   }
   else
   {
    crescente++; //incremento
    decrescente++; //incremnto
   }
  }
  if (valore>0) //condizione
  {
   positivi++; //incremento
  }
  else if (valore==0) //condizione
  {
   neutri++; //incremento
  }
  else
  {
   negativi++; //incremento
  }
  if (valore%2==0) //condizione
  {
   pari++; //incremento
  }
  else
  {
   dispari++; //incremnto
  }
 }
 printf("Positivi: %i\nNegativi: %i\nNeutri: %i\nPari: %i\nDispari: %i\n", positivi, negativi, neutri, pari, dispari); //testo a video
 if (decrescente==0) //condizione
 {
  printf("La sequenza e': Crescente\n"); //testo a video
 }
 else if (crescente==0) //condizione
 {
  printf("La sequenza e': Decrescente\n"); //testo a video
 }
 else 
 {
  printf("La sequenza non e' ne' crescente ne' decrescente\n"); //testo a video
 }
 system("pause");
 return 0;
}