Fare un programma che inseriti n alunni calcoli la media dei voti della classe, inserendo un controllo sulla conformità dei valori inseriti (voti da 1 a 10):
#include <stdio.h>
float voto=0; //variabile contenitore voto
float media=0; //variabile contenitore somma voti alunni + calcolo media
int alunni; //variabile contenitore numero alunni
int contatore; //variabile da appoggio per ciclo while
int main()
{
printf("Quanti alunni ci sono nella classe? ");
scanf("%d",&alunni);
contatore=alunni; //assegno a contatore il valore della variabile alunni
while(contatore>0) //mentre contatore >0 esegui
{
printf("Inserisci il voto dell' alunno: ");
scanf("%f",&voto);
if(voto>0 && voto<=10) //se il valore del voto è compreso tra 1 e 10 esegui
{
media=media+voto; //sommo il voto inserito alla variabile media
contatore--; //decremento la variabile contatore per controllare il ciclo while
}
else
printf("\n\tVoto non valido\n\n"); //altrimenti se voto < 1 o voto > 10
}
media=(media/alunni); //calcolo la media
printf("La media dei voti e': %.2f",media);
}
Etichette
- Informatica 2014/2015 (27)
- informatica (19)
- Laboratorio Inf (15)
- Informatica 2015/2016 (3)
- Sistemi (3)
martedì 19 novembre 2013
Controllo valori input (pari - dispari - zero)
Scrivere un programma che, una volta scelto dall'utente quanti numeri voglia inserire, esegua alla fine dell'inserimento dei valori quanti numeri pari - dispari o '0' sono stati inseriti.
#include <stdio.h>
int val; //variabile che conterrà valore inserito dall'utente
int pari=0; //variabile contatore numeri pari
int disp=0; //variabile contatore numeri dispari
int zero=0; //variabile contatore numero 0
int n; //variabile che conterrà il valore di volte che si desidera ripetere l'inserimento
int main()
{
printf("Quante volte vuoi eseguire l'inserimento? ");
scanf("%d",&n);
while(n>0) //mentre n>0 esegui
{
printf("\nInserire un valore: ");
scanf("%d",&val);
if(val==0) //se il valore contenuto in val è '0' allora incrementa +1 variabile contatore zero
zero++;
else //altrimenti
if(val%2==0) //se il valore contenuto in val modulo 2 da resto '0' incrementa +1 variabile contatore pari
pari++;
else //altrimenti
disp++; //incrementa +1 variabile contatore dispari
n--; //decrementa variabile n
}
printf("\n\nHai inserito: \n\n%d numeri pari\t%d numeri dispari\t %d volte il numero '0'",pari,disp,zero);
}
domenica 17 novembre 2013
Calcolo Fattoriale
#include<stdio.h>
int valore;
int contatore;
using namespace std;
int main()
{
printf("Inserire un valore: ");
scanf("%d",&valore);
if(valore==0) //se utente inserisce valore 0
printf("\nIl fattoriale di 0 e' 1");
else //altrimenti se valore != da 0 esegui
{
contatore=valore-1; //il valore contatore = valore inserito dall'utente -1
while(contatore>0) //finchè il contatore è maggiore di 0 esegui
{
valore=(valore*contatore); //valore inserito dall'utente=valore inserito dall'utente*contatore
contatore--; //decrementa contatore
}
printf("\nIl complementare e': %d",valore);
}
}
int valore;
int contatore;
using namespace std;
int main()
{
printf("Inserire un valore: ");
scanf("%d",&valore);
if(valore==0) //se utente inserisce valore 0
printf("\nIl fattoriale di 0 e' 1");
else //altrimenti se valore != da 0 esegui
{
contatore=valore-1; //il valore contatore = valore inserito dall'utente -1
while(contatore>0) //finchè il contatore è maggiore di 0 esegui
{
valore=(valore*contatore); //valore inserito dall'utente=valore inserito dall'utente*contatore
contatore--; //decrementa contatore
}
printf("\nIl complementare e': %d",valore);
}
}
Equazione di secondo grado, con utilizzo di funzioni
#include <stdio.h>
#include <cmath>
int a;
int b;
int c;
int x1;
int x2;
int delta;
int funzdelta(int x, int y, int z); //funzione per il calcolo del delta (parametri a,b,c)
int funzx1(int x, int y, int z); //funzione per il calcolo di x1 (parametri b,delta,a)
int funzx2(int x, int y, int z); //funzione per il calcolo di x2 (parametri b,delta,a)
using namespace std;
int main()
{
printf("Inserisci il valore di 'a': ");
scanf("%d",&a);
printf("\nInserisci il valore di 'b': ");
scanf("%d",&b);
printf("\nInserisci il valore di 'c': ");
scanf("%d",&c);
delta=funzdelta(a,b,c); //chiamata funzione per calcolo delta
if(delta>=0)
delta=sqrt(delta); //se delta >=0 esegui radice quadrata del valore delta
else
printf("\nDELTA NEGATIVO"); //altrimenti visualizza che delta è negativo
printf("\n\nIl valore del DELTA e': %d",delta);
if(delta>0) //se delta>0 calcola x1 e x2
{
x1=funzx1(b, delta, a); //chiamata funzx1 con passaggio parametri
x2=funzx2(b, delta, a); //chiamata funzx2 con passaggio parametri
printf("\n\nIl valore di x1 e' %d e il valore di x2 e': %d",x1,x2);
}
else
if(delta==0) //se delta=0 x1=x2 quindi esegui solo funzx1
{
printf("\n\nIl valore di x1 e x2 e' coincidente: %d",funzx1); //visualizza valore return funzx1
}
else
if(delta<0) //se delta <0 non ci sono soluzioni
printf("\n\nIl valore di X non è determinabile");
}
int funzdelta(int x, int y, int z)
{
int delta;
delta=((y*y)-(4*x*z)); //((b^2)-(4*a*c))
return delta;
}
int funzx1 (int x, int y, int z)
{
int risultato;
risultato=((-1)*(x)+y)/(2*z); //((-b)+√∆)/(2*a))
return risultato;
}
int funzx2 (int x, int y, int z)
{
int risultato;
risultato=((-1)*(x)-y)/(2*z); //((-b)-√∆)/(2*a))
return risultato;
}
Iscriviti a:
Post (Atom)