Lavorare con i vettori
PROBLEMA
Scrivere un programma che legge da tastiera un array di numeri reali diversi da 0. La lettura termina quando la somma dei numeri è maggiore di 50 e comunque non si possono immettere più di 100 numeri. Stampare in output la somma dei numeri dispari.
CODICE SORGENTE
#include <stdio.h> //libreria
#include <stdlib.h> //libreria
#define NUMERI 100 //costante
#define SOMMA 50 //costante
int main(int argc, char *argv[]) { //start body
float numero[NUMERI]; //dichiarazione array
int i=0, numero_dispari=0;
float somma=0, somma_dispari=0; //dichiarazione
printf("legge da tastiera un array di numeri reali diversi da 0.\nLa lettura termina quando la somma dei numeri e' maggiore di 50 e comunque non si possono immettere piu' di 100 numero.\nStampare in output la somma dei numeri dispari.\n");
sleep(5); //pausa 5 secondi
system("cls"); //clear
do { //inizio ciclo do-while
do { //inizio ciclo do-while
printf("Inserisci il numero %i:", i+1); //testo a video
scanf("%f", &numero[i]); //input
} while (numero[i]==0); //fine do-while rig.16
somma=somma+numero[i]; //calcolo
numero_dispari=numero[i]; //casting variabile
if (numero_dispari%2!=0) { //se è dispari
somma_dispari=somma_dispari+numero[i]; //calcolo
}
i++; //incremento
} while(i<NUMERI && somma<=SOMMA); //fine ciclo do-while rig.15
system("cls"); //clear
printf("Somma dei numeri dispari inseriti fin ora e': %f\n\n\n\nClicca un tasto per continuare...", somma_dispari); //testo a video
system("PAUSE");
return 0;
}